]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/menu.cpp
Cured radiobutton non-setting by using BS_AUTORADIOBUTTON; cured gridg.cpp
[wxWidgets.git] / src / msw / menu.cpp
index b46c88c3ed1bdfc000f74fe4567f67c110b8345e..6809100b60750f473fcd29cecfac8dcfe3a5db6c 100644 (file)
@@ -73,6 +73,8 @@ wxMenu::wxMenu(const wxString& Title, const wxFunction func)
   m_hMenu = (WXHMENU) CreatePopupMenu();
   m_savehMenu = 0 ;
   m_topLevelMenu = this;
+  m_clientData = (void*) NULL;
+
   if (m_title != "")
   {
     Append(idMenuTitle, m_title) ;
@@ -229,10 +231,10 @@ void wxMenu::Append(int Id, const wxString& label,
 void wxMenu::Delete(int id)
 {
   wxNode *node;
-  wxMenuItem *item;
   int pos;
   HMENU menu;
 
+  wxMenuItem *item = NULL;
   for (pos = 0, node = m_menuItems.First(); node; node = node->Next(), pos++) {
         item = (wxMenuItem *)node->Data();
         if (item->GetId() == id)
@@ -308,9 +310,9 @@ void wxMenu::SetTitle(const wxString& label)
   {
     if ( !label.IsEmpty() )
     {
-      if ( !InsertMenu(hMenu, 0, MF_BYPOSITION | MF_STRING,
-                       idMenuTitle, m_title) ||
-           !InsertMenu(hMenu, 1, MF_BYPOSITION, -1, NULL) )
+      if ( !InsertMenu(hMenu, 0u, MF_BYPOSITION | MF_STRING,
+                       (unsigned)idMenuTitle, m_title) ||
+           !InsertMenu(hMenu, 1u, MF_BYPOSITION, (unsigned)-1, NULL) )
       {
         wxLogLastError("InsertMenu");
       }
@@ -330,9 +332,9 @@ void wxMenu::SetTitle(const wxString& label)
     else
     {
       // modify the title
-      if ( !ModifyMenu(hMenu, 0,
+      if ( !ModifyMenu(hMenu, 0u,
                        MF_BYPOSITION | MF_STRING,
-                       idMenuTitle, m_title) )
+                       (unsigned)idMenuTitle, m_title) )
       {
         wxLogLastError("ModifyMenu");
       }
@@ -411,7 +413,7 @@ wxString wxMenu::GetLabel(int id) const
 
 bool wxMenu::MSWCommand(WXUINT WXUNUSED(param), WXWORD id)
 {
-  wxCommandEvent event(wxEVENT_TYPE_MENU_COMMAND);
+  wxCommandEvent event(wxEVT_COMMAND_MENU_SELECTED);
   event.SetEventObject( this );
   event.SetId( id );
   event.SetInt( id );
@@ -508,7 +510,7 @@ void wxMenu::ProcessCommand(wxCommandEvent & event)
   // Try the window the menu was popped up from (and up
   // through the hierarchy)
   if ( !processed && GetInvokingWindow())
-    processed = GetInvokingWindow()->ProcessEvent(event);
+    processed = GetInvokingWindow()->GetEventHandler()->ProcessEvent(event);
 }
 
 extern wxMenu *wxCurrentPopupMenu;
@@ -665,7 +667,7 @@ bool wxMenuBar::Checked(int Id) const
   if (!item)
     return FALSE;
 
-  int Flag ;
+  int Flag = 0;
 
   if (itemMenu->m_hMenu)
     Flag=GetMenuState((HMENU)itemMenu->m_hMenu, Id, MF_BYCOMMAND) ;
@@ -890,8 +892,11 @@ wxMenuItem *wxMenuBar::FindItemForId (int Id, wxMenu ** itemMenu) const
   wxMenuItem *item = NULL;
   int i;
   for (i = 0; i < m_menuCount; i++)
-    if ((item = m_menus[i]->FindItemForId (Id, itemMenu)))
+  {
+    item = m_menus[i]->FindItemForId (Id, itemMenu);
+    if (item)
       return item;
+  }
   return NULL;
 }