}
bool wxMDIParentFrame::Create(wxWindow *parent,
- const wxWindowID id,
+ wxWindowID id,
const wxString& title,
const wxPoint& pos,
const wxSize& size,
- const long style,
+ long style,
const wxString& name)
{
m_defaultIcon = (WXHICON) (wxSTD_MDIPARENTFRAME_ICON ? wxSTD_MDIPARENTFRAME_ICON : wxDEFAULT_MDIPARENTFRAME_ICON);
m_windowMenu = (WXHMENU) ::LoadMenu(wxGetInstance(), "wxWindowMenu");
-#if DEBUG > 1
+#if WXDEBUG > 1
wxDebugMsg("Loaded m_windowMenu %d\n", m_windowMenu);
#endif
- // Adding WS_CLIPCHILDREN causes children not to be properly
- // drawn when first displaying them.
- DWORD msflags = WS_OVERLAPPED ; // | WS_CLIPCHILDREN ;
+ DWORD msflags = WS_OVERLAPPED ;
if (style & wxMINIMIZE_BOX)
msflags |= WS_MINIMIZEBOX;
if (style & wxMAXIMIZE_BOX)
msflags |= WS_MAXIMIZE;
if (style & wxCAPTION)
msflags |= WS_CAPTION;
- if (style & wxCLIP_CHILDREN)
- msflags |= WS_CLIPCHILDREN;
+
+ // Adding WS_CLIPCHILDREN causes children not to be properly
+ // drawn when first displaying them.
+// if (style & wxCLIP_CHILDREN)
+// msflags |= WS_CLIPCHILDREN;
wxWindow::MSWCreate(m_windowId, parent, wxMDIFrameClassName, this, title, x, y, width, height,
msflags);
}
#if WXWIN_COMPATIBILITY
+/*
void wxMDIParentFrame::OldOnSize(int x, int y)
{
#if WXWIN_COMPATIBILITY == 1
#else
#endif
}
+*/
#endif
void wxMDIParentFrame::MSWOnCreate(WXLPCREATESTRUCT WXUNUSED(cs))
{
- m_clientWindow = new wxMDIClientWindow;
+ m_clientWindow = OnCreateClient();
// Uses own style for client style
m_clientWindow->CreateClient(this, GetWindowStyleFlag());
}
-void wxMDIParentFrame::MSWOnSize(const int x, const int y, const WXUINT id)
+void wxMDIParentFrame::MSWOnSize(int x, int y, WXUINT id)
{
switch (id)
{
PositionStatusBar();
- GetEventHandler()->OldOnSize(x, y);
+ wxSizeEvent event(wxSize(x, y), m_windowId);
+ event.SetEventObject( this );
+ if (!GetEventHandler()->ProcessEvent(event))
+ Default();
}
}
-bool wxMDIParentFrame::MSWOnActivate(const int state, const bool minimized, const WXHWND activate)
+bool wxMDIParentFrame::MSWOnActivate(int state, bool minimized, WXHWND activate)
{
wxWindow::MSWOnActivate(state, minimized, activate);
// to the current child.
if ((m_currentChild != NULL) && ((state == WA_ACTIVE) || (state == WA_CLICKACTIVE)))
{
-#if WXWIN_COMPATIBILITY
- m_currentChild->GetEventHandler()->OldOnActivate(TRUE);
-#else
- wxActivateEvent event(wxEVT_ACTIVATE, TRUE,
- m_currentChild.m_windowId);
- event.eventObject = m_currentChild;
- m_currentChild->GetEventHandler()->ProcessEvent(event);
-#endif
+ wxActivateEvent event(wxEVT_ACTIVATE, TRUE, m_currentChild->GetId());
+ event.SetEventObject( m_currentChild );
+ m_currentChild->GetEventHandler()->ProcessEvent(event);
}
return 0;
}
-bool wxMDIParentFrame::MSWOnCommand(const WXWORD id, const WXWORD cmd, const WXHWND control)
+bool wxMDIParentFrame::MSWOnCommand(WXWORD id, WXWORD cmd, WXHWND control)
{
if (cmd == 0)
{
}
if (id >= 0xF000)
{
-#if DEBUG > 1
+#if WXDEBUG > 1
wxDebugMsg("wxMDIFrame::OnCommand %d: system command: calling default window proc\n", GetHWND());
#endif
return FALSE; // Get WndProc to call default proc
}
else if (m_currentChild && (id < wxFIRST_MDI_CHILD || id > wxLAST_MDI_CHILD))
{
-#if DEBUG > 1
+#if WXDEBUG > 1
wxDebugMsg("wxMDIFrame::MSWOnCommand %d: calling child OnCommand\n", GetHWND());
#endif
return m_currentChild->MSWOnCommand(id, cmd, control);
return FALSE;
}
-void wxMDIParentFrame::MSWOnMenuHighlight(const WXWORD nItem, const WXWORD nFlags, const WXHMENU hSysMenu)
+void wxMDIParentFrame::MSWOnMenuHighlight(WXWORD nItem, WXWORD nFlags, WXHMENU hSysMenu)
{
if (m_parentFrameActive)
{
- // TODO
if (nFlags == 0xFFFF && hSysMenu == (WXHMENU) NULL)
- GetEventHandler()->OldOnMenuSelect(-1);
+ {
+ wxMenuEvent event(wxEVT_MENU_HIGHLIGHT, -1);
+ event.SetEventObject( this );
+ GetEventHandler()->ProcessEvent(event);
+ }
else if (nFlags != MF_SEPARATOR)
- GetEventHandler()->OldOnMenuSelect(nItem);
+ {
+ wxMenuEvent event(wxEVT_MENU_HIGHLIGHT, nItem);
+ event.SetEventObject( this );
+ GetEventHandler()->ProcessEvent(event);
+ }
}
else if (m_currentChild)
{
return TRUE;
if (m_acceleratorTable != (WXHANDLE) NULL &&
- ::TranslateAccelerator((HWND) GetHWND(), (HANDLE) m_acceleratorTable, pMsg))
+ ::TranslateAccelerator((HWND) GetHWND(), (HACCEL) m_acceleratorTable, pMsg))
return TRUE;
if (pMsg->message == WM_KEYDOWN || pMsg->message == WM_SYSKEYDOWN)
return FALSE;
}
-bool wxMDIParentFrame::MSWOnEraseBkgnd(const WXHDC WXUNUSED(pDC))
+bool wxMDIParentFrame::MSWOnEraseBkgnd(WXHDC WXUNUSED(pDC))
{
return TRUE;
}
}
bool wxMDIChildFrame::Create(wxMDIParentFrame *parent,
- const wxWindowID id,
+ wxWindowID id,
const wxString& title,
const wxPoint& pos,
const wxSize& size,
- const long style,
+ long style,
const wxString& name)
{
m_defaultIcon = (WXHICON) (wxSTD_MDICHILDFRAME_ICON ? wxSTD_MDICHILDFRAME_ICON : wxDEFAULT_MDICHILDFRAME_ICON);
// Set the client size (i.e. leave the calculation of borders etc.
// to wxWindows)
-void wxMDIChildFrame::SetClientSize(const int width, const int height)
+void wxMDIChildFrame::SetClientSize(int width, int height)
{
HWND hWnd = (HWND) GetHWND();
::ScreenToClient((HWND) mdiParent->GetClientWindow()->GetHWND(), &point);
MoveWindow(hWnd, point.x, point.y, actual_width, actual_height, (BOOL)TRUE);
-#if WXWIN_COMPATIBILITY
- GetEventHandler()->OldOnSize(width, height);
-#else
+
wxSizeEvent event(wxSize(width, height), m_windowId);
- event.eventObject = this;
+ event.SetEventObject( this );
GetEventHandler()->ProcessEvent(event);
-#endif
}
void wxMDIChildFrame::GetPosition(int *x, int *y) const
wxMDIParentFrame *parent = (wxMDIParentFrame *)GetParent();
parent->m_parentFrameActive = FALSE;
- HMENU subMenu = GetSubMenu((HWND) parent->GetWindowMenu(), 0);
+ HMENU subMenu = GetSubMenu((HMENU) parent->GetWindowMenu(), 0);
// Try to insert Window menu in front of Help, otherwise append it.
int N = GetMenuItemCount(menu);
}
static HWND invalidHandle = 0;
-void wxMDIChildFrame::MSWOnSize(const int x, const int y, const WXUINT id)
+void wxMDIChildFrame::MSWOnSize(int x, int y, WXUINT id)
{
if (!GetHWND()) return;
if (invalidHandle == (HWND) GetHWND())
{
-#if DEBUG > 1
+#if WXDEBUG > 1
wxDebugMsg("wxMDIChildFrame::OnSize %d: invalid, so returning.\n", GetHWND());
#endif
return;
}
}
-bool wxMDIChildFrame::MSWOnCommand(const WXWORD id, const WXWORD cmd, const WXHWND control)
+bool wxMDIChildFrame::MSWOnCommand(WXWORD id, WXWORD cmd, WXHWND control)
{
-#if DEBUG > 1
+#if WXDEBUG > 1
wxDebugMsg("wxMDIChildFrame::MSWOnCommand %d\n", GetHWND());
#endif
if ((cmd == 0) && GetHWND())
{
wxFrame *parent = (wxFrame *)GetParent();
HWND parent_hwnd = (HWND) parent->GetHWND();
- return (::TranslateAccelerator(parent_hwnd, (HANDLE) m_acceleratorTable, pMsg) != 0);
+ return (::TranslateAccelerator(parent_hwnd, (HACCEL) m_acceleratorTable, pMsg) != 0);
}
return FALSE;
}
-long wxMDIChildFrame::MSWOnMDIActivate(const long activate, const WXHWND WXUNUSED(one), const WXHWND WXUNUSED(two))
+long wxMDIChildFrame::MSWOnMDIActivate(long activate, WXHWND WXUNUSED(one), WXHWND WXUNUSED(two))
{
wxMDIParentFrame *parent = (wxMDIParentFrame *)GetParent();
HMENU parent_menu = (HMENU) parent->GetWinMenu();
-#if DEBUG > 1
+#if WXDEBUG > 1
wxDebugMsg("Parent menu is %d\n", parent_menu);
#endif
HMENU child_menu = (HMENU) GetWinMenu();
-#if DEBUG > 1
+#if WXDEBUG > 1
wxDebugMsg("Child menu is %d\n", child_menu);
#endif
{
parent->m_parentFrameActive = FALSE;
HMENU subMenu = GetSubMenu((HMENU) parent->GetWindowMenu(), 0);
-#if DEBUG > 1
+#if WXDEBUG > 1
wxDebugMsg("Window submenu is %d\n", subMenu);
#endif
// HMENU subMenu = 0;
::DrawMenuBar((HWND) parent->GetHWND());
}
- GetEventHandler()->OldOnActivate(TRUE);
+ wxActivateEvent event(wxEVT_ACTIVATE, TRUE, m_windowId);
+ event.SetEventObject( this );
+ GetEventHandler()->ProcessEvent(event);
}
else
{
if (parent->m_currentChild == this)
parent->m_currentChild = NULL;
- GetEventHandler()->OldOnActivate(FALSE);
+
+ wxActivateEvent event(wxEVT_ACTIVATE, FALSE, m_windowId);
+ event.SetEventObject( this );
+ GetEventHandler()->ProcessEvent(event);
// m_active = FALSE;
if (parent_menu)
{
parent->m_parentFrameActive = TRUE;
HMENU subMenu = GetSubMenu((HMENU) parent->GetWindowMenu(), 0);
-#if DEBUG > 1
+#if WXDEBUG > 1
wxDebugMsg("Window submenu is %d\n", subMenu);
#endif
// HMENU subMenu = 0;
::DrawMenuBar((HWND) parent->GetHWND());
}
}
- // TODO
bool flag = (activate != 0);
- GetEventHandler()->OldOnActivate(flag);
-#if DEBUG > 1
+ wxActivateEvent event(wxEVT_ACTIVATE, flag, m_windowId);
+ event.SetEventObject( this );
+ GetEventHandler()->ProcessEvent(event);
+
+#if WXDEBUG > 1
wxDebugMsg("Finished (de)activating\n");
#endif
return 0;
// destroyed.
HWND oldHandle = (HWND)GetHWND();
-#if DEBUG > 1
+#if WXDEBUG > 1
wxDebugMsg("*** About to DestroyWindow MDI child %d\n", oldHandle);
#endif
#ifdef __WIN32__
#else
SendMessage((HWND) parent->GetClientWindow()->GetHWND(), WM_MDIDESTROY, (HWND)oldHandle, 0);
#endif
-#if DEBUG > 1
+#if WXDEBUG > 1
wxDebugMsg("*** Finished DestroyWindow MDI child %d\n", oldHandle);
#endif
invalidHandle = 0;
{
}
-bool wxMDIClientWindow::CreateClient(wxMDIParentFrame *parent, const long style)
+bool wxMDIClientWindow::CreateClient(wxMDIParentFrame *parent, long style)
{
m_backgroundColour = wxSystemSettings::GetSystemColour(wxSYS_COLOUR_APPWORKSPACE);
}
// Should hand the message to the default proc
-long wxMDIClientWindow::MSWOnMDIActivate(const long bActivate, const WXHWND, const WXHWND)
+long wxMDIClientWindow::MSWOnMDIActivate(long bActivate, WXHWND, WXHWND)
{
return Default();
}