// Purpose: interface of wxMenuBar
// Author: wxWidgets team
// RCS-ID: $Id$
-// Licence: wxWindows license
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
/**
@param menu
The menu to add. Do not deallocate this menu after calling Append().
@param title
- The title of the menu.
+ The title of the menu, must be non-empty.
@return @true on success, @false if an error occurred.
context it returns a 2-element list (item, submenu).
@endWxPerlOnly
*/
- virtual wxMenuItem* FindItem(int id, wxMenu* menu = NULL) const;
+ virtual wxMenuItem* FindItem(int id, wxMenu** menu = NULL) const;
/**
Returns the index of the menu with the given @a title or @c wxNOT_FOUND if no
@remarks Use only after the menubar has been associated with a frame.
*/
virtual void SetMenuLabel(size_t pos, const wxString& label);
+
+ /**
+ Enables you to set the global menubar on Mac, that is, the menubar displayed
+ when the app is running without any frames open.
+
+ @param menubar
+ The menubar to set.
+
+ @remarks Only exists on Mac, other platforms do not have this method.
+ */
+ static void MacSetCommonMenuBar(wxMenuBar* menubar);
+
+ /**
+ Enables you to get the global menubar on Mac, that is, the menubar displayed
+ when the app is running without any frames open.
+
+ @return The global menubar.
+
+ @remarks Only exists on Mac, other platforms do not have this method.
+ */
+ static wxMenuBar* MacGetCommonMenuBar();
+
};
A menu item has an integer ID associated with it which can be used to
identify the selection, or to change the menu item in some way. A menu item
- with a special identifier -1 is a separator item and doesn't have an
- associated command but just makes a separator line appear in the menu.
+ with a special identifier @e wxID_SEPARATOR is a separator item and doesn't
+ have an associated command but just makes a separator line appear in the
+ menu.
@note
Please note that @e wxID_ABOUT and @e wxID_EXIT are predefined by wxWidgets
class wxMenu : public wxEvtHandler
{
public:
+
+ /**
+ Constructs a wxMenu object.
+ */
+ wxMenu();
+
/**
Constructs a wxMenu object.
this string in the status line.
@param kind
May be @c wxITEM_SEPARATOR, @c wxITEM_NORMAL, @c wxITEM_CHECK or @c wxITEM_RADIO.
-
+
Example:
@code
m_pFileMenu->Append(ID_NEW_FILE, "&New file\tCTRL+N", "Creates a new XYZ document");
Pull-right submenu.
@param helpString
An optional help string associated with the item.
- By default, the handler for the wxEVT_MENU_HIGHLIGHT event displays
+ By default, the handler for the @c wxEVT_MENU_HIGHLIGHT event displays
this string in the status line.
@see AppendSeparator(), AppendCheckItem(), AppendRadioItem(),
@param id
Id of the menu item to be deleted.
- @see FindItem(), Deletes(), Remove()
+ @see FindItem(), Delete(), Remove()
*/
bool Destroy(int id);
@param item
Menu item to be deleted.
- @see FindItem(), Deletes(), Remove()
+ @see FindItem(), Delete(), Remove()
*/
bool Destroy(wxMenuItem* item);
/**
Returns the title of the menu.
- @remarks This is relevant only to popup menus, use
- wxMenuBar::GetMenuLabel for the menus in the menubar.
-
@see SetTitle()
*/
const wxString& GetTitle() const;
@see Append(), Prepend()
*/
- wxMenuItem* Insert(size_t pos, wxMenuItem* item);
+ wxMenuItem* Insert(size_t pos, wxMenuItem* menuItem);
/**
Inserts the given @a item before the position @a pos.
@param title
The title to set.
- @remarks This is relevant only to popup menus, use
- wxMenuBar::SetLabelTop for the menus in the menubar.
+ @remarks Notice that you can only call this method directly for the
+ popup menus, to change the title of a menu that is part of a menu
+ bar you need to use wxMenuBar::SetLabelTop().
@see GetTitle()
*/