]> git.saurik.com Git - wxWidgets.git/commitdiff
InsertMenuItem can be used by submenus having bitmaps also
authorJamie Gadd <jrgadd2@cs.latrobe.edu.au>
Sun, 8 Jan 2006 13:28:52 +0000 (13:28 +0000)
committerJamie Gadd <jrgadd2@cs.latrobe.edu.au>
Sun, 8 Jan 2006 13:28:52 +0000 (13:28 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36777 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/msw/menu.cpp

index a4928f0a0c5b557d3213c77558518f978a4d751d..69244364609b425dd90d6885042c0a436ba5460e 100644 (file)
@@ -420,11 +420,21 @@ bool wxMenu::DoInsertOrAppend(wxMenuItem *pItem, size_t pos)
             // now run-time one: MIIM_BITMAP only works under WinME/2000+
             if ( wxGetWinVersion() >= wxWinVersion_98 )
             {
-                mii.fMask = MIIM_ID | MIIM_STRING | MIIM_DATA | MIIM_BITMAP;
-                mii.wID = id;
+                mii.fMask = MIIM_STRING | MIIM_DATA | MIIM_BITMAP;
                 mii.cch = itemText.length();
                 mii.dwTypeData = wx_const_cast(wxChar *, itemText.c_str());
 
+                if (flags & MF_POPUP)
+                {
+                    mii.fMask |= MIIM_SUBMENU;
+                    mii.hSubMenu = (HMENU)pItem->GetSubMenu()->GetHMenu();
+                }
+                else
+                {
+                    mii.fMask |= MIIM_ID;
+                    mii.wID = id;
+                }
+
                 // we can't pass HBITMAP directly as hbmpItem for 2 reasons:
                 //  1. we can't draw it with transparency then (this is not
                 //     very important now but would be with themed menu bg)