msflags &= ~WS_HSCROLL;
if ( !wxWindow::MSWCreate(wxApp::GetRegisteredClassName(wxT("wxMDIFrame")),
- title.wx_str(),
+ title.t_str(),
pos, size,
msflags,
exflags) )
void wxMDIParentFrame::AddWindowMenu()
{
if ( m_windowMenu )
+ {
+ // For correct handling of the events from this menu we also must
+ // attach it to the menu bar.
+ m_windowMenu->Attach(GetMenuBar());
+
MDIInsertWindowMenu(GetClientWindow(), m_hMenu, GetMDIWindowMenu(this));
+ }
}
void wxMDIParentFrame::RemoveWindowMenu()
{
if ( m_windowMenu )
+ {
MDIRemoveWindowMenu(GetClientWindow(), m_hMenu);
+
+ m_windowMenu->Detach();
+ }
}
void wxMDIParentFrame::UpdateWindowMenu(bool enable)
}
#if wxUSE_ACCEL
- delete m_accelWindowMenu;
- m_accelWindowMenu = NULL;
+ wxDELETE(m_accelWindowMenu);
if ( menu && menu->HasAccels() )
m_accelWindowMenu = menu->CreateAccelTable();
if ( !(style & wxFULL_REPAINT_ON_RESIZE) )
className += wxApp::GetNoRedrawClassSuffix();
- mcs.szClass = className.wx_str();
- mcs.szTitle = title.wx_str();
+ mcs.szClass = className.t_str();
+ mcs.szTitle = title.t_str();
mcs.hOwner = wxGetInstance();
if (x != wxDefaultCoord)
mcs.x = x;
WXHMENU hMenuParent = parent->m_hMenu;
- // activate the the parent menu only when there is no other child
+ // activate the parent menu only when there is no other child
// that has been activated
if ( hMenuParent && !hwndAct )
hMenuToSet = hMenuParent;
while (node)
{
wxWindow *child = node->GetData();
- if (child->IsKindOf(CLASSINFO(wxMDIChildFrame)))
+ if (wxDynamicCast(child, wxMDIChildFrame))
{
::RedrawWindow(GetHwndOf(child),
NULL,
inserted = true;
::InsertMenu(hmenu, i, MF_BYPOSITION | MF_POPUP | MF_STRING,
(UINT_PTR)menuWin,
- wxString(wxGetTranslation(WINDOW_MENU_LABEL)).wx_str());
+ wxString(wxGetTranslation(WINDOW_MENU_LABEL)).t_str());
break;
}
}
{
::AppendMenu(hmenu, MF_POPUP,
(UINT_PTR)menuWin,
- wxString(wxGetTranslation(WINDOW_MENU_LABEL)).wx_str());
+ wxString(wxGetTranslation(WINDOW_MENU_LABEL)).t_str());
}
}