extern wxChar wxMDIChildFrameClassName[];
extern wxWindow *wxWndHook; // from window.cpp
-extern wxList *wxWinHandleList;
+extern void wxAssociateWinWithHandle(HWND hWnd, wxWindow *win);
static HWND invalidHandle = 0;
if (style & wxCAPTION)
msflags |= WS_CAPTION;
- // Adding WS_CLIPCHILDREN causes children not to be properly
- // drawn when first displaying them.
-// if (style & wxCLIP_CHILDREN)
-// msflags |= WS_CLIPCHILDREN;
+ if (style & wxCLIP_CHILDREN)
+ msflags |= WS_CLIPCHILDREN;
wxWindow::MSWCreate(m_windowId, parent, wxMDIFrameClassName, this, title, x, y, width, height,
msflags);
break;
case WM_SIZE:
- // we will leave this message to the base class version, but we
- // must pass it to DefFrameProc() too
- MSWDefWindowProc(message, wParam, lParam);
+ // as we don't (usually) resize the MDI client to exactly fit the
+ // client area (we put it below the toolbar, above statusbar &c),
+ // we should not pass this one to DefFrameProc
break;
}
if ( child->GetHWND() )
{
long childId = wxGetWindowId(child->GetHWND());
- if (childId == id)
+ if (childId == (long)id)
{
::SendMessage( GetWinHwnd(GetClientWindow()),
WM_MDIACTIVATE,
m_hWnd = (WXHWND)Return;
wxWndHook = NULL;
- wxWinHandleList->Append((long)GetHWND(), this);
+ wxAssociateWinWithHandle((HWND) GetHWND(), this);
// VZ: what's this? an act of piracy?
//SetWindowLong(GetHwnd(), 0, (long)this);