no message

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@6340 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
David Webster
2000-02-28 23:47:35 +00:00
parent a68c1246db
commit 29a99be398
4 changed files with 23 additions and 13 deletions

View File

@@ -527,23 +527,25 @@ void wxFrame::SetMenuBar(
return;
}
wxCHECK_RET(!pMenuBar->GetFrame(), wxT("this menubar is already attached"));
m_frameMenuBar = NULL;
if (m_frameMenuBar)
delete m_frameMenuBar;
m_hMenu = pMenuBar->Create();
m_ulMenubarId = pMenuBar->GetMenubarId();
if (m_ulMenubarId != FID_MENU)
// Can set a menubar several times.
// TODO: how to prevent a memory leak if you have a currently-unattached
// menubar? wxWindows assumes that the frame will delete the menu (otherwise
// there are problems for MDI).
if (pMenuBar->GetHMenu())
{
::WinSetWindowUShort( m_hMenu
,QWS_ID
,(unsigned short)m_ulMenubarId
);
m_hMenu = pMenuBar->GetHMenu();
}
else
{
pMenuBar->Detach();
if (!m_hMenu)
return;
m_hMenu = pMenuBar->Create();
if (!m_hMenu)
return;
}
InternalSetMenuBar();