X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e6d4038a8bf3ae178bc89cceaf60a0652749ea9b..23318a5358be74727fb62854f623da84a4545bcd:/src/common/appcmn.cpp diff --git a/src/common/appcmn.cpp b/src/common/appcmn.cpp index 421fff4699..41f3958d47 100644 --- a/src/common/appcmn.cpp +++ b/src/common/appcmn.cpp @@ -138,13 +138,6 @@ void wxAppBase::CleanUp() delete wxTheColourDatabase; wxTheColourDatabase = NULL; -#if wxUSE_THREADS - #if wxUSE_VALIDATORS - // If we don't do the following, we get an apparent memory leak. - ((wxEvtHandler&) wxDefaultValidator).ClearEventLocker(); - #endif // wxUSE_VALIDATORS -#endif // wxUSE_THREADS - wxAppConsole::CleanUp(); } @@ -189,8 +182,8 @@ wxLayoutDirection wxAppBase::GetLayoutDirection() const // GUI-specific command line options handling // ---------------------------------------------------------------------------- -#define OPTION_THEME _T("theme") -#define OPTION_MODE _T("mode") +#define OPTION_THEME "theme" +#define OPTION_MODE "mode" void wxAppBase::OnInitCmdLine(wxCmdLineParser& parser) { @@ -203,7 +196,7 @@ void wxAppBase::OnInitCmdLine(wxCmdLineParser& parser) #ifdef __WXUNIVERSAL__ { wxCMD_LINE_OPTION, - "", + NULL, OPTION_THEME, gettext_noop("specify the theme to use"), wxCMD_LINE_VAL_STRING, @@ -217,7 +210,7 @@ void wxAppBase::OnInitCmdLine(wxCmdLineParser& parser) // and not mgl/app.cpp { wxCMD_LINE_OPTION, - "", + NULL, OPTION_MODE, gettext_noop("specify display mode to use (e.g. 640x480-16)"), wxCMD_LINE_VAL_STRING, @@ -226,14 +219,7 @@ void wxAppBase::OnInitCmdLine(wxCmdLineParser& parser) #endif // __WXMGL__ // terminator - { - wxCMD_LINE_NONE, - "", - "", - "", - wxCMD_LINE_VAL_NONE, - 0x0 - } + wxCMD_LINE_DESC_END }; parser.SetDesc(cmdLineGUIDesc); @@ -407,7 +393,7 @@ bool wxAppBase::SendIdleEvents(wxWindow* win, wxIdleEvent& event) win->HasExtraStyle(wxWS_EX_PROCESS_IDLE) ) { event.SetEventObject(win); - win->GetEventHandler()->ProcessEvent(event); + win->HandleWindowEvent(event); if (event.MoreRequested()) needMore = true; @@ -433,9 +419,7 @@ bool wxAppBase::SendIdleEvents(wxWindow* win, wxIdleEvent& event) wxLog *wxGUIAppTraitsBase::CreateLogTarget() { -// DE: One day I'll remove this but right now the generic dialog used for this -// just doesn't work right at all on wxCocoa. -#if wxUSE_LOGGUI && !defined(__WXCOCOA__) +#if wxUSE_LOGGUI return new wxLogGui; #else // we must have something! @@ -451,7 +435,8 @@ wxMessageOutput *wxGUIAppTraitsBase::CreateMessageOutput() // is (according to common practice): // - console apps: to stderr (on any platform) // - GUI apps: stderr on Unix platforms (!) - // message box under Windows and others + // stderr if available and message box otherwise on others + // (currently stderr only Windows if app running from console) #ifdef __UNIX__ return new wxMessageOutputStderr; #else // !__UNIX__ @@ -459,7 +444,7 @@ wxMessageOutput *wxGUIAppTraitsBase::CreateMessageOutput() #ifdef __WXMOTIF__ return new wxMessageOutputLog; #elif wxUSE_MSGDLG - return new wxMessageOutputMessageBox; + return new wxMessageOutputBest(wxMSGOUT_PREFER_STDERR); #else return new wxMessageOutputStderr; #endif @@ -485,10 +470,15 @@ wxRendererNative *wxGUIAppTraitsBase::CreateRenderer() bool wxGUIAppTraitsBase::ShowAssertDialog(const wxString& msg) { -#if defined(__WXMSW__) || !wxUSE_MSGDLG // under MSW we prefer to use the base class version using ::MessageBox() // even if wxMessageBox() is available because it has less chances to // double fault our app than our wxMessageBox() + // + // under DFB the message dialog is not always functional right now + // + // and finally we can't use wxMessageBox() if it wasn't compiled in, of + // course +#if defined(__WXMSW__) || defined(__WXDFB__) || !wxUSE_MSGDLG return wxAppTraitsBase::ShowAssertDialog(msg); #else // wxUSE_MSGDLG wxString msgDlg = msg; @@ -552,34 +542,3 @@ void wxGUIAppTraitsBase::RemoveFromPendingDelete(wxObject *object) wxPendingDelete.DeleteObject(object); } -#if wxUSE_SOCKETS - -#if defined(__WINDOWS__) - #include "wx/msw/gsockmsw.h" -#elif defined(__UNIX__) || defined(__DARWIN__) || defined(__OS2__) - #include "wx/unix/gsockunx.h" -#elif defined(__WXMAC__) - #include - #define OTUNIXERRORS 1 - #include - #include - #include - - #include "wx/mac/gsockmac.h" -#else - #error "Must include correct GSocket header here" -#endif - -GSocketGUIFunctionsTable* wxGUIAppTraitsBase::GetSocketGUIFunctionsTable() -{ -#if defined(__WXMAC__) && !defined(__DARWIN__) - // NB: wxMac CFM does not have any GUI-specific functions in gsocket.c and - // so it doesn't need this table at all - return NULL; -#else // !__WXMAC__ || __DARWIN__ - static GSocketGUIFunctionsTableConcrete table; - return &table; -#endif // !__WXMAC__ || __DARWIN__ -} - -#endif