]> git.saurik.com Git - wxWidgets.git/blob - include/wx/motif/menuitem.h
Visualage C++ V4.0 has a native long long data type.
[wxWidgets.git] / include / wx / motif / menuitem.h
1 ///////////////////////////////////////////////////////////////////////////////
2 // Name: menuitem.h
3 // Purpose: wxMenuItem class
4 // Author: Vadim Zeitlin
5 // Modified by:
6 // Created: 11.11.97
7 // RCS-ID: $Id$
8 // Copyright: (c) 1998 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
9 // Licence: wxWindows license
10 ///////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_MOTIF_MENUITEM_H
13 #define _WX_MOTIF_MENUITEM_H
14
15 #ifdef __GNUG__
16 #pragma interface "menuitem.h"
17 #endif
18
19 class WXDLLEXPORT wxMenuBar;
20
21 // ----------------------------------------------------------------------------
22 // wxMenuItem: an item in the menu, optionally implements owner-drawn behaviour
23 // ----------------------------------------------------------------------------
24
25 class wxMenuItem : public wxMenuItemBase
26 {
27 public:
28 // ctor & dtor
29 wxMenuItem(wxMenu *parentMenu = (wxMenu *)NULL,
30 int id = wxID_SEPARATOR,
31 const wxString& text = wxEmptyString,
32 const wxString& help = wxEmptyString,
33 bool isCheckable = FALSE,
34 wxMenu *subMenu = (wxMenu *)NULL);
35 ~wxMenuItem();
36
37 // accessors (some more are inherited from wxOwnerDrawn or are below)
38 virtual void SetText(const wxString& label);
39 virtual wxString GetLabel() const;
40 virtual void Enable(bool enable = TRUE);
41 virtual void Check(bool check = TRUE);
42
43 void DeleteSubMenu();
44
45 // implementation from now on
46 void CreateItem (WXWidget menu, wxMenuBar * menuBar, wxMenu * topMenu);
47 void DestroyItem(bool full);
48
49 WXWidget GetButtonWidget() const { return m_buttonWidget; }
50
51 wxMenuBar* GetMenuBar() const { return m_menuBar; }
52 void SetMenuBar(wxMenuBar* menuBar) { m_menuBar = menuBar; }
53
54 wxMenu* GetTopMenu() const { return m_topMenu; }
55 void SetTopMenu(wxMenu* menu) { m_topMenu = menu; }
56
57 private:
58 WXWidget m_buttonWidget;
59 wxMenuBar* m_menuBar;
60 wxMenu* m_topMenu; // Top-level menu e.g. popup-menu
61
62 DECLARE_DYNAMIC_CLASS(wxMenuItem)
63 };
64
65 #endif // _WX_MOTIF_MENUITEM_H