X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4b6a582bef796b43ad4cf0a96bd40bfd631460c6..9914bfbb77f48baf869b63aff58feb2b145ff4d3:/src/msw/mdi.cpp diff --git a/src/msw/mdi.cpp b/src/msw/mdi.cpp index 1e9255d92d..9bcee0a86a 100644 --- a/src/msw/mdi.cpp +++ b/src/msw/mdi.cpp @@ -138,6 +138,14 @@ END_EVENT_TABLE() // the children // =========================================================================== +void wxMDIParentFrame::Init() +{ +#if wxUSE_MENUS && wxUSE_ACCEL + // the default menu doesn't have any accelerators (even if we have it) + m_accelWindowMenu = NULL; +#endif // wxUSE_MENUS && wxUSE_ACCEL +} + bool wxMDIParentFrame::Create(wxWindow *parent, wxWindowID id, const wxString& title, @@ -162,11 +170,6 @@ bool wxMDIParentFrame::Create(wxWindow *parent, m_windowMenu->Append(wxID_MDI_WINDOW_PREV, _("&Previous")); } -#if wxUSE_MENUS && wxUSE_ACCEL - // the default menu doesn't have any accelerators (even if we have it) - m_accelWindowMenu = NULL; -#endif // wxUSE_MENUS && wxUSE_ACCEL - if (!parent) wxTopLevelWindows.Append(this); @@ -186,7 +189,7 @@ bool wxMDIParentFrame::Create(wxWindow *parent, msflags &= ~WS_VSCROLL; msflags &= ~WS_HSCROLL; - if ( !wxWindow::MSWCreate(wxApp::GetRegisteredClassName(_T("wxMDIFrame")), + if ( !wxWindow::MSWCreate(wxApp::GetRegisteredClassName(wxT("wxMDIFrame")), title.wx_str(), pos, size, msflags, @@ -495,7 +498,7 @@ void wxMDIParentFrame::Cascade() void wxMDIParentFrame::Tile(wxOrientation orient) { wxASSERT_MSG( orient == wxHORIZONTAL || orient == wxVERTICAL, - _T("invalid orientation value") ); + wxT("invalid orientation value") ); ::SendMessage(GetWinHwnd(GetClientWindow()), WM_MDITILE, orient == wxHORIZONTAL ? MDITILE_HORIZONTAL @@ -571,19 +574,6 @@ WXLRESULT wxMDIParentFrame::MSWWindowProc(WXUINT message, processed = true; break; - - case WM_ERASEBKGND: - processed = true; - - // we erase background ourselves - rc = true; - break; - - case WM_SIZE: - // though we don't (usually) resize the MDI client to exactly fit - // the client area we need to pass this one to DefFrameProc to - // allow the children to show - break; } if ( !processed ) @@ -792,7 +782,7 @@ bool wxMDIChildFrame::Create(wxMDIParentFrame *parent, MDICREATESTRUCT mcs; wxString className = - wxApp::GetRegisteredClassName(_T("wxMDIChildFrame"), COLOR_WINDOW); + wxApp::GetRegisteredClassName(wxT("wxMDIChildFrame"), COLOR_WINDOW); if ( !(style & wxFULL_REPAINT_ON_RESIZE) ) className += wxApp::GetNoRedrawClassSuffix(); @@ -846,7 +836,7 @@ bool wxMDIChildFrame::Create(wxMDIParentFrame *parent, if ( !m_hWnd ) { - wxLogLastError(_T("WM_MDICREATE")); + wxLogLastError(wxT("WM_MDICREATE")); return false; } @@ -902,6 +892,14 @@ bool wxMDIChildFrame::Show(bool show) return true; } +void +wxMDIChildFrame::DoSetSize(int x, int y, int width, int height, int sizeFlags) +{ + // we need to disable client area origin adjustments used for the child + // windows for the frame itself + wxMDIChildFrameBase::DoSetSize(x, y, width, height, sizeFlags); +} + // Set the client size (i.e. leave the calculation of borders etc. // to wxWidgets) void wxMDIChildFrame::DoSetClientSize(int width, int height) @@ -1426,7 +1424,9 @@ void MDISetMenu(wxWindow *win, HMENU hmenuFrame, HMENU hmenuWindow) { DWORD err = ::GetLastError(); if ( err ) - wxLogApiError(_T("SendMessage(WM_MDISETMENU)"), err); + { + wxLogApiError(wxT("SendMessage(WM_MDISETMENU)"), err); + } } } @@ -1464,7 +1464,7 @@ void MDIInsertWindowMenu(wxWindow *win, WXHMENU hMenu, HMENU menuWin) inserted = true; ::InsertMenu(hmenu, i, MF_BYPOSITION | MF_POPUP | MF_STRING, (UINT_PTR)menuWin, - wxGetTranslation(WINDOW_MENU_LABEL).wx_str()); + wxString(wxGetTranslation(WINDOW_MENU_LABEL)).wx_str()); break; } } @@ -1473,7 +1473,7 @@ void MDIInsertWindowMenu(wxWindow *win, WXHMENU hMenu, HMENU menuWin) { ::AppendMenu(hmenu, MF_POPUP, (UINT_PTR)menuWin, - wxGetTranslation(WINDOW_MENU_LABEL).wx_str()); + wxString(wxGetTranslation(WINDOW_MENU_LABEL)).wx_str()); } }