summaryrefslogtreecommitdiff
path: root/FL
diff options
context:
space:
mode:
Diffstat (limited to 'FL')
-rw-r--r--FL/Fl_Menu_.H13
-rw-r--r--FL/Fl_Menu_Item.H2
-rw-r--r--FL/Fl_Widget.H8
3 files changed, 17 insertions, 6 deletions
diff --git a/FL/Fl_Menu_.H b/FL/Fl_Menu_.H
index 7cb4cd18e..4b4e4f30f 100644
--- a/FL/Fl_Menu_.H
+++ b/FL/Fl_Menu_.H
@@ -70,6 +70,17 @@ public:
int find_index(const Fl_Menu_Item *item) const;
int find_index(Fl_Callback *cb) const;
+ /**
+ Returns the menu item with the entered shortcut (key value).
+
+ This searches the complete menu() for a shortcut that matches the
+ entered key value. It must be called for a FL_KEYBOARD or FL_SHORTCUT
+ event.
+
+ If a match is found, the menu's callback will be called.
+
+ \return matched Fl_Menu_Item or NULL.
+ */
const Fl_Menu_Item* test_shortcut() {return picked(menu()->test_shortcut());}
void global();
@@ -118,7 +129,7 @@ public:
int value(int i) {return value(menu_+i);}
/** Returns the title of the last item chosen. */
const char *text() const {return value_ ? value_->text : 0;}
- /** Returns the title of the last item chosen, or of item i. */
+ /** Returns the title of item i. */
const char *text(int i) const {return menu_[i].text;}
/** Gets the current font of menu item labels. */
diff --git a/FL/Fl_Menu_Item.H b/FL/Fl_Menu_Item.H
index 31620e16f..7dde44720 100644
--- a/FL/Fl_Menu_Item.H
+++ b/FL/Fl_Menu_Item.H
@@ -349,7 +349,7 @@ struct FL_EXPORT Fl_Menu_Item {
const Fl_Menu_Item* title = 0,
int menubar=0) const;
const Fl_Menu_Item* test_shortcut() const;
- const Fl_Menu_Item* find_shortcut(int *ip=0) const;
+ const Fl_Menu_Item* find_shortcut(int *ip=0, const bool require_alt = false) const;
/**
Calls the Fl_Menu_Item item's callback, and provides the
diff --git a/FL/Fl_Widget.H b/FL/Fl_Widget.H
index 0b89ad9eb..d20ee6b7e 100644
--- a/FL/Fl_Widget.H
+++ b/FL/Fl_Widget.H
@@ -845,12 +845,12 @@ public:
// Documentation and implementation in Fl_Widget.cxx
void do_callback(Fl_Widget* o,void* arg=0);
- /** Internal use only. */
+ /* Internal use only. */
int test_shortcut();
- /** Internal use only. */
+ /* Internal use only. */
static unsigned int label_shortcut(const char *t);
- /** Internal use only. */
- static int test_shortcut(const char*);
+ /* Internal use only. */
+ static int test_shortcut(const char*, const bool require_alt = false);
/** Checks if w is a child of this widget.
\param[in] w potential child widget