]> git.saurik.com Git - wxWidgets.git/commitdiff
Applied [ 1059554 ] patch for [1028659] fixes a couple of bugs with menus
authorJulian Smart <julian@anthemion.co.uk>
Sat, 12 Feb 2005 10:42:00 +0000 (10:42 +0000)
committerJulian Smart <julian@anthemion.co.uk>
Sat, 12 Feb 2005 10:42:00 +0000 (10:42 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31958 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/msw/menuitem.cpp
src/msw/ownerdrw.cpp

index e2063200cda27f53052f5cd679104a2221debc95..e4a9d1beb90e7e780156978fd013249bdabd1541 100644 (file)
@@ -170,9 +170,13 @@ void wxMenuItem::Init()
 
     #undef  SYS_COLOR
 
 
     #undef  SYS_COLOR
 
-    // we don't want normal items be owner-drawn
+    // setting default colors switched ownerdraw on: switch it off again
     ResetOwnerDrawn();
 
     ResetOwnerDrawn();
 
+    //  switch ownerdraw back on if using a non default margin
+    if ( GetId() != wxID_SEPARATOR )
+        SetMarginWidth(GetMarginWidth());
+
     // tell the owner drawing code to to show the accel string as well
     SetAccelString(m_text.AfterFirst(_T('\t')));
 #endif // wxUSE_OWNER_DRAWN
     // tell the owner drawing code to to show the accel string as well
     SetAccelString(m_text.AfterFirst(_T('\t')));
 #endif // wxUSE_OWNER_DRAWN
index 378f66b95d04fa1bc130ad7ecf97acfd9c9321b1..4f07892a37ed70d98c236e54c71db3f9837f3878 100644 (file)
@@ -107,8 +107,8 @@ wxOwnerDrawn::wxOwnerDrawn(const wxString& str,
     // menu icons and checkmarks
     if (ms_nDefaultMarginWidth == 0)
     {
     // menu icons and checkmarks
     if (ms_nDefaultMarginWidth == 0)
     {
-       ms_nDefaultMarginWidth = wxMSWSystemMenuFontModule::ms_systemMenuButtonWidth;
-       ms_nLastMarginWidth = wxMSWSystemMenuFontModule::ms_systemMenuButtonWidth;
+       ms_nDefaultMarginWidth = ::GetSystemMetrics(SM_CXMENUCHECK) + wxSystemSettings::GetMetric(wxSYS_EDGE_X);
+       ms_nLastMarginWidth = ms_nDefaultMarginWidth;
     }
 
     if (wxMSWSystemMenuFontModule::ms_systemMenuFont->Ok() && bMenuItem)
     }
 
     if (wxMSWSystemMenuFontModule::ms_systemMenuFont->Ok() && bMenuItem)