]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/menuitem.cpp
don't use dangling HBRUSH
[wxWidgets.git] / src / msw / menuitem.cpp
index e4a9d1beb90e7e780156978fd013249bdabd1541..38a7e8783d484bc04e9ff0cc2d845e59781e6afc 100644 (file)
@@ -162,13 +162,13 @@ void wxMenuItem::Init()
     m_isRadioGroupStart = false;
 
 #if  wxUSE_OWNER_DRAWN
     m_isRadioGroupStart = false;
 
 #if  wxUSE_OWNER_DRAWN
-    // set default menu colors
-    #define SYS_COLOR(c) (wxSystemSettings::GetColour(wxSYS_COLOUR_##c))
 
 
-    SetTextColour(SYS_COLOR(MENUTEXT));
-    SetBackgroundColour(SYS_COLOR(MENU));
-
-    #undef  SYS_COLOR
+    // when the color is not valid, wxOwnerDraw takes the default ones.
+    // If we set the colors here and they are changed by the user during
+    // the execution, then the colors are not updated until the application
+    // is restarted and our menus look bad
+    SetTextColour(wxNullColour);
+    SetBackgroundColour(wxNullColour);
 
     // setting default colors switched ownerdraw on: switch it off again
     ResetOwnerDrawn();
 
     // setting default colors switched ownerdraw on: switch it off again
     ResetOwnerDrawn();
@@ -177,7 +177,7 @@ void wxMenuItem::Init()
     if ( GetId() != wxID_SEPARATOR )
         SetMarginWidth(GetMarginWidth());
 
     if ( GetId() != wxID_SEPARATOR )
         SetMarginWidth(GetMarginWidth());
 
-    // tell the owner drawing code to to show the accel string as well
+    // tell the owner drawing code to show the accel string as well
     SetAccelString(m_text.AfterFirst(_T('\t')));
 #endif // wxUSE_OWNER_DRAWN
 }
     SetAccelString(m_text.AfterFirst(_T('\t')));
 #endif // wxUSE_OWNER_DRAWN
 }