EVT_SYS_COLOUR_CHANGED(wxFrameOS2::OnSysColourChanged)
END_EVENT_TABLE()
-IMPLEMENT_DYNAMIC_CLASS(wxFrameOS2, wxWindow)
-
#ifndef __WXUNIVERSAL__
-IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxFrameMSW)
+IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxWindow)
#endif
// ============================================================================
}
} // end of wxFrameOS2::SetMenuBar
+void wxFrameOS2::AttachMenuBar(
+ wxMenuBar* pMenubar
+)
+{
+ m_frameMenuBar = pMenubar;
+
+ if (!pMenubar)
+ {
+ //
+ // Actually remove the menu from the frame
+ //
+ m_hMenu = (WXHMENU)0;
+ InternalSetMenuBar();
+ }
+ else // Set new non NULL menu bar
+ {
+ //
+ // Can set a menubar several times.
+ //
+ if (pMenubar->GetHMenu())
+ {
+ m_hMenu = pMenubar->GetHMenu();
+ }
+ else
+ {
+ if (pMenubar->IsAttached())
+ pMenubar->Detach();
+
+ m_hMenu = pMenubar->Create();
+
+ if (!m_hMenu)
+ return;
+ }
+ InternalSetMenuBar();
+ }
+} // end of wxFrameOS2::AttachMenuBar
+
void wxFrameOS2::InternalSetMenuBar()
{
ERRORID vError;