From: Vadim Zeitlin Date: Fri, 27 Jul 2007 18:02:29 +0000 (+0000) Subject: fix menu bar creation under WM5 (SHCMBF_EMPTYBAR must be used or it's not created... X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/272be120472bbb858fab11b7691dd92577144ebd fix menu bar creation under WM5 (SHCMBF_EMPTYBAR must be used or it's not created at all!) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47752 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/msw/wince/tbarwce.cpp b/src/msw/wince/tbarwce.cpp index 4a2220009b..af64b582b7 100644 --- a/src/msw/wince/tbarwce.cpp +++ b/src/msw/wince/tbarwce.cpp @@ -192,27 +192,28 @@ bool wxToolMenuBar::Create(wxWindow *parent, return true; } -bool wxToolMenuBar::MSWCreateToolbar(const wxPoint& WXUNUSED(pos), const wxSize& WXUNUSED(size), wxMenuBar* menuBar) +bool wxToolMenuBar::MSWCreateToolbar(const wxPoint& WXUNUSED(pos), + const wxSize& WXUNUSED(size), + wxMenuBar *menuBar) { SetMenuBar(menuBar); if (m_menuBar) m_menuBar->SetToolBar(this); + HWND hwndParent = GetHwndOf(GetParent()); + wxCHECK_MSG( hwndParent, false, _T("should have valid parent HWND") ); + #if defined(WINCE_WITHOUT_COMMANDBAR) // Create the menubar. - SHMENUBARINFO mbi; + WinStruct mbi; - memset (&mbi, 0, sizeof (SHMENUBARINFO)); - mbi.cbSize = sizeof (SHMENUBARINFO); - mbi.hwndParent = (HWND) GetParent()->GetHWND(); + mbi.hwndParent = hwndParent; #ifdef __SMARTPHONE__ mbi.nToolBarId = 5002; #else mbi.nToolBarId = 5000; #endif - mbi.nBmpId = 0; - mbi.cBmpImages = 0; - mbi.dwFlags = 0 ; // SHCMBF_EMPTYBAR; + mbi.dwFlags = SHCMBF_EMPTYBAR; mbi.hInstRes = wxGetInstance(); if (!SHCreateMenuBar(&mbi)) @@ -223,7 +224,7 @@ bool wxToolMenuBar::MSWCreateToolbar(const wxPoint& WXUNUSED(pos), const wxSize& SetHWND((WXHWND) mbi.hwndMB); #else - HWND hWnd = CommandBar_Create(wxGetInstance(), (HWND) GetParent()->GetHWND(), GetId()); + HWND hWnd = CommandBar_Create(wxGetInstance(), hwndParent, GetId()); SetHWND((WXHWND) hWnd); #endif