From: Vadim Zeitlin Date: Fri, 14 Jun 2002 22:26:32 +0000 (+0000) Subject: compilation fixes for wxUniv (moved wxDlgProc back to toplevel.cpp) X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/12447831a8ebc506f730cafac6f6ef13f243b7d2 compilation fixes for wxUniv (moved wxDlgProc back to toplevel.cpp) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15842 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/msw/dialog.cpp b/src/msw/dialog.cpp index 170d28ddab..f37849b3ee 100644 --- a/src/msw/dialog.cpp +++ b/src/msw/dialog.cpp @@ -398,40 +398,6 @@ void wxDialog::OnSysColourChanged(wxSysColourChangedEvent& WXUNUSED(event)) // dialog window proc // --------------------------------------------------------------------------- -// the DialogProc for all wxWindows dialogs -LONG APIENTRY _EXPORT -wxDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) -{ - switch ( message ) - { -#if 0 - case WM_ACTIVATE: - case WM_SHOWWINDOW: - // DefDlgProc() has a bug which makes it enter an infinite loop - // when a dialog containing a notebook whose children have - // WS_EX_CONTROLPARENT (automatically set for the windows with - // wxTAB_TRAVERSAL style as it's needed to get it right) is - // deactivated or hidden -- simply remove this code to see this - // happen in the notebook sample - // - // The only way I found to prevent this from happening is to never - // let it process these messages at all. - if ( !wParam ) - return TRUE; -#endif - - case WM_INITDIALOG: - // for this message, returning TRUE tells system to set focus to - // the first control in the dialog box, but as we set the focus - // ourselves, we return FALSE from here as well, so fall through - - default: - // for all the other ones, FALSE means that we didn't process the - // message - return FALSE; - } -} - long wxDialog::MSWWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam) { long rc = 0; diff --git a/src/msw/toplevel.cpp b/src/msw/toplevel.cpp index fd59bcdb2d..d737b9a679 100644 --- a/src/msw/toplevel.cpp +++ b/src/msw/toplevel.cpp @@ -61,7 +61,8 @@ static inline bool IsZoomed(HWND WXUNUSED(hwnd)) { return FALSE; } #endif // __WXMICROWIN__ -// this is defined in dialog.cpp +// NB: wxDlgProc must be defined here and not in dialog.cpp because the latter +// is not included by wxUniv build which does need wxDlgProc LONG APIENTRY _EXPORT wxDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam); @@ -783,3 +784,21 @@ void wxTopLevelWindowMSW::OnActivate(wxActivateEvent& event) } } +// the DialogProc for all wxWindows dialogs +LONG APIENTRY _EXPORT +wxDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) +{ + switch ( message ) + { + case WM_INITDIALOG: + // for this message, returning TRUE tells system to set focus to + // the first control in the dialog box, but as we set the focus + // ourselves, we return FALSE from here as well, so fall through + + default: + // for all the other ones, FALSE means that we didn't process the + // message + return FALSE; + } +} +