X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f6bcfd974ef26faf6f91a62cac09827e09463fd1..4fa0a5b44341885a0886f2ae6723d2441bd1f62f:/src/msw/menuitem.cpp diff --git a/src/msw/menuitem.cpp b/src/msw/menuitem.cpp index e281013c2d..33e67a5d9f 100644 --- a/src/msw/menuitem.cpp +++ b/src/msw/menuitem.cpp @@ -28,6 +28,8 @@ #pragma hdrstop #endif +#if wxUSE_MENUS + #ifndef WX_PRECOMP #include "wx/font.h" #include "wx/bitmap.h" @@ -70,11 +72,7 @@ // dynamic classes implementation // ---------------------------------------------------------------------------- - #if wxUSE_OWNER_DRAWN - IMPLEMENT_DYNAMIC_CLASS2(wxMenuItem, wxMenuItemBase, wxOwnerDrawn) - #else //!USE_OWNER_DRAWN - IMPLEMENT_DYNAMIC_CLASS(wxMenuItem, wxMenuItemBase) - #endif //USE_OWNER_DRAWN +IMPLEMENT_DYNAMIC_CLASS(wxMenuItem, wxObject) // ---------------------------------------------------------------------------- // wxMenuItem @@ -90,22 +88,25 @@ wxMenuItem::wxMenuItem(wxMenu *pParentMenu, bool bCheckable, wxMenu *pSubMenu) #if wxUSE_OWNER_DRAWN - : wxOwnerDrawn(text, bCheckable) + : wxOwnerDrawn(GetLabelFromText(text), bCheckable) #endif // owner drawn { wxASSERT_MSG( pParentMenu != NULL, wxT("a menu item should have a parent") ); #if wxUSE_OWNER_DRAWN // set default menu colors - #define SYS_COLOR(c) (wxSystemSettings::GetSystemColour(wxSYS_COLOUR_##c)) + #define SYS_COLOR(c) (wxSystemSettings::GetColour(wxSYS_COLOUR_##c)) SetTextColour(SYS_COLOR(MENUTEXT)); SetBackgroundColour(SYS_COLOR(MENU)); + #undef SYS_COLOR + // we don't want normal items be owner-drawn ResetOwnerDrawn(); - #undef SYS_COLOR + // tell the owner drawing code to to show the accel string as well + SetAccelString(text.AfterFirst(_T('\t'))); #endif // wxUSE_OWNER_DRAWN m_parentMenu = pParentMenu; @@ -147,18 +148,6 @@ wxString wxMenuItemBase::GetLabelFromText(const wxString& text) return wxStripMenuCodes(text); } -// accelerators -// ------------ - -#if wxUSE_ACCEL - -wxAcceleratorEntry *wxMenuItem::GetAccel() const -{ - return wxGetAccelFromString(GetText()); -} - -#endif // wxUSE_ACCEL - // change item state // ----------------- @@ -272,3 +261,5 @@ wxMenuItem *wxMenuItemBase::New(wxMenu *parentMenu, { return new wxMenuItem(parentMenu, id, name, help, isCheckable, subMenu); } + +#endif // wxUSE_MENUS