]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/menuitem.tex
added missing \wxheading{Parameters}
[wxWidgets.git] / docs / latex / wx / menuitem.tex
index e371fda96d9cf9390c55d8d516c22a6b3b3f42ac..430d5e4e2435a0a0ec854b819f79dab65ab054d0 100644 (file)
@@ -1,3 +1,14 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Name:        menuitem.tex
+%% Purpose:     wxMenuItem documentation
+%% Author:      wxWidgets Team
+%% Modified by:
+%% Created:     
+%% RCS-ID:      $Id$
+%% Copyright:   (c) wxWidgets Team
+%% License:     wxWindows license
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
 \section{\class{wxMenuItem}}\label{wxmenuitem}
 
 A menu item represents an item in a menu. Note that you usually don't have to
 \section{\class{wxMenuItem}}\label{wxmenuitem}
 
 A menu item represents an item in a menu. Note that you usually don't have to
@@ -5,36 +16,72 @@ deal with it directly as \helpref{wxMenu}{wxmenu} methods usually construct an
 object of this class for you.
 
 Also please note that the methods related to fonts and bitmaps are currently
 object of this class for you.
 
 Also please note that the methods related to fonts and bitmaps are currently
-only implemented for Windows.
+only implemented for Windows and GTK+.
 
 \wxheading{Derived from}
 
 
 \wxheading{Derived from}
 
-wxOwnerDrawn (Windows only)\\
+% add wxOwnerDrawn once it is documented
 \helpref{wxObject}{wxobject}
 
 \wxheading{Include files}
 
 <wx/menuitem.h>
 
 \helpref{wxObject}{wxobject}
 
 \wxheading{Include files}
 
 <wx/menuitem.h>
 
+\wxheading{Library}
+
+\helpref{wxCore}{librarieslist}
+
 \wxheading{See also}
 
 \helpref{wxMenuBar}{wxmenubar}, \helpref{wxMenu}{wxmenu}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 \wxheading{See also}
 
 \helpref{wxMenuBar}{wxmenubar}, \helpref{wxMenu}{wxmenu}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
-\membersection{wxMenuItem::wxMenuItem}\label{wxmenuitemconstr}
 
 
-\func{}{wxMenuItem}{\param{wxMenu*}{ parentMenu = NULL}, \param{int}{ id = ID\_SEPARATOR},
+\membersection{wxMenuItem::wxMenuItem}\label{wxmenuitemctor}
+
+\func{}{wxMenuItem}{\param{wxMenu*}{ parentMenu = NULL}, \param{int}{ id = wxID\_SEPARATOR},
  \param{const wxString\& }{text = ""},  \param{const wxString\& }{helpString = ""},
  \param{const wxString\& }{text = ""},  \param{const wxString\& }{helpString = ""},
- \param{wxItemKind }{kind = wxITEM\_NORMAL}, \param{wxMenu*}{ subMenu = NULL}}
+ \param{wxItemKind }{kind = wxITEM\_NORMAL}, \param{wxMenu*}{ subMenu = NULL}}
 
 Constructs a wxMenuItem object.
 
 
 Constructs a wxMenuItem object.
 
+Menu items can be standard, or ``stock menu items'', or custom. For the
+standard menu items (such as commands to open a file, exit the program and so
+on, see \helpref{stock items}{stockitems} for the full list) it is enough to
+specify just the stock ID and leave \arg{text} and \arg{helpString} empty. In
+fact, leaving at least \arg{text} empty for the stock menu items is strongly
+recommended as they will have appearance and keyboard interface (including
+standard accelerators) familiar to the user.
+
+For the custom (non-stock) menu items, \arg{text} must be specified and while 
+\arg{helpString} may be left empty, it's recommended to pass the item
+description (which is automatically shown by the library in the status bar when
+the menu item is selected) in this parameter.
+
+Finally note that you can e.g. use a stock menu label without using its stock
+help string:
+
+\begin{verbatim}
+// use all stock properties:
+helpMenu->Append(wxID_ABOUT);
+
+// use the stock label and the stock accelerator but not the stock help string:
+helpMenu->Append(wxID_ABOUT, wxEmptyString, wxT("My custom help string"));
+
+// use all stock properties except for the bitmap:
+wxMenuItem *mymenu = new wxMenuItem(helpMenu, wxID_ABOUT);
+mymenu->SetBitmap(wxArtProvider::GetBitmap(wxART_WARNING));
+helpMenu->Append(mymenu);
+\end{verbatim}
+
+that is, stock properties are set independently one from the other.
+
 \wxheading{Parameters}
 
 \docparam{parentMenu}{Menu that the menu item belongs to.}
 
 \wxheading{Parameters}
 
 \docparam{parentMenu}{Menu that the menu item belongs to.}
 
-\docparam{id}{Identifier for this menu item, or ID\_SEPARATOR to indicate a separator.}
+\docparam{id}{Identifier for this menu item, or wxID\_SEPARATOR to indicate a separator.}
 
 \docparam{text}{Text for the menu item, as shown on the menu. An accelerator
 key can be specified using the ampersand '\&' character. In order to embed an
 
 \docparam{text}{Text for the menu item, as shown on the menu. An accelerator
 key can be specified using the ampersand '\&' character. In order to embed an
@@ -47,60 +94,91 @@ ampersand character in the menu item text, the ampersand must be doubled.}
 
 \docparam{subMenu}{If non-NULL, indicates that the menu item is a submenu.}
 
 
 \docparam{subMenu}{If non-NULL, indicates that the menu item is a submenu.}
 
-\membersection{wxMenuItem::\destruct{wxMenuItem}}
+
+\membersection{wxMenuItem::\destruct{wxMenuItem}}\label{wxmenuitemdtor}
 
 \func{}{\destruct{wxMenuItem}}{\void}
 
 Destructor.
 
 
 \func{}{\destruct{wxMenuItem}}{\void}
 
 Destructor.
 
+
 \membersection{wxMenuItem::Check}\label{wxmenuitemcheck}
 
 \membersection{wxMenuItem::Check}\label{wxmenuitemcheck}
 
-\func{void}{Check}{\param{bool}{ check}}
+\func{void}{Check}{\param{bool}{ check = true}}
 
 Checks or unchecks the menu item.
 
 
 Checks or unchecks the menu item.
 
-\membersection{wxMenuItem::DeleteSubMenu}\label{wxmenuitemdeletesubmenu}
+Note that this only works when the item is already appended to a menu.
 
 
-\func{void}{DeleteSubMenu}{\void}
-
-Deletes the submenu, if any.
 
 \membersection{wxMenuItem::Enable}\label{wxmenuitemenable}
 
 
 \membersection{wxMenuItem::Enable}\label{wxmenuitemenable}
 
-\func{void}{Enable}{\param{bool}{ enable}}
+\func{void}{Enable}{\param{bool}{ enable = true}}
 
 Enables or disables the menu item.
 
 
 Enables or disables the menu item.
 
+
 \membersection{wxMenuItem::GetBackgroundColour}\label{wxmenuitemgetbackgroundcolour}
 
 \constfunc{wxColour\&}{GetBackgroundColour}{\void}
 
 Returns the background colour associated with the menu item (Windows only).
 
 \membersection{wxMenuItem::GetBackgroundColour}\label{wxmenuitemgetbackgroundcolour}
 
 \constfunc{wxColour\&}{GetBackgroundColour}{\void}
 
 Returns the background colour associated with the menu item (Windows only).
 
+
 \membersection{wxMenuItem::GetBitmap}\label{wxmenuitemgetbitmap}
 
 \membersection{wxMenuItem::GetBitmap}\label{wxmenuitemgetbitmap}
 
-\constfunc{wxBitmap\&}{GetBitmap}{\param{bool}{ checked = TRUE}}
+\constfunc{wxBitmap\&}{GetBitmap}{\param{bool}{ checked = true}}
 
 Returns the checked or unchecked bitmap (Windows only).
 
 
 Returns the checked or unchecked bitmap (Windows only).
 
+
 \membersection{wxMenuItem::GetFont}\label{wxmenuitemgetfont}
 
 \constfunc{wxFont\&}{GetFont}{\void}
 
 Returns the font associated with the menu item (Windows only).
 
 \membersection{wxMenuItem::GetFont}\label{wxmenuitemgetfont}
 
 \constfunc{wxFont\&}{GetFont}{\void}
 
 Returns the font associated with the menu item (Windows only).
 
+
 \membersection{wxMenuItem::GetHelp}\label{wxmenuitemgethelp}
 
 \constfunc{wxString}{GetHelp}{\void}
 
 Returns the help string associated with the menu item.
 
 \membersection{wxMenuItem::GetHelp}\label{wxmenuitemgethelp}
 
 \constfunc{wxString}{GetHelp}{\void}
 
 Returns the help string associated with the menu item.
 
+
 \membersection{wxMenuItem::GetId}\label{wxmenuitemgetid}
 
 \constfunc{int}{GetId}{\void}
 
 Returns the menu item identifier.
 
 \membersection{wxMenuItem::GetId}\label{wxmenuitemgetid}
 
 \constfunc{int}{GetId}{\void}
 
 Returns the menu item identifier.
 
+
+\membersection{wxMenuItem::GetItemLabel}\label{wxmenuitemgetitemlabel}
+
+\constfunc{wxString}{GetItemLabel}{\void}
+
+Returns the text associated with the menu item including any accelerator
+characters that were passed to the constructor or SetItemLabel.
+
+\wxheading{See also}
+
+\helpref{GetItemLabelText}{wxmenuitemgetitemlabeltext}, 
+\helpref{GetLabelText}{wxmenuitemgetlabeltext}
+
+
+\membersection{wxMenuItem::GetItemLabelText}\label{wxmenuitemgetitemlabeltext}
+
+\constfunc{wxString}{GetItemLabelText}{\void}
+
+Returns the text associated with the menu item, without any accelerator
+characters.
+
+\wxheading{See also}
+
+\helpref{GetItemLabel}{wxmenuitemgetitemlabel}, 
+\helpref{GetLabelText}{wxmenuitemgetlabeltext}
+
+
 \membersection{wxMenuItem::GetKind}\label{wxmenuitemgetkind}
 
 \constfunc{wxItemKind}{GetKind}{\void}
 \membersection{wxMenuItem::GetKind}\label{wxmenuitemgetkind}
 
 \constfunc{wxItemKind}{GetKind}{\void}
@@ -108,6 +186,7 @@ Returns the menu item identifier.
 Returns the item kind, one of {\tt wxITEM\_SEPARATOR}, {\tt wxITEM\_NORMAL}, 
 {\tt wxITEM\_CHECK} or {\tt wxITEM\_RADIO}.
 
 Returns the item kind, one of {\tt wxITEM\_SEPARATOR}, {\tt wxITEM\_NORMAL}, 
 {\tt wxITEM\_CHECK} or {\tt wxITEM\_RADIO}.
 
+
 \membersection{wxMenuItem::GetLabel}\label{wxmenuitemgetlabel}
 
 \constfunc{wxString}{GetLabel}{\void}
 \membersection{wxMenuItem::GetLabel}\label{wxmenuitemgetlabel}
 
 \constfunc{wxString}{GetLabel}{\void}
@@ -115,11 +194,32 @@ Returns the item kind, one of {\tt wxITEM\_SEPARATOR}, {\tt wxITEM\_NORMAL},
 Returns the text associated with the menu item without any accelerator
 characters it might contain.
 
 Returns the text associated with the menu item without any accelerator
 characters it might contain.
 
+This function is deprecated in favour of \helpref{GetItemLabelText}{wxmenuitemgetitemlabeltext}.
+
 \wxheading{See also}
 
 \helpref{GetText}{wxmenuitemgettext}, 
 \helpref{GetLabelFromText}{wxmenuitemgetlabelfromtext}
 
 \wxheading{See also}
 
 \helpref{GetText}{wxmenuitemgettext}, 
 \helpref{GetLabelFromText}{wxmenuitemgetlabelfromtext}
 
+\membersection{wxMenuItem::GetLabelText}\label{wxmenuitemgetlabeltext}
+
+\func{static wxString}{GetLabelText}{\param{const wxString\& }{text}}
+
+Strips all accelerator characters and mnemonics from the given {\it text}.
+For example,
+
+\begin{verbatim}
+wxMenuItem::GetLabelFromText("&Hello\tCtrl-H");
+\end{verbatim}
+
+will return just {\tt "Hello"}.
+
+\wxheading{See also}
+
+\helpref{GetItemLabelText}{wxmenuitemgetitemlabeltext}, 
+\helpref{GetItemLabel}{wxmenuitemgetitemlabel}
+
+
 \membersection{wxMenuItem::GetLabelFromText}\label{wxmenuitemgetlabelfromtext}
 
 \func{static wxString}{GetLabelFromText}{\param{const wxString\& }{text}}
 \membersection{wxMenuItem::GetLabelFromText}\label{wxmenuitemgetlabelfromtext}
 
 \func{static wxString}{GetLabelFromText}{\param{const wxString\& }{text}}
@@ -133,17 +233,28 @@ wxMenuItem::GetLabelFromText("&Hello\tCtrl-H");
 
 will return just {\tt "Hello"}.
 
 
 will return just {\tt "Hello"}.
 
+This function is deprecated; please use \helpref{wxMenuItem::GetLabelText}{wxmenuitemgetlabeltext} instead.
+
 \wxheading{See also}
 
 \helpref{GetText}{wxmenuitemgettext}, 
 \helpref{GetLabel}{wxmenuitemgetlabel}
 
 \wxheading{See also}
 
 \helpref{GetText}{wxmenuitemgettext}, 
 \helpref{GetLabel}{wxmenuitemgetlabel}
 
+
 \membersection{wxMenuItem::GetMarginWidth}\label{wxmenuitemgetmarginwidth}
 
 \constfunc{int}{GetMarginWidth}{\void}
 
 Gets the width of the menu item checkmark bitmap (Windows only).
 
 \membersection{wxMenuItem::GetMarginWidth}\label{wxmenuitemgetmarginwidth}
 
 \constfunc{int}{GetMarginWidth}{\void}
 
 Gets the width of the menu item checkmark bitmap (Windows only).
 
+
+\membersection{wxMenuItem::GetMenu}\label{wxmenuitemgetmenu}
+
+\constfunc{wxMenu*}{GetMenu}{\void}
+
+Returns the menu this menu item is in, or NULL if this menu item is not attached.
+
+
 \membersection{wxMenuItem::GetName}\label{wxmenuitemgetname}
 
 \constfunc{wxString}{GetName}{\void}
 \membersection{wxMenuItem::GetName}\label{wxmenuitemgetname}
 
 \constfunc{wxString}{GetName}{\void}
@@ -151,9 +262,10 @@ Gets the width of the menu item checkmark bitmap (Windows only).
 Returns the text associated with the menu item.
 
 {\bf NB:} this function is deprecated, please use 
 Returns the text associated with the menu item.
 
 {\bf NB:} this function is deprecated, please use 
-\helpref{GetText}{wxmenuitemgettext} or \helpref{GetLabel}{wxmenuitemgetlabel
+\helpref{GetItemLabel}{wxmenuitemgetitemlabel} or \helpref{GetItemLabelText}{wxmenuitemgetitemlabeltext
 instead.
 
 instead.
 
+
 \membersection{wxMenuItem::GetText}\label{wxmenuitemgettext}
 
 \constfunc{wxString}{GetText}{\void}
 \membersection{wxMenuItem::GetText}\label{wxmenuitemgettext}
 
 \constfunc{wxString}{GetText}{\void}
@@ -161,46 +273,62 @@ instead.
 Returns the text associated with the menu item, such as it was passed to the
 wxMenuItem constructor, i.e. with any accelerator characters it may contain.
 
 Returns the text associated with the menu item, such as it was passed to the
 wxMenuItem constructor, i.e. with any accelerator characters it may contain.
 
+This function is deprecated in favour of \helpref{GetItemLabel}{wxmenuitemgetitemlabel}.
+
 \wxheading{See also}
 
 \helpref{GetLabel}{wxmenuitemgetlabel}, 
 \helpref{GetLabelFromText}{wxmenuitemgetlabelfromtext}
 
 \wxheading{See also}
 
 \helpref{GetLabel}{wxmenuitemgetlabel}, 
 \helpref{GetLabelFromText}{wxmenuitemgetlabelfromtext}
 
+
 \membersection{wxMenuItem::GetSubMenu}\label{wxmenuitemgetsubmenu}
 
 \constfunc{wxMenu*}{GetSubMenu}{\void}
 
 Returns the submenu associated with the menu item, or NULL if there isn't one.
 
 \membersection{wxMenuItem::GetSubMenu}\label{wxmenuitemgetsubmenu}
 
 \constfunc{wxMenu*}{GetSubMenu}{\void}
 
 Returns the submenu associated with the menu item, or NULL if there isn't one.
 
+
 \membersection{wxMenuItem::GetTextColour}\label{wxmenuitemgettextcolour}
 
 \constfunc{wxColour\&}{GetTextColour}{\void}
 
 Returns the text colour associated with the menu item (Windows only).
 
 \membersection{wxMenuItem::GetTextColour}\label{wxmenuitemgettextcolour}
 
 \constfunc{wxColour\&}{GetTextColour}{\void}
 
 Returns the text colour associated with the menu item (Windows only).
 
+
 \membersection{wxMenuItem::IsCheckable}\label{wxmenuitemischeckable}
 
 \constfunc{bool}{IsCheckable}{\void}
 
 \membersection{wxMenuItem::IsCheckable}\label{wxmenuitemischeckable}
 
 \constfunc{bool}{IsCheckable}{\void}
 
-Returns TRUE if the item is checkable.
+Returns true if the item is checkable.
+
 
 \membersection{wxMenuItem::IsChecked}\label{wxmenuitemischecked}
 
 \constfunc{bool}{IsChecked}{\void}
 
 
 \membersection{wxMenuItem::IsChecked}\label{wxmenuitemischecked}
 
 \constfunc{bool}{IsChecked}{\void}
 
-Returns TRUE if the item is checked.
+Returns true if the item is checked.
+
 
 \membersection{wxMenuItem::IsEnabled}\label{wxmenuitemisenabled}
 
 \constfunc{bool}{IsEnabled}{\void}
 
 
 \membersection{wxMenuItem::IsEnabled}\label{wxmenuitemisenabled}
 
 \constfunc{bool}{IsEnabled}{\void}
 
-Returns TRUE if the item is enabled.
+Returns true if the item is enabled.
+
 
 \membersection{wxMenuItem::IsSeparator}\label{wxmenuitemisseparator}
 
 \constfunc{bool}{IsSeparator}{\void}
 
 
 \membersection{wxMenuItem::IsSeparator}\label{wxmenuitemisseparator}
 
 \constfunc{bool}{IsSeparator}{\void}
 
-Returns TRUE if the item is a separator.
+Returns true if the item is a separator.
+
+
+\membersection{wxMenuItem::IsSubMenu}\label{wxmenuitemissubmenu}
+
+\constfunc{bool}{IsSubMenu}{\void}
+
+Returns true if the item is a submenu.
+
 
 \membersection{wxMenuItem::SetBackgroundColour}\label{wxmenuitemsetbackgroundcolour}
 
 
 \membersection{wxMenuItem::SetBackgroundColour}\label{wxmenuitemsetbackgroundcolour}
 
@@ -208,48 +336,78 @@ Returns TRUE if the item is a separator.
 
 Sets the background colour associated with the menu item (Windows only).
 
 
 Sets the background colour associated with the menu item (Windows only).
 
+
 \membersection{wxMenuItem::SetBitmap}\label{wxmenuitemsetbitmap}
 
 \membersection{wxMenuItem::SetBitmap}\label{wxmenuitemsetbitmap}
 
-\constfunc{void}{SetBitmap}{\param{const wxBitmap\& }{bmp}}
+\func{void}{SetBitmap}{\param{const wxBitmap\& }{bmp}}
 
 Sets the bitmap for the menu item (Windows and GTK+ only). It is
 equivalent to \helpref{SetBitmaps}{wxmenuitemsetbitmaps}(bmp, wxNullBitmap).
 
 
 Sets the bitmap for the menu item (Windows and GTK+ only). It is
 equivalent to \helpref{SetBitmaps}{wxmenuitemsetbitmaps}(bmp, wxNullBitmap).
 
+
 \membersection{wxMenuItem::SetBitmaps}\label{wxmenuitemsetbitmaps}
 
 \membersection{wxMenuItem::SetBitmaps}\label{wxmenuitemsetbitmaps}
 
-\constfunc{void}{SetBitmaps}{\param{const wxBitmap\& }{checked},
+\func{void}{SetBitmaps}{\param{const wxBitmap\& }{checked},
  \param{const wxBitmap\& }{unchecked = wxNullBitmap}}
 
 Sets the checked/unchecked bitmaps for the menu item (Windows only). The first bitmap
 is also used as the single bitmap for uncheckable menu items.
 
  \param{const wxBitmap\& }{unchecked = wxNullBitmap}}
 
 Sets the checked/unchecked bitmaps for the menu item (Windows only). The first bitmap
 is also used as the single bitmap for uncheckable menu items.
 
+
 \membersection{wxMenuItem::SetFont}\label{wxmenuitemsetfont}
 
 \membersection{wxMenuItem::SetFont}\label{wxmenuitemsetfont}
 
-\constfunc{void}{SetFont}{\param{const wxFont\& }{font}}
+\func{void}{SetFont}{\param{const wxFont\& }{font}}
 
 Sets the font associated with the menu item (Windows only).
 
 
 Sets the font associated with the menu item (Windows only).
 
+
 \membersection{wxMenuItem::SetHelp}\label{wxmenuitemsethelp}
 
 \membersection{wxMenuItem::SetHelp}\label{wxmenuitemsethelp}
 
-\constfunc{void}{SetHelp}{\param{const wxString\& }{helpString}}
+\func{void}{SetHelp}{\param{const wxString\& }{helpString}}
 
 Sets the help string.
 
 
 Sets the help string.
 
+
+\membersection{wxMenuItem::SetItemLabel}\label{wxmenuitemsetitemlabel}
+
+\func{void}{SetItemLabel}{\param{const wxString\& }{label}}
+
+Sets the label associated with the menu item.
+
+
 \membersection{wxMenuItem::SetMarginWidth}\label{wxmenuitemsetmarginwidth}
 
 \constfunc{void}{SetMarginWidth}{\param{int}{ width}}
 
 Sets the width of the menu item checkmark bitmap (Windows only).
 
 \membersection{wxMenuItem::SetMarginWidth}\label{wxmenuitemsetmarginwidth}
 
 \constfunc{void}{SetMarginWidth}{\param{int}{ width}}
 
 Sets the width of the menu item checkmark bitmap (Windows only).
 
+
+\membersection{wxMenuItem::SetMenu}\label{wxmenuitemsetmenu}
+
+\func{void}{SetMenu}{\param{const wxMenu*}{menu}}
+
+Sets the parent menu which will contain this menu item.
+
+
+\membersection{wxMenuItem::SetSubMenu}\label{wxmenuitemsetsubmenu}
+
+\func{void}{SetSubMenu}{\param{const wxMenu*}{menu}}
+
+Sets the submenu of this menu item.
+
+
 \membersection{wxMenuItem::SetText}\label{wxmenuitemsettext}
 
 \membersection{wxMenuItem::SetText}\label{wxmenuitemsettext}
 
-\constfunc{void}{SetText}{\param{const wxString\& }{text}}
+\func{void}{SetText}{\param{const wxString\& }{text}}
 
 Sets the text associated with the menu item.
 
 
 Sets the text associated with the menu item.
 
+This function is deprecated in favour of \helpref{SetItemLabel}{wxmenuitemsetitemlabel}.
+
+
 \membersection{wxMenuItem::SetTextColour}\label{wxmenuitemsettextcolour}
 
 \membersection{wxMenuItem::SetTextColour}\label{wxmenuitemsettextcolour}
 
-\constfunc{void}{SetTextColour}{\param{const wxColour\& }{colour}}
+\func{void}{SetTextColour}{\param{const wxColour\& }{colour}}
 
 Sets the text colour associated with the menu item (Windows only).
 
 
 Sets the text colour associated with the menu item (Windows only).