X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/717a57c2fabb054c8f00dc5dae70df1d03cfe532..fbaddf44820481d8f6af849847d6b094316b27e1:/include/wx/msw/menuitem.h diff --git a/include/wx/msw/menuitem.h b/include/wx/msw/menuitem.h index df414512df..6cd72cb989 100644 --- a/include/wx/msw/menuitem.h +++ b/include/wx/msw/menuitem.h @@ -6,13 +6,13 @@ // 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__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma interface "menuitem.h" #endif @@ -39,23 +39,18 @@ 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(); // override base class virtuals virtual void SetText(const wxString& strName); - virtual wxString GetLabel() const; virtual void SetCheckable(bool checkable); virtual void Enable(bool bDoEnable = TRUE); virtual void Check(bool bDoCheck = TRUE); virtual bool IsChecked() const; -#if wxUSE_ACCEL - virtual wxAcceleratorEntry *GetAccel() const; -#endif // wxUSE_ACCEL - // unfortunately needed to resolve ambiguity between // wxMenuItemBase::IsCheckable() and wxOwnerDrawn::IsCheckable() bool IsCheckable() const { return wxMenuItemBase::IsCheckable(); } @@ -65,8 +60,37 @@ public: // menu handle depending on what we're int GetRealId() const; + // 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