]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/menu.tex
First step in background erase optimization
[wxWidgets.git] / docs / latex / wx / menu.tex
index 20469ee2cbd5bb01b60b7de41d771409d211ba3d..e95ae3db05a6ab5ac43e9c987d573db1725ba86d 100644 (file)
@@ -12,7 +12,7 @@ associated command but just makes a separator line appear in the menu.
 Menu items may be either normal items, check items or radio items. Normal items
 don't have any special properties while the check items have a boolean flag
 associated to them and they show a checkmark in the menu when the flag is set.
-wxWindows automatically toggles the flag value when the item is clicked and its
+wxWidgets automatically toggles the flag value when the item is clicked and its
 value may be retrieved using either \helpref{IsChecked}{wxmenuischecked} method
 of wxMenu or wxMenuBar itself or by using 
 \helpref{wxEvent::IsChecked}{wxcommandeventischecked} when you get the menu
@@ -103,19 +103,19 @@ and recreation of internal data structures.
 
 \membersection{wxMenu::Append}\label{wxmenuappend}
 
-\func{void}{Append}{\param{int}{ id}, \param{const wxString\& }{ item}, \param{const wxString\& }{helpString = ""},\rtfsp
+\func{wxMenuItem*}{Append}{\param{int}{ id}, \param{const wxString\& }{ item}, \param{const wxString\& }{helpString = ""},\rtfsp
 \param{wxItemKind}{ kind = wxITEM\_NORMAL}}
 
 Adds a string item to the end of the menu.
 
-\func{void}{Append}{\param{int}{ id}, \param{const wxString\& }{ item}, \param{wxMenu *}{subMenu},\rtfsp
+\func{wxMenuItem*}{Append}{\param{int}{ id}, \param{const wxString\& }{ item}, \param{wxMenu *}{subMenu},\rtfsp
 \param{const wxString\& }{helpString = ""}}
 
 Adds a pull-right submenu to the end of the menu. Append the submenu to the parent
 menu {\it after} you have added your menu items, or accelerators may not be
 registered properly.
 
-\func{void}{Append}{\param{wxMenuItem*}{ menuItem}}
+\func{wxMenuItem*}{Append}{\param{wxMenuItem*}{ menuItem}}
 
 Adds a menu item object. This is the most generic variant of Append() method
 because it may be used for both items (including separators) and submenus and
@@ -134,7 +134,7 @@ such as bitmaps and fonts.
 {\tt wxITEM\_CHECK} or {\tt wxITEM\_RADIO}}
 
 \docparam{helpString}{An optional help string associated with the item.
-By default, \helpref{wxFrame::OnMenuHighlight}{wxframeonmenuhighlight} displays
+By default, the handler for the wxEVT\_MENU\_HIGHLIGHT event displays
 this string in the status line.}
 
 \docparam{menuItem}{A menuitem object. It will be owned by the wxMenu object after this function
@@ -154,6 +154,7 @@ doesn't matter) separated by either {\tt '-'} or {\tt '+'} characters and
 followed by the accelerator itself. The accelerator may be any alphanumeric
 character, any function key (from {\tt F1} to {\tt F12}) or one of the special
 characters listed in the table below (again, case doesn't matter):
+
 \begin{twocollist}\itemsep=0pt
 \twocolitem{{\tt DEL} or {\tt DELETE}}{Delete key}
 \twocolitem{{\tt INS} or {\tt INSERT}}{Insert key}
@@ -168,6 +169,7 @@ characters listed in the table below (again, case doesn't matter):
 \twocolitem{{\tt END}}{End key}
 \twocolitem{{\tt SPACE}}{Space}
 \twocolitem{{\tt TAB}}{Tab key}
+\twocolitem{{\tt ESC} or {\tt ESCAPE}}{Escape key (Windows only)}
 \end{twocollist}
 
 \wxheading{See also}
@@ -180,7 +182,8 @@ characters listed in the table below (again, case doesn't matter):
 \helpref{wxMenu::SetHelpString}{wxmenusethelpstring}, \helpref{wxMenuItem}{wxmenuitem}
 
 \pythonnote{In place of a single overloaded method name, wxPython
-implements the following methods:\par
+implements the following methods:
+
 \indented{2cm}{\begin{twocollist}
 \twocolitem{{\bf Append(id, string, helpStr="", checkable=false)}}{}
 \twocolitem{{\bf AppendMenu(id, string, aMenu, helpStr="")}}{}
@@ -190,7 +193,7 @@ implements the following methods:\par
 
 \membersection{wxMenu::AppendCheckItem}\label{wxmenuappendcheckitem}
 
-\func{void}{AppendCheckItem}{\param{int}{ id},\rtfsp
+\func{wxMenuItem*}{AppendCheckItem}{\param{int}{ id},\rtfsp
 \param{const wxString\& }{ item}, \param{const wxString\& }{helpString = ""}}
 
 Adds a checkable item to the end of the menu.
@@ -202,7 +205,7 @@ Adds a checkable item to the end of the menu.
 
 \membersection{wxMenu::AppendRadioItem}\label{wxmenuappendradioitem}
 
-\func{void}{AppendRadioItem}{\param{int}{ id},\rtfsp
+\func{wxMenuItem*}{AppendRadioItem}{\param{int}{ id},\rtfsp
 \param{const wxString\& }{ item}, \param{const wxString\& }{helpString = ""}}
 
 Adds a radio item to the end of the menu. All consequent radio items form a
@@ -219,7 +222,7 @@ automatically unchecked.
 
 \membersection{wxMenu::AppendSeparator}\label{wxmenuappendseparator}
 
-\func{void}{AppendSeparator}{\void}
+\func{wxMenuItem*}{AppendSeparator}{\void}
 
 Adds a separator to the end of the menu.
 
@@ -348,6 +351,12 @@ before matching.
 \pythonnote{The name of this method in wxPython is {\tt FindItemById} 
 and it does not support the second parameter.}
 
+\membersection{wxMenu::FindItemByPosition}\label{wxmenufinditembyposition}
+
+\constfunc{wxMenuItem*}{FindItemByPosition}{\param{size\_t }{position}}
+
+Returns the wxMenuItem given a position in the menu.
+
 \membersection{wxMenu::GetHelpString}\label{wxmenugethelpstring}
 
 \constfunc{wxString}{GetHelpString}{\param{int}{ id}}
@@ -416,9 +425,9 @@ menubar.
 
 \membersection{wxMenu::Insert}\label{wxmenuinsert}
 
-\func{bool}{Insert}{\param{size\_t }{pos}, \param{wxMenuItem *}{item}}
+\func{wxMenuItem*}{Insert}{\param{size\_t }{pos}, \param{wxMenuItem *}{item}}
 
-\func{void}{Insert}{\param{size\_t }{pos}, \param{int}{ id},\rtfsp
+\func{wxMenuItem*}{Insert}{\param{size\_t }{pos}, \param{int}{ id},\rtfsp
 \param{const wxString\& }{ item}, \param{const wxString\& }{helpString = ""},\rtfsp
 \param{wxItemKind}{ kind = wxITEM\_NORMAL}}
 
@@ -433,7 +442,7 @@ as appending it.
 
 \membersection{wxMenu::InsertCheckItem}\label{wxmenuinsertcheckitem}
 
-\func{void}{InsertCheckItem}{\param{size\_t }{pos}, \param{int}{ id},\rtfsp
+\func{wxMenuItem*}{InsertCheckItem}{\param{size\_t }{pos}, \param{int}{ id},\rtfsp
 \param{const wxString\& }{ item}, \param{const wxString\& }{helpString = ""}}
 
 Inserts a checkable item at the given position.
@@ -445,7 +454,7 @@ Inserts a checkable item at the given position.
 
 \membersection{wxMenu::InsertRadioItem}\label{wxmenuinsertradioitem}
 
-\func{void}{InsertRadioItem}{\param{size\_t }{pos}, \param{int}{ id},\rtfsp
+\func{wxMenuItem*}{InsertRadioItem}{\param{size\_t }{pos}, \param{int}{ id},\rtfsp
 \param{const wxString\& }{ item}, \param{const wxString\& }{helpString = ""}}
 
 Inserts a radio item at the given position.
@@ -457,7 +466,7 @@ Inserts a radio item at the given position.
 
 \membersection{wxMenu::InsertSeparator}\label{wxmenuinsertseparator}
 
-\func{void}{InsertSeparator}{\param{size\_t }{pos}}
+\func{wxMenuItem*}{InsertSeparator}{\param{size\_t }{pos}}
 
 Inserts a separator at the given position.
 
@@ -504,9 +513,9 @@ true if the menu item is enabled, false otherwise.
 
 \membersection{wxMenu::Prepend}\label{wxmenuprepend}
 
-\func{bool}{Prepend}{\param{wxMenuItem *}{item}}
+\func{wxMenuItem*}{Prepend}{\param{wxMenuItem *}{item}}
 
-\func{void}{Prepend}{\param{int}{ id},\rtfsp
+\func{wxMenuItem*}{Prepend}{\param{int}{ id},\rtfsp
 \param{const wxString\& }{ item}, \param{const wxString\& }{helpString = ""},\rtfsp
 \param{wxItemKind}{ kind = wxITEM\_NORMAL}}
 
@@ -520,7 +529,7 @@ existing items.
 
 \membersection{wxMenu::PrependCheckItem}\label{wxmenuprependcheckitem}
 
-\func{void}{PrependCheckItem}{\param{int}{ id},\rtfsp
+\func{wxMenuItem*}{PrependCheckItem}{\param{int}{ id},\rtfsp
 \param{const wxString\& }{ item}, \param{const wxString\& }{helpString = ""}}
 
 Inserts a checkable item at the position $0$.
@@ -532,7 +541,7 @@ Inserts a checkable item at the position $0$.
 
 \membersection{wxMenu::PrependRadioItem}\label{wxmenuprependradioitem}
 
-\func{void}{PrependRadioItem}{\param{int}{ id},\rtfsp
+\func{wxMenuItem*}{PrependRadioItem}{\param{int}{ id},\rtfsp
 \param{const wxString\& }{ item}, \param{const wxString\& }{helpString = ""}}
 
 Inserts a radio item at the position $0$.
@@ -544,7 +553,7 @@ Inserts a radio item at the position $0$.
 
 \membersection{wxMenu::PrependSeparator}\label{wxmenuprependseparator}
 
-\func{void}{PrependSeparator}{\param{size\_t }{pos}}
+\func{wxMenuItem*}{PrependSeparator}{\param{size\_t }{pos}}
 
 Inserts a separator at the position $0$.
 
@@ -643,6 +652,7 @@ A menu bar is a series of menus accessible from the top of a frame.
 
 \wxheading{Derived from}
 
+\helpref{wxWindow}{wxwindow}\\
 \helpref{wxEvtHandler}{wxevthandler}\\
 \helpref{wxObject}{wxobject}
 
@@ -657,12 +667,6 @@ that contains the menu bar. If you have a toolbar which uses the same identifier
 as your EVT\_MENU entries, events from the toolbar will also be processed by your
 EVT\_MENU event handlers.
 
-Note that menu commands (and UI update events for menus) are first sent to
-the focus window within the frame. If no window within the frame has the focus,
-then the events are sent directly to the frame. This allows command and UI update
-handling to be processed by specific windows and controls, and not necessarily
-by the application frame.
-
 {\bf Tip:} under Windows, if you discover that menu shortcuts (for example, Alt-F to show the file menu)
 are not working, check any EVT\_CHAR events you are handling in child windows.
 If you are not calling {\tt event.Skip()} for events that you don't process in these event handlers,