X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/974e8d946f30af2bd79b9029d1d2fb9e0d5b2dd4..2588b9c467b3a313f516ef81c7d5cfd14d1e8bb6:/include/wx/msw/menuitem.h diff --git a/include/wx/msw/menuitem.h b/include/wx/msw/menuitem.h index aa26ee2158..3b9d7875d3 100644 --- a/include/wx/msw/menuitem.h +++ b/include/wx/msw/menuitem.h @@ -6,16 +6,12 @@ // Created: 11.11.97 // RCS-ID: $Id$ // Copyright: (c) 1998 Vadim Zeitlin -// Licence: wxWindows license +// Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// #ifndef _MENUITEM_H #define _MENUITEM_H -#ifdef __GNUG__ - #pragma interface "menuitem.h" -#endif - // ---------------------------------------------------------------------------- // headers // ---------------------------------------------------------------------------- @@ -39,7 +35,7 @@ public: int id = wxID_SEPARATOR, const wxString& name = wxEmptyString, const wxString& help = wxEmptyString, - bool isCheckable = FALSE, + wxItemKind kind = wxITEM_NORMAL, wxMenu *subMenu = (wxMenu *)NULL); virtual ~wxMenuItem(); @@ -47,8 +43,9 @@ public: virtual void SetText(const wxString& strName); virtual void SetCheckable(bool checkable); - virtual void Enable(bool bDoEnable = TRUE); - virtual void Check(bool bDoCheck = TRUE); + virtual void Enable(bool bDoEnable = true); + virtual void Check(bool bDoCheck = true); + virtual bool IsChecked() const; // unfortunately needed to resolve ambiguity between // wxMenuItemBase::IsCheckable() and wxOwnerDrawn::IsCheckable() @@ -59,11 +56,37 @@ public: // menu handle depending on what we're int GetRealId() const; - // delete the submenu - void DeleteSubMenu(); + // mark item as belonging to the given radio group + void SetAsRadioGroupStart(); + void SetRadioGroupStart(int start); + void SetRadioGroupEnd(int end); + + // compatibility only, don't use in new code + wxMenuItem(wxMenu *parentMenu, + int id, + const wxString& text, + const wxString& help, + bool isCheckable, + wxMenu *subMenu = (wxMenu *)NULL); private: - DECLARE_DYNAMIC_CLASS(wxMenuItem) + // common part of all ctors + void Init(); + + // the positions of the first and last items of the radio group this item + // belongs to or -1: start is the radio group start and is valid for all + // but first radio group items (m_isRadioGroupStart == false), end is valid + // only for the first one + union + { + int start; + int end; + } m_radioGroup; + + // does this item start a radio group? + bool m_isRadioGroupStart; + + DECLARE_DYNAMIC_CLASS_NO_COPY(wxMenuItem) }; #endif //_MENUITEM_H