- m_windowStyle |= wxTAB_TRAVERSAL;
-
- WXDWORD extendedStyle = MakeExtendedStyle(m_windowStyle);
- if (m_windowStyle & wxSTAY_ON_TOP)
- extendedStyle |= WS_EX_TOPMOST;
-
-#ifndef __WIN16__
- if (m_exStyle & wxDIALOG_EX_CONTEXTHELP)
- extendedStyle |= WS_EX_CONTEXTHELP;
-#endif
-
- // Allows creation of dialogs with & without captions under MSWindows,
- // resizeable or not (but a resizeable dialog always has caption -
- // otherwise it would look too strange)
- const wxChar *dlg;
- if ( style & wxRESIZE_BORDER )
- dlg = wxT("wxResizeableDialog");
- else if ( style & wxCAPTION )
- dlg = wxT("wxCaptionDialog");
- else
- dlg = wxT("wxNoCaptionDialog");
-
-#ifdef __WXMICROWIN__
- extern const wxChar *wxFrameClassName;
-
- int msflags = WS_OVERLAPPED|WS_POPUP;
- if (style & wxCAPTION)
- msflags |= WS_CAPTION;
- if (style & wxCLIP_CHILDREN)
- msflags |= WS_CLIPCHILDREN;
- if ((style & wxTHICK_FRAME) == 0)
- msflags |= WS_BORDER;
- MSWCreate(m_windowId, parent, wxFrameClassName, this, NULL,
- x, y, width, height,
- msflags,
- NULL,
- extendedStyle);
-
-#else
- MSWCreate(m_windowId, parent, NULL, this, NULL,
- x, y, width, height,
- 0, // style is not used if we have dlg template
- dlg,
- extendedStyle);
-#endif
- HWND hwnd = (HWND)GetHWND();
-
- if ( !hwnd )
- {
- wxFAIL_MSG(_("Failed to create dialog. You probably forgot to include wx/msw/wx.rc in your resources."));
-
- return FALSE;
- }
-
-#ifndef __WXMICROWIN__
- SubclassWin(GetHWND());
-#endif
-
- SetWindowText(hwnd, title);
-
- return TRUE;
-}
-
-bool wxDialog::EnableCloseButton(bool enable)
-{
-#ifndef __WXMICROWIN__
- // get system (a.k.a. window) menu
- HMENU hmenu = ::GetSystemMenu(GetHwnd(), FALSE /* get it */);
- if ( !hmenu )
- {
- wxLogLastError(_T("GetSystemMenu"));
-
- return FALSE;
- }
-
- // enabling/disabling the close item from it also automatically
- // disables/enabling the close title bar button
- if ( !::EnableMenuItem(hmenu, SC_CLOSE,
- MF_BYCOMMAND | (enable ? MF_ENABLED : MF_GRAYED)) )
- {
- wxLogLastError(_T("EnableMenuItem(SC_CLOSE)"));