]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/menu.cpp
use the same #if wxUSE_XXX checks in platform-specific files as around wxTextEntryBas...
[wxWidgets.git] / src / msw / menu.cpp
index 915992cf0845e7dd96924aa0eae6b70a231b560d..27ccbc0fb8d453cb0ee84a7f0f0e66a954908b47 100644 (file)
@@ -261,15 +261,9 @@ void wxMenu::Init()
 // The wxWindow destructor will take care of deleting the submenus.
 wxMenu::~wxMenu()
 {
-    // we should free Windows resources only if Windows doesn't do it for us
-    // which happens if we're attached to a menubar or a submenu of another
-    // menu
-    if ( !IsAttached() && !GetParent() )
+    if ( !::DestroyMenu(GetHmenu()) )
     {
-        if ( !::DestroyMenu(GetHmenu()) )
-        {
-            wxLogLastError(wxT("DestroyMenu"));
-        }
+        wxLogLastError(wxT("DestroyMenu"));
     }
 
 #if wxUSE_ACCEL
@@ -788,10 +782,12 @@ void wxMenu::SetTitle(const wxString& label)
 // event processing
 // ---------------------------------------------------------------------------
 
-bool wxMenu::MSWCommand(WXUINT WXUNUSED(param), WXWORD id)
+bool wxMenu::MSWCommand(WXUINT WXUNUSED(param), WXWORD id_)
 {
+    const int id = (signed short)id_;
+
     // ignore commands from the menu title
-    if ( id != (WXWORD)idMenuTitle )
+    if ( id != idMenuTitle )
     {
         // update the check item when it's clicked
         wxMenuItem * const item = FindItem(id);
@@ -878,9 +874,8 @@ wxMenuBar::~wxMenuBar()
             toolMenuBar->SetMenuBar(NULL);
     }
 #else
-    // we should free Windows resources only if Windows doesn't do it for us
-    // which happens if we're attached to a frame
-    if (m_hMenu && !IsAttached())
+
+    if ( m_hMenu )
     {
 #if defined(WINCE_WITH_COMMANDBAR)
         ::DestroyWindow((HWND) m_commandBar);