Go to main content

man pages section 3: Extended Library Functions, Volume 1

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

wxMenuItem (3erl)

Name

wxMenuItem - Functions for wxMenuItem class

Synopsis

Please see following description for synopsis

Description

wxMenuItem(3)              Erlang Module Definition              wxMenuItem(3)



NAME
       wxMenuItem - Functions for wxMenuItem class

DESCRIPTION
       A menu item represents an item in a menu.

       Note  that  you  usually  don't have to deal with it directly as wxMenu
       methods usually construct an object of this class for you.

       Also please note that the methods related to fonts and bitmaps are cur-
       rently only implemented for Windows, Mac and GTK+.

       See: wxMenuBar, wxMenu

       wxWidgets docs: wxMenuItem

EVENTS
       Event  types emitted from this class: menu_open, menu_close, menu_high-
       light

DATA TYPES
       wxMenuItem() = wx:wx_object()

EXPORTS
       new() -> wxMenuItem()

       new(Options :: [Option]) -> wxMenuItem()

              Types:

                 Option =
                     {parentMenu, wxMenu:wxMenu()} |
                     {id, integer()} |
                     {text, unicode:chardata()} |
                     {help, unicode:chardata()} |
                     {kind, wx:wx_enum()} |
                     {subMenu, wxMenu:wxMenu()}

              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  page_stockitems  for  the  full
              list)  it  is enough to specify just the stock ID and leave text
              and help string empty. Some platforms (currently wxGTK only, and
              see  the  remark  in  setBitmap/2  documentation) will also show
              standard bitmaps for stock menu items.

              Leaving at least text empty for the stock menu items is actually
              strongly  recommended  as they will have appearance and keyboard
              interface (including  standard  accelerators)  familiar  to  the
              user.

              For  the  custom  (non-stock) menu items, text must be specified
              and while help string 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:

              that is, stock properties are set  independently  one  from  the
              other.

       destroy(This :: wxMenuItem()) -> ok

              Destructor.

       check(This) -> ok

              Types:

                 This = wxMenuItem()

       check(This, Options :: [Option]) -> ok

              Types:

                 This = wxMenuItem()
                 Option = {check, boolean()}

              Checks or unchecks the menu item.

              Note that this only works when the item is already appended to a
              menu.

       enable(This) -> ok

              Types:

                 This = wxMenuItem()

       enable(This, Options :: [Option]) -> ok

              Types:

                 This = wxMenuItem()
                 Option = {enable, boolean()}

              Enables or disables the menu item.

       getBitmap(This) -> wxBitmap:wxBitmap()

              Types:

                 This = wxMenuItem()

              Returns the checked or unchecked bitmap.

              Only for:wxmsw

       getHelp(This) -> unicode:charlist()

              Types:

                 This = wxMenuItem()

              Returns the help string associated with the menu item.

       getId(This) -> integer()

              Types:

                 This = wxMenuItem()

              Returns the menu item identifier.

       getKind(This) -> wx:wx_enum()

              Types:

                 This = wxMenuItem()

              Returns the item kind, one of  wxITEM_SEPARATOR,  wxITEM_NORMAL,
              wxITEM_CHECK or wxITEM_RADIO.

       getLabelFromText(Text) -> unicode:charlist()

              Types:

                 Text = unicode:chardata()

              See: getLabelText/1.

       getLabelText(Text) -> unicode:charlist()

              Types:

                 Text = unicode:chardata()

              Strips  all  accelerator characters and mnemonics from the given
              text.

              For example:

              will return just "Hello".

              See: getItemLabelText/1, getItemLabel/1

       getText(This) -> unicode:charlist()

              Types:

                 This = wxMenuItem()

              See: getItemLabel/1.

       getItemLabel(This) -> unicode:charlist()

              Types:

                 This = wxMenuItem()

              Returns the text associated with the  menu  item  including  any
              accelerator  characters  that  were passed to the constructor or
              setItemLabel/2.

              See: getItemLabelText/1, getLabelText/1

       getLabel(This) -> unicode:charlist()

              Types:

                 This = wxMenuItem()

              See: getItemLabelText/1.

       getItemLabelText(This) -> unicode:charlist()

              Types:

                 This = wxMenuItem()

              Returns the text associated with  the  menu  item,  without  any
              accelerator characters.

              See: getItemLabel/1, getLabelText/1

       getMenu(This) -> wxMenu:wxMenu()

              Types:

                 This = wxMenuItem()

              Returns the menu this menu item is in, or NULL if this menu item
              is not attached.

       getSubMenu(This) -> wxMenu:wxMenu()

              Types:

                 This = wxMenuItem()

              Returns the submenu associated with the menu item,  or  NULL  if
              there isn't one.

       isCheckable(This) -> boolean()

              Types:

                 This = wxMenuItem()

              Returns true if the item is checkable.

              Notice  that the radio buttons are considered to be checkable as
              well, so this method returns true for them  too.  Use  IsCheck()
              (not  implemented in wx) if you want to test for the check items
              only.

       isChecked(This) -> boolean()

              Types:

                 This = wxMenuItem()

              Returns true if the item is checked.

       isEnabled(This) -> boolean()

              Types:

                 This = wxMenuItem()

              Returns true if the item is enabled.

       isSeparator(This) -> boolean()

              Types:

                 This = wxMenuItem()

              Returns true if the item is a separator.

       isSubMenu(This) -> boolean()

              Types:

                 This = wxMenuItem()

              Returns true if the item is a submenu.

       setBitmap(This, Bmp) -> ok

              Types:

                 This = wxMenuItem()
                 Bmp = wxBitmap:wxBitmap()

              Sets the bitmap for the menu item.

              It is equivalent to wxMenuItem::SetBitmaps(bmp, wxNullBitmap) if
              checked is true (default value) or SetBitmaps(wxNullBitmap, bmp)
              otherwise.

              setBitmap/2 must be called before the item is  appended  to  the
              menu,  i.e.  appending the item without a bitmap and setting one
              later is not guaranteed to work. But the bitmap can  be  changed
              or reset later if it had been set up initially.

              Notice that GTK+ uses a global setting called gtk-menu-images to
              determine if the images should be shown in the menus at all.  If
              it  is off (which is the case in e.g. Gnome 2.28 by default), no
              images will be shown, consistently with the native behaviour.

              Only for:wxmsw,wxosx,wxgtk

       setHelp(This, HelpString) -> ok

              Types:

                 This = wxMenuItem()
                 HelpString = unicode:chardata()

              Sets the help string.

       setMenu(This, Menu) -> ok

              Types:

                 This = wxMenuItem()
                 Menu = wxMenu:wxMenu()

              Sets the parent menu which will contain this menu item.

       setSubMenu(This, Menu) -> ok

              Types:

                 This = wxMenuItem()
                 Menu = wxMenu:wxMenu()

              Sets the submenu of this menu item.

       setText(This, Label) -> ok

              Types:

                 This = wxMenuItem()
                 Label = unicode:chardata()

              See: setItemLabel/2.

       setItemLabel(This, Label) -> ok

              Types:

                 This = wxMenuItem()
                 Label = unicode:chardata()

              Sets the label associated with the menu item.

              Note that if the ID of this menu item corresponds to a stock ID,
              then  it  is  not  necessary  to specify a label: wxWidgets will
              automatically use the stock item label associated with that  ID.
              See the new/1 for more info.

              The  label string for the normal menu items (not separators) may
              include the accelerator which can be used to activate  the  menu
              item  from  keyboard.  An accelerator key can be specified using
              the ampersand & character. In order to embed an ampersand  char-
              acter in the menu item text, the ampersand must be doubled.

              Optionally  you can specify also an accelerator string appending
              a tab character \t followed by a  valid  key  combination  (e.g.
              CTRL+V). Its general syntax is any combination of "CTRL", "RAWC-
              TRL", "ALT" and "SHIFT" strings (case doesn't matter)  separated
              by  either '-' or '+' characters and followed by the accelerator
              itself. Notice that CTRL corresponds to the "Ctrl" key  on  most
              platforms but not under macOS where it is mapped to "Cmd" key on
              Mac keyboard. Usually this is exactly what you want in  portable
              code  but  if  you  really need to use the (rarely used for this
              purpose) "Ctrl" key even under Mac, you may use RAWCTRL to  pre-
              vent this mapping. Under the other platforms RAWCTRL is the same
              as plain CTRL.

              The accelerator may be any alphanumeric character, any  function
              key  (from  F1  to  F12),  any numpad digit key using KP_ prefix
              (i.e. from KP_0 to KP_9) or one of the  special  strings  listed
              below  (again,  case doesn't matter) corresponding to the speci-
              fied key code:

              Examples:

              Note: In wxGTK using "SHIFT" with non-alphabetic characters cur-
              rently  doesn't  work, even in combination with other modifiers,
              due to GTK+ limitation. E.g. Shift+Ctrl+A works but Shift+Ctrl+1
              or  Shift+/  do not, so avoid using accelerators of this form in
              portable code.

              Note: In wxGTk, the left/right/up/down arrow keys do not work as
              accelerator  keys for a menu item unless a modifier key is used.
              Additionally, the following keycodes are not supported  as  menu
              accelerator keys:

              See: getItemLabel/1, getItemLabelText/1



wxWidgets team.                    wx 2.1.1                      wxMenuItem(3)