]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/dialog.cpp
WS_CLIPCHILDREN is not always enabled in wxNotebook (caused painting problems).
[wxWidgets.git] / src / msw / dialog.cpp
index d5f4085fa6bfeb6fbe01e9bea8e3e7f6bac5a5bc..d2f6a22272386de1aa88a3726161bb154c6fee2b 100644 (file)
@@ -58,11 +58,6 @@ extern wxList WXDLLEXPORT wxPendingDelete;
     END_EVENT_TABLE()
 #endif
 
-bool wxDialog::MSWProcessMessage(WXMSG* pMsg)
-{
-  return (::IsDialogMessage((HWND) GetHWND(), (MSG*)pMsg) != 0);
-}
-
 bool wxDialog::MSWOnClose(void)
 {
     return Close();
@@ -116,6 +111,9 @@ bool wxDialog::Create(wxWindow *parent, wxWindowID id,
     if (height < 0)
         height = 500;
 
+    // All dialogs should really have this style
+    m_windowStyle |= wxTAB_TRAVERSAL;
+
     WXDWORD extendedStyle = MakeExtendedStyle(m_windowStyle);
     if (m_windowStyle & wxSTAY_ON_TOP)
         extendedStyle |= WS_EX_TOPMOST;
@@ -140,7 +138,7 @@ bool wxDialog::Create(wxWindow *parent, wxWindowID id,
 
     if ( !hwnd )
     {
-        wxLogError(_("Failed to created dialog."));
+        wxLogError(_("Failed to create dialog."));
 
         return FALSE;
     }
@@ -213,13 +211,13 @@ void wxDialog::OnCharHook(wxKeyEvent& event)
   {
     if (event.m_keyCode == WXK_ESCAPE)
     {
-    // Behaviour changed in 2.0: we'll send a Cancel message
-    // to the dialog instead of Close.
-    wxCommandEvent cancelEvent(wxEVT_COMMAND_BUTTON_CLICKED, wxID_CANCEL);
-    cancelEvent.SetEventObject( this );
-    GetEventHandler()->ProcessEvent(cancelEvent);
+        // Behaviour changed in 2.0: we'll send a Cancel message
+        // to the dialog instead of Close.
+        wxCommandEvent cancelEvent(wxEVT_COMMAND_BUTTON_CLICKED, wxID_CANCEL);
+        cancelEvent.SetEventObject( this );
+        GetEventHandler()->ProcessEvent(cancelEvent);
 
-    return;
+        return;
     }
   }
   // We didn't process this event.
@@ -248,11 +246,11 @@ bool wxDialog::IsIconized(void) const
   return FALSE;
 }
 
-void wxDialog::SetClientSize(int width, int height)
+void wxDialog::DoSetClientSize(int width, int height)
 {
   HWND hWnd = (HWND) GetHWND();
   RECT rect;
-  GetClientRect(hWnd, &rect);
+  ::GetClientRect(hWnd, &rect);
 
   RECT rect2;
   GetWindowRect(hWnd, &rect2);
@@ -361,12 +359,14 @@ bool wxDialog::Show(bool show)
       // a message before the deletion.
       while (wxModalDialogs.Member(this) && m_modalShowing && GetMessage(&msg, NULL, 0, 0))
       {
-        if (m_acceleratorTable.Ok() &&
-          ::TranslateAccelerator((HWND) GetHWND(), (HACCEL) m_acceleratorTable.GetHACCEL(), &msg))
+        if ( m_acceleratorTable.Ok() &&
+             ::TranslateAccelerator((HWND)GetHWND(),
+                                     (HACCEL)m_acceleratorTable.GetHACCEL(),
+                                     &msg) )
         {
             // Have processed the message
         }
-        else if (!IsDialogMessage((HWND) GetHWND(), &msg))
+        else if ( !wxTheApp->ProcessMessage((WXMSG *)&msg) )
         {
           TranslateMessage(&msg);
           DispatchMessage(&msg);
@@ -560,7 +560,7 @@ void wxDialog::OnCancel(wxCommandEvent& event)
     else
     {
         SetReturnCode(wxID_CANCEL);
-    this->Show(FALSE);
+        this->Show(FALSE);
     }
 }
 
@@ -620,4 +620,4 @@ void wxDialog::OnSysColourChanged(wxSysColourChangedEvent& event)
   SetBackgroundColour(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_3DFACE));
   Refresh();
 #endif
-}
\ No newline at end of file
+}