X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1e6feb95a79834836e88143b15d9f424ebe79621..86ac84b8ce086e6bbda58f422d41f84268606e35:/include/wx/univ/menuitem.h diff --git a/include/wx/univ/menuitem.h b/include/wx/univ/menuitem.h index b3f14e81bc..70d3350e6c 100644 --- a/include/wx/univ/menuitem.h +++ b/include/wx/univ/menuitem.h @@ -5,39 +5,35 @@ // Modified by: // Created: 05.05.01 // RCS-ID: $Id$ -// Copyright: (c) 2001 Vadim Zeitlin +// Copyright: (c) 2001 SciTech Software, Inc. (www.scitechsoft.com) // Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// #ifndef _WX_UNIV_MENUITEM_H_ #define _WX_UNIV_MENUITEM_H_ -#ifdef __GNUG__ - #pragma interface "univmenuitem.h" -#endif - // ---------------------------------------------------------------------------- // wxMenuItem implements wxMenuItemBase // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxMenuItem : public wxMenuItemBase +class WXDLLIMPEXP_CORE wxMenuItem : public wxMenuItemBase { public: // ctor & dtor - wxMenuItem(wxMenu *parentMenu = (wxMenu *)NULL, + wxMenuItem(wxMenu *parentMenu = NULL, int id = wxID_SEPARATOR, const wxString& name = wxEmptyString, const wxString& help = wxEmptyString, - bool isCheckable = FALSE, - wxMenu *subMenu = (wxMenu *)NULL); + wxItemKind kind = wxITEM_NORMAL, + wxMenu *subMenu = NULL); virtual ~wxMenuItem(); // override base class virtuals to update the item appearance on screen - virtual void SetText(const wxString& text); + virtual void SetItemLabel(const wxString& text); virtual void SetCheckable(bool checkable); - virtual void Enable(bool enable = TRUE); - virtual void Check(bool check = TRUE); + virtual void Enable(bool enable = true); + virtual void Check(bool check = true); // we add some extra functions which are also available under MSW from // wxOwnerDrawn class - they will be moved to wxMenuItemBase later @@ -45,9 +41,19 @@ public: void SetBitmaps(const wxBitmap& bmpChecked, const wxBitmap& bmpUnchecked = wxNullBitmap); void SetBitmap(const wxBitmap& bmp) { SetBitmaps(bmp); } - const wxBitmap& GetBitmap(bool checked = TRUE) const + const wxBitmap& GetBitmap(bool checked = true) const { return checked ? m_bmpChecked : m_bmpUnchecked; } + void SetDisabledBitmap( const wxBitmap& bmpDisabled ) + { m_bmpDisabled = bmpDisabled; } + const wxBitmap& GetDisabledBitmap() const + { return m_bmpDisabled; } + + // mark item as belonging to the given radio group + void SetAsRadioGroupStart(); + void SetRadioGroupStart(int start); + void SetRadioGroupEnd(int end); + // wxUniv-specific methods for implementation only starting from here // get the accel index of our label or -1 if none @@ -66,14 +72,14 @@ public: wxCoord GetPosition() const { - wxASSERT_MSG( m_posY != -1, _T("must call SetHeight first!") ); + wxASSERT_MSG( m_posY != wxDefaultCoord, _T("must call SetHeight first!") ); return m_posY; } wxCoord GetHeight() const { - wxASSERT_MSG( m_height != -1, _T("must call SetHeight first!") ); + wxASSERT_MSG( m_height != wxDefaultCoord, _T("must call SetHeight first!") ); return m_height; } @@ -87,7 +93,21 @@ protected: // the bitmaps (may be invalid, then they're not used) wxBitmap m_bmpChecked, - m_bmpUnchecked; + m_bmpUnchecked, + m_bmpDisabled; + + // 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; // the position of the accelerator in our label, -1 if none int m_indexAccel;