X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c626a8b797d2819e1e14110d77c04a530fd3b6b4..9869c26285dc51d13607cddaa04f65ce983653a5:/include/wx/gtk/menuitem.h diff --git a/include/wx/gtk/menuitem.h b/include/wx/gtk/menuitem.h index e84a48500c..c17ad03a97 100644 --- a/include/wx/gtk/menuitem.h +++ b/include/wx/gtk/menuitem.h @@ -1,94 +1,61 @@ /////////////////////////////////////////////////////////////////////////////// -// Name: menuitem.h +// Name: wx/gtk/menuitem.h // Purpose: wxMenuItem class // Author: Robert Roebling -// RCS-ID: $Id$ // Copyright: (c) 1998 Robert Roebling -// Licence: wxWindows license +// Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// -#ifndef __GTKMENUITEMH__ -#define __GTKMENUITEMH__ +#ifndef _WX_GTKMENUITEM_H_ +#define _WX_GTKMENUITEM_H_ -#ifdef __GNUG__ -#pragma interface -#endif - -#include "wx/defs.h" -#include "wx/string.h" - -// ---------------------------------------------------------------------------- -// constants -// ---------------------------------------------------------------------------- - -#define ID_SEPARATOR (-1) - -//----------------------------------------------------------------------------- -// classes -//----------------------------------------------------------------------------- - -class wxMenuItem; -class wxMenu; +#include "wx/bitmap.h" //----------------------------------------------------------------------------- // wxMenuItem //----------------------------------------------------------------------------- -class wxMenuItem : public wxObject +class WXDLLIMPEXP_CORE wxMenuItem : public wxMenuItemBase { -DECLARE_DYNAMIC_CLASS(wxMenuItem) - public: - wxMenuItem(); - - // accessors - // id - void SetId(int id) { m_id = id; } - int GetId() const { return m_id; } - bool IsSeparator() const { return m_id == ID_SEPARATOR; } - - // the item's text = name - void SetName(const wxString& str); - void SetText(const wxString& str) { SetName(str); } // compatibility - const wxString& GetName() const { return m_text; } - const wxString& GetText() const { return GetName(); } - - // what kind of menu item we are - void SetCheckable(bool checkable) { m_isCheckMenu = checkable; } - bool IsCheckable() const { return m_isCheckMenu; } - void SetSubMenu(wxMenu *menu) { m_subMenu = menu; } - wxMenu *GetSubMenu() const { return m_subMenu; } - bool IsSubMenu() const { return m_subMenu != NULL; } - - // state - void Enable( bool enable = TRUE ); - bool IsEnabled() const { return m_isEnabled; } - void Check( bool check = TRUE ); - bool IsChecked() const; - - // help string (displayed in the status bar by default) - void SetHelp(const wxString& str) { m_helpStr = str; } - const wxString& GetHelp() const { return m_helpStr; } + wxMenuItem(wxMenu *parentMenu = NULL, + int id = wxID_SEPARATOR, + const wxString& text = wxEmptyString, + const wxString& help = wxEmptyString, + wxItemKind kind = wxITEM_NORMAL, + wxMenu *subMenu = NULL); + virtual ~wxMenuItem(); + + // implement base class virtuals + virtual void SetItemLabel( const wxString& str ); + virtual void Enable( bool enable = true ); + virtual void Check( bool check = true ); + virtual bool IsChecked() const; + virtual void SetBitmap(const wxBitmap& bitmap); + virtual const wxBitmap& GetBitmap() const { return m_bitmap; } // implementation - void SetMenuItem(GtkWidget *menuItem) { m_menuItem = menuItem; } + void SetMenuItem(GtkWidget *menuItem); GtkWidget *GetMenuItem() const { return m_menuItem; } - - void SetCheckedFlag(bool checked) { m_isChecked = checked; } - bool GetCheckedFlag() const { return m_isChecked; } + void SetGtkLabel(); + +#if WXWIN_COMPATIBILITY_2_8 + // compatibility only, don't use in new code + wxDEPRECATED_CONSTRUCTOR( + wxMenuItem(wxMenu *parentMenu, + int id, + const wxString& text, + const wxString& help, + bool isCheckable, + wxMenu *subMenu = NULL) + ); +#endif private: - int m_id; - wxString m_text; - bool m_isCheckMenu; - bool m_isChecked; - bool m_isEnabled; - wxMenu *m_subMenu; - wxString m_helpStr; + wxBitmap m_bitmap; // Bitmap for menuitem, if any + GtkWidget *m_menuItem; // GtkMenuItem - GtkWidget *m_menuItem; // GtkMenuItem + DECLARE_DYNAMIC_CLASS(wxMenuItem) }; - -#endif - //__GTKMENUITEMH__ +#endif // _WX_GTKMENUITEM_H_