X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3d9431bf7e69b8f4752435b9750e13064a4a01cb..7b9da2077d0975db6c965a85c91d5aca671ab5e3:/src/motif/app.cpp diff --git a/src/motif/app.cpp b/src/motif/app.cpp index e3c8bb71a9..861f07e4dd 100644 --- a/src/motif/app.cpp +++ b/src/motif/app.cpp @@ -11,7 +11,6 @@ #ifdef __GNUG__ #pragma implementation "app.h" - #pragma implementation "appbase.h" #endif #include "wx/frame.h" @@ -53,11 +52,6 @@ extern char *wxBuffer; extern wxList wxPendingDelete; -#if wxUSE_THREADS -extern wxList *wxPendingEvents; -extern wxCriticalSection *wxPendingEventsLocker; -#endif // wxUSE_THREADS - wxApp *wxTheApp = NULL; wxHashTable *wxWidgetHashTable = NULL; @@ -81,7 +75,6 @@ bool wxApp::Initialize() // GL: I'm annoyed ... I don't know where to put this and I don't want to // create a module for that as it's part of the core. #if wxUSE_THREADS - wxPendingEvents = new wxList(); wxPendingEventsLocker = new wxCriticalSection(); #endif @@ -352,11 +345,17 @@ void wxApp::ProcessXEvent(WXEvent* _event) // accelerator. return; } +#if 1 + // It seemed before that this hack was redundant and + // key down events were being generated by wxCanvasInputEvent. + // But no longer - why ??? + // else if (CheckForKeyDown(_event)) { // We intercepted and processed the key down event return; } +#endif else { XtDispatchEvent(event); @@ -365,6 +364,8 @@ void wxApp::ProcessXEvent(WXEvent* _event) } else if (event->type == KeyRelease) { + // TODO: work out why we still need this ! -michael + // if (CheckForKeyUp(_event)) { // We intercepted and processed the key up event @@ -482,6 +483,13 @@ void wxApp::OnIdle(wxIdleEvent& event) inOnIdle = FALSE; } +void wxWakeUpIdle() +{ + // **** please implement me! **** + // Wake up the idle handler processor, even if it is in another thread... +} + + // Send idle event to all top-level windows bool wxApp::SendIdleEvents() { @@ -541,24 +549,6 @@ void wxApp::DeletePendingObjects() } } -#if wxUSE_THREADS -void wxApp::ProcessPendingEvents() -{ - wxNode *node = wxPendingEvents->First(); - wxCriticalSectionLocker locker(*wxPendingEventsLocker); - - while (node) - { - wxEvtHandler *handler = (wxEvtHandler *)node->Data(); - - handler->ProcessPendingEvents(); - - delete node; - node = wxPendingEvents->First(); - } -} -#endif // wxUSE_THREADS - // Create an application context bool wxApp::OnInitGui() { @@ -755,3 +745,12 @@ wxApp::GetStdIcon(int which) const return wxIcon(error_xpm); } } + +// ---------------------------------------------------------------------------- +// accessors for C modules +// ---------------------------------------------------------------------------- + +extern "C" XtAppContext wxGetAppContext() +{ + return (XtAppContext)wxTheApp->GetAppContext(); +}