X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/956dbab1eb04b32a006303df25fd05116eb5ef11..e7494fa9961c39cd14069ef8b12f5c059c7d3b35:/src/gtk/app.cpp diff --git a/src/gtk/app.cpp b/src/gtk/app.cpp index a81c4dd205..d262df2ecb 100644 --- a/src/gtk/app.cpp +++ b/src/gtk/app.cpp @@ -144,7 +144,7 @@ gint wxapp_idle_callback( gpointer WXUNUSED(data) ); bool wxYield() { bool has_idle = (wxTheApp->m_idleTag != 0); - + if (has_idle) { /* We need to temporarily remove idle callbacks or the loop will @@ -160,20 +160,20 @@ bool wxYield() might have been changed (it also will update other things set from OnUpdateUI() which is a nice (and desired) side effect) */ while (wxTheApp->ProcessIdle()) { } - + if (has_idle) { /* re-add idle handler */ wxTheApp->m_idleTag = gtk_idle_add( wxapp_idle_callback, (gpointer) NULL ); } - + return TRUE; } gint wxapp_idle_callback( gpointer WXUNUSED(data) ) { if (!wxTheApp) return TRUE; - + #if (GTK_MINOR_VERSION > 0) /* when getting called from GDK's idle handler we are no longer within GDK's grab on the GUI @@ -206,7 +206,7 @@ gint wxapp_idle_callback( gpointer WXUNUSED(data) ) void wxapp_install_idle_handler() { - wxASSERT_MSG( wxTheApp->m_idleTag == 0, _T("attempt to install idle handler twice") ); + wxASSERT_MSG( wxTheApp->m_idleTag == 0, wxT("attempt to install idle handler twice") ); /* this routine gets called by all event handlers indicating that the idle is over. */ @@ -224,14 +224,14 @@ static gint wxapp_wakeup_timerout_callback( gpointer WXUNUSED(data) ); void wxapp_install_thread_wakeup() { if (wxTheApp->m_wakeUpTimerTag) return; - + wxTheApp->m_wakeUpTimerTag = gtk_timeout_add( 100, wxapp_wakeup_timerout_callback, (gpointer) NULL ); } void wxapp_uninstall_thread_wakeup() { if (!wxTheApp->m_wakeUpTimerTag) return; - + gtk_timeout_remove( wxTheApp->m_wakeUpTimerTag ); wxTheApp->m_wakeUpTimerTag = 0; } @@ -397,7 +397,7 @@ bool wxApp::OnInitGui() index |= (g >> (5 - vis->green_prec)) << vis->green_shift; index |= (b >> (5 - vis->blue_prec)) << vis->blue_shift; #else - wxFAIL_MSG( _T("Unsupported graphics hardware") ); + wxFAIL_MSG( wxT("Unsupported graphics hardware") ); #endif } m_colorCube[ (r*1024) + (g*32) + b ] = index; @@ -414,14 +414,6 @@ bool wxApp::ProcessIdle() event.SetEventObject( this ); ProcessEvent( event ); - wxWindowList::Node* node = wxTopLevelWindows.GetFirst(); - while (node) - { - wxWindow* win = node->GetData(); - win->OnInternalIdle(); - node = node->GetNext(); - } - return event.MoreRequested(); } @@ -485,6 +477,8 @@ bool wxApp::SendIdleEvents( wxWindow* win ) win->ProcessEvent(event); + win->OnInternalIdle(); + if (event.MoreRequested()) needMore = TRUE; @@ -593,8 +587,6 @@ bool wxApp::Initialize() wxInitializeResourceSystem(); #endif - wxImage::InitStandardHandlers(); - wxModule::RegisterModules(); if (!wxModule::InitializeModules()) return FALSE; @@ -628,8 +620,6 @@ void wxApp::CleanUp() wxDeleteStockLists(); - wxImage::CleanUpHandlers(); - delete wxTheApp; wxTheApp = (wxApp*) NULL; @@ -650,7 +640,7 @@ void wxApp::CleanUp() #if (defined(__WXDEBUG__) && wxUSE_MEMORY_TRACING) || wxUSE_DEBUG_CONTEXT if (wxDebugContext::CountObjectsLeft() > 0) { - wxLogDebug(_T("There were memory leaks.\n")); + wxLogDebug(wxT("There were memory leaks.\n")); wxDebugContext::Dump(); wxDebugContext::PrintStatistics(); } @@ -675,7 +665,11 @@ int wxEntry( int argc, char *argv[] ) { gtk_set_locale(); +#if wxUSE_WCHAR_T if (!wxOKlibc()) wxConvCurrent = &wxConvLocal; +#else + if (!wxOKlibc()) wxConvCurrent = (wxMBConv*) NULL; +#endif gtk_init( &argc, &argv ); @@ -687,7 +681,7 @@ int wxEntry( int argc, char *argv[] ) if (!wxTheApp) { wxCHECK_MSG( wxApp::GetInitializerFunction(), -1, - _T("wxWindows error: No initializer - use IMPLEMENT_APP macro.\n") ); + wxT("wxWindows error: No initializer - use IMPLEMENT_APP macro.\n") ); wxAppInitializerFunction app_ini = wxApp::GetInitializerFunction(); @@ -696,7 +690,7 @@ int wxEntry( int argc, char *argv[] ) wxTheApp = (wxApp*) test_app; } - wxCHECK_MSG( wxTheApp, -1, _T("wxWindows error: no application object") ); + wxCHECK_MSG( wxTheApp, -1, wxT("wxWindows error: no application object") ); wxTheApp->argc = argc; #if wxUSE_UNICODE @@ -800,7 +794,7 @@ wxApp::GetStdIcon(int which) const return wxIcon(warning_xpm); default: - wxFAIL_MSG(_T("requested non existent standard icon")); + wxFAIL_MSG(wxT("requested non existent standard icon")); // still fall through case wxICON_HAND: