// Name: menuitem.h
// Purpose: interface of wxMenu, wxMenuItem
// Author: wxWidgets team
-// RCS-ID: $Id$
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
@beginEventEmissionTable{wxCommandEvent,wxMenuEvent}
@event{EVT_MENU(id, func)}
- Process a @c wxEVT_COMMAND_MENU_SELECTED command, which is generated by a menu item.
+ Process a @c wxEVT_MENU command, which is generated by a menu item.
This type of event is sent as wxCommandEvent.
@event{EVT_MENU_RANGE(id1, id2, func)}
- Process a @c wxEVT_COMMAND_MENU_RANGE command, which is generated by a range of menu items.
+ Process a @c wxEVT_MENU command, which is generated by a range of menu items.
This type of event is sent as wxCommandEvent.
@event{EVT_MENU_OPEN(func)}
A menu is about to be opened. On Windows, this is only sent once for each
*/
//@{
+ /**
+ Returns @true if the item is a check item.
+
+ Unlike IsCheckable() this doesn't return @true for the radio buttons.
+
+ @since 2.9.5
+ */
+ bool IsCheck() const;
+
/**
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() if you want to
+ test for the check items only.
*/
bool IsCheckable() const;
*/
virtual bool IsEnabled() const;
+ /**
+ Returns @true if the item is a radio button.
+
+ @since 2.9.5
+ */
+ bool IsRadio() const;
+
/**
Returns @true if the item is a separator.
*/
@a checked is @true (default value) or SetBitmaps(wxNullBitmap, bmp)
otherwise.
+ SetBitmap() 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 @c 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
m_pMyMenuItem3->SetItemLabel("Simple item");
m_pMyMenuItem4->SetItemLabel("Item with &accelerator");
@endcode
-
+
+ @note In wxGTK using @c "SHIFT" with non-alphabetic characters
+ currently doesn't work, even in combination with other modifiers, due
+ to GTK+ limitation. E.g. @c Shift+Ctrl+A works but @c Shift+Ctrl+1 or
+ @c Shift+/ do not, so avoid using accelerators of this form in portable
+ code.
+
@see GetItemLabel(), GetItemLabelText()
*/
virtual void SetItemLabel(const wxString& label);