X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/974e8d946f30af2bd79b9029d1d2fb9e0d5b2dd4..5a224901b8ede55e1db9980f0fcaf7d2cb49285f:/include/wx/msw/menuitem.h diff --git a/include/wx/msw/menuitem.h b/include/wx/msw/menuitem.h index aa26ee2158..05a943f6f6 100644 --- a/include/wx/msw/menuitem.h +++ b/include/wx/msw/menuitem.h @@ -39,7 +39,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(); @@ -49,6 +49,7 @@ public: 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,10 +60,36 @@ 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: + // 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(wxMenuItem) };