#endif // wxUSE_INTL
#if wxUSE_THREADS
- wxPendingEventsLocker = new wxCriticalSection;
+ wxHandlersWithPendingEventsLocker = new wxCriticalSection;
#endif
#ifndef __WXPALMOS__
m_mainLoop = NULL;
}
- delete wxPendingEvents;
- wxPendingEvents = NULL;
+ delete wxHandlersWithPendingEvents;
+ wxHandlersWithPendingEvents = NULL;
#if wxUSE_THREADS
- delete wxPendingEventsLocker;
- wxPendingEventsLocker = NULL;
+ delete wxHandlersWithPendingEventsLocker;
+ wxHandlersWithPendingEventsLocker = NULL;
#endif // wxUSE_THREADS
}
bool wxAppConsoleBase::HasPendingEvents() const
{
- wxENTER_CRIT_SECT( *wxPendingEventsLocker );
+ wxENTER_CRIT_SECT( *wxHandlersWithPendingEventsLocker );
- bool has = wxPendingEvents && !wxPendingEvents->IsEmpty();
+ bool has = wxHandlersWithPendingEvents && !wxHandlersWithPendingEvents->IsEmpty();
- wxLEAVE_CRIT_SECT( *wxPendingEventsLocker );
+ wxLEAVE_CRIT_SECT( *wxHandlersWithPendingEventsLocker );
return has;
}
void wxAppConsoleBase::ProcessPendingEvents()
{
#if wxUSE_THREADS
- if ( !wxPendingEventsLocker )
+ if ( !wxHandlersWithPendingEventsLocker )
return;
#endif
- wxENTER_CRIT_SECT( *wxPendingEventsLocker );
+ wxENTER_CRIT_SECT( *wxHandlersWithPendingEventsLocker );
- if (wxPendingEvents)
+ if (wxHandlersWithPendingEvents)
{
// iterate until the list becomes empty: the handlers remove themselves
// from it when they don't have any more pending events
- wxList::compatibility_iterator node = wxPendingEvents->GetFirst();
+ wxList::compatibility_iterator node = wxHandlersWithPendingEvents->GetFirst();
while (node)
{
// In ProcessPendingEvents(), new handlers might be add
// and we can safely leave the critical section here.
- wxLEAVE_CRIT_SECT( *wxPendingEventsLocker );
+ wxLEAVE_CRIT_SECT( *wxHandlersWithPendingEventsLocker );
wxEvtHandler *handler = (wxEvtHandler *)node->GetData();
handler->ProcessPendingEvents();
- wxENTER_CRIT_SECT( *wxPendingEventsLocker );
+ wxENTER_CRIT_SECT( *wxHandlersWithPendingEventsLocker );
// restart as the iterators could have been invalidated
- node = wxPendingEvents->GetFirst();
+ node = wxHandlersWithPendingEvents->GetFirst();
}
}
- wxLEAVE_CRIT_SECT( *wxPendingEventsLocker );
+ wxLEAVE_CRIT_SECT( *wxHandlersWithPendingEventsLocker );
}
void wxAppConsoleBase::WakeUpIdle()
// List containing event handlers with pending events (each handler can occur
// at most once here)
-wxList *wxPendingEvents = NULL;
+wxList *wxHandlersWithPendingEvents = NULL;
#if wxUSE_THREADS
- // protects wxPendingEvents list
- wxCriticalSection *wxPendingEventsLocker = NULL;
+ // protects wxHandlersWithPendingEvents list
+ wxCriticalSection *wxHandlersWithPendingEventsLocker = NULL;
#endif
// common event types are defined here, other event types are defined by the
m_pendingEvents->DeleteContents(true);
delete m_pendingEvents;
- // Remove us from wxPendingEvents if necessary.
- if ( wxPendingEvents )
+ // Remove us from wxHandlersWithPendingEvents if necessary.
+ if ( wxHandlersWithPendingEvents )
{
#if wxUSE_THREADS
- if (wxPendingEventsLocker)
- wxENTER_CRIT_SECT(*wxPendingEventsLocker);
+ if (wxHandlersWithPendingEventsLocker)
+ wxENTER_CRIT_SECT(*wxHandlersWithPendingEventsLocker);
#endif
- if ( wxPendingEvents->DeleteObject(this) )
+ if ( wxHandlersWithPendingEvents->DeleteObject(this) )
{
// check that we were present only once in the list
- wxASSERT_MSG( !wxPendingEvents->Find(this),
- "Handler occurs twice in wxPendingEvents list" );
+ wxASSERT_MSG( !wxHandlersWithPendingEvents->Find(this),
+ "Handler occurs twice in wxHandlersWithPendingEvents list" );
}
//else: we weren't in this list at all, it's ok
#if wxUSE_THREADS
- if (wxPendingEventsLocker)
- wxLEAVE_CRIT_SECT(*wxPendingEventsLocker);
+ if (wxHandlersWithPendingEventsLocker)
+ wxLEAVE_CRIT_SECT(*wxHandlersWithPendingEventsLocker);
#endif
}
// 2) Add this event handler to list of event handlers that
// have pending events.
- wxENTER_CRIT_SECT(*wxPendingEventsLocker);
+ wxENTER_CRIT_SECT(*wxHandlersWithPendingEventsLocker);
- if ( !wxPendingEvents )
- wxPendingEvents = new wxList;
- if ( !wxPendingEvents->Find(this) )
- wxPendingEvents->Append(this);
+ if ( !wxHandlersWithPendingEvents )
+ wxHandlersWithPendingEvents = new wxList;
+ if ( !wxHandlersWithPendingEvents->Find(this) )
+ wxHandlersWithPendingEvents->Append(this);
- wxLEAVE_CRIT_SECT(*wxPendingEventsLocker);
+ wxLEAVE_CRIT_SECT(*wxHandlersWithPendingEventsLocker);
// only release m_pendingEventsLock now because otherwise there is a race
// condition as described in the ticket #9093: we could process the event
// just added to m_pendingEvents in our ProcessPendingEvents() below before
- // we had time to append this pointer to wxPendingEvents list; thus
+ // we had time to append this pointer to wxHandlersWithPendingEvents list; thus
// breaking the invariant that a handler should be in the list iff it has
// any pending events to process
wxLEAVE_CRIT_SECT( m_pendingEventsLock );
if ( m_pendingEvents->IsEmpty() )
{
#if wxUSE_THREADS
- if (wxPendingEventsLocker)
- wxENTER_CRIT_SECT(*wxPendingEventsLocker);
+ if (wxHandlersWithPendingEventsLocker)
+ wxENTER_CRIT_SECT(*wxHandlersWithPendingEventsLocker);
#endif
- wxPendingEvents->DeleteObject(this);
+ wxHandlersWithPendingEvents->DeleteObject(this);
#if wxUSE_THREADS
- if (wxPendingEventsLocker)
- wxLEAVE_CRIT_SECT(*wxPendingEventsLocker);
+ if (wxHandlersWithPendingEventsLocker)
+ wxLEAVE_CRIT_SECT(*wxHandlersWithPendingEventsLocker);
#endif
}