* Changed "wxPendingEvents" to pointers (tested on GTK)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2031 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -80,8 +80,8 @@
|
|||||||
|
|
||||||
#if wxUSE_THREADS
|
#if wxUSE_THREADS
|
||||||
/* To put pending event handlers */
|
/* To put pending event handlers */
|
||||||
extern wxList wxPendingEvents;
|
extern wxList *wxPendingEvents;
|
||||||
extern wxCriticalSection wxPendingEventsLocker;
|
extern wxCriticalSection *wxPendingEventsLocker;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -342,9 +342,9 @@ bool wxEvtHandler::ProcessThreadEvent(wxEvent& event)
|
|||||||
|
|
||||||
m_pendingEvents->Append(event_main);
|
m_pendingEvents->Append(event_main);
|
||||||
|
|
||||||
wxPendingEventsLocker.Enter();
|
wxPendingEventsLocker->Enter();
|
||||||
wxPendingEvents.Append(this);
|
wxPendingEvents->Append(this);
|
||||||
wxPendingEventsLocker.Leave();
|
wxPendingEventsLocker->Leave();
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
@@ -47,8 +47,8 @@ wxAppInitializerFunction wxApp::m_appInitFn = (wxAppInitializerFunction) NULL;
|
|||||||
|
|
||||||
extern wxList wxPendingDelete;
|
extern wxList wxPendingDelete;
|
||||||
#if wxUSE_THREADS
|
#if wxUSE_THREADS
|
||||||
extern wxList wxPendingEvents;
|
extern wxList *wxPendingEvents;
|
||||||
extern wxCriticalSection wxPendingEventsLocker;
|
extern wxCriticalSection *wxPendingEventsLocker;
|
||||||
#endif
|
#endif
|
||||||
extern wxResourceCache *wxTheResourceCache;
|
extern wxResourceCache *wxTheResourceCache;
|
||||||
|
|
||||||
@@ -380,8 +380,8 @@ void wxApp::Dispatch()
|
|||||||
#if wxUSE_THREADS
|
#if wxUSE_THREADS
|
||||||
void wxApp::ProcessPendingEvents()
|
void wxApp::ProcessPendingEvents()
|
||||||
{
|
{
|
||||||
wxNode *node = wxPendingEvents.First();
|
wxNode *node = wxPendingEvents->First();
|
||||||
wxCriticalSectionLocker locker(wxPendingEventsLocker);
|
wxCriticalSectionLocker locker(*wxPendingEventsLocker);
|
||||||
|
|
||||||
while (node)
|
while (node)
|
||||||
{
|
{
|
||||||
@@ -391,7 +391,7 @@ void wxApp::ProcessPendingEvents()
|
|||||||
|
|
||||||
delete node;
|
delete node;
|
||||||
|
|
||||||
node = wxPendingEvents.First();
|
node = wxPendingEvents->First();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@@ -435,6 +435,13 @@ bool wxApp::Initialize()
|
|||||||
|
|
||||||
wxSystemSettings::Init();
|
wxSystemSettings::Init();
|
||||||
|
|
||||||
|
// 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
|
||||||
|
|
||||||
/*
|
/*
|
||||||
wxTheFontNameDirectory = new wxFontNameDirectory;
|
wxTheFontNameDirectory = new wxFontNameDirectory;
|
||||||
wxTheFontNameDirectory->Initialize();
|
wxTheFontNameDirectory->Initialize();
|
||||||
@@ -495,6 +502,13 @@ void wxApp::CleanUp()
|
|||||||
delete wxTheApp;
|
delete wxTheApp;
|
||||||
wxTheApp = (wxApp*) NULL;
|
wxTheApp = (wxApp*) NULL;
|
||||||
|
|
||||||
|
// 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
|
||||||
|
delete wxPendingEvents;
|
||||||
|
delete wxPendingEventsLocker;
|
||||||
|
#endif
|
||||||
|
|
||||||
wxSystemSettings::Done();
|
wxSystemSettings::Done();
|
||||||
|
|
||||||
delete[] wxBuffer;
|
delete[] wxBuffer;
|
||||||
|
@@ -40,8 +40,8 @@ wxList wxPendingDelete;
|
|||||||
|
|
||||||
#if wxUSE_THREADS
|
#if wxUSE_THREADS
|
||||||
/* List of events pending processing */
|
/* List of events pending processing */
|
||||||
wxList wxPendingEvents;
|
wxList *wxPendingEvents = NULL;
|
||||||
wxCriticalSection wxPendingEventsLocker;
|
wxCriticalSection *wxPendingEventsLocker = NULL;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Current cursor, in order to hang on to
|
/* Current cursor, in order to hang on to
|
||||||
|
@@ -47,8 +47,8 @@ wxAppInitializerFunction wxApp::m_appInitFn = (wxAppInitializerFunction) NULL;
|
|||||||
|
|
||||||
extern wxList wxPendingDelete;
|
extern wxList wxPendingDelete;
|
||||||
#if wxUSE_THREADS
|
#if wxUSE_THREADS
|
||||||
extern wxList wxPendingEvents;
|
extern wxList *wxPendingEvents;
|
||||||
extern wxCriticalSection wxPendingEventsLocker;
|
extern wxCriticalSection *wxPendingEventsLocker;
|
||||||
#endif
|
#endif
|
||||||
extern wxResourceCache *wxTheResourceCache;
|
extern wxResourceCache *wxTheResourceCache;
|
||||||
|
|
||||||
@@ -380,8 +380,8 @@ void wxApp::Dispatch()
|
|||||||
#if wxUSE_THREADS
|
#if wxUSE_THREADS
|
||||||
void wxApp::ProcessPendingEvents()
|
void wxApp::ProcessPendingEvents()
|
||||||
{
|
{
|
||||||
wxNode *node = wxPendingEvents.First();
|
wxNode *node = wxPendingEvents->First();
|
||||||
wxCriticalSectionLocker locker(wxPendingEventsLocker);
|
wxCriticalSectionLocker locker(*wxPendingEventsLocker);
|
||||||
|
|
||||||
while (node)
|
while (node)
|
||||||
{
|
{
|
||||||
@@ -391,7 +391,7 @@ void wxApp::ProcessPendingEvents()
|
|||||||
|
|
||||||
delete node;
|
delete node;
|
||||||
|
|
||||||
node = wxPendingEvents.First();
|
node = wxPendingEvents->First();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@@ -435,6 +435,13 @@ bool wxApp::Initialize()
|
|||||||
|
|
||||||
wxSystemSettings::Init();
|
wxSystemSettings::Init();
|
||||||
|
|
||||||
|
// 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
|
||||||
|
|
||||||
/*
|
/*
|
||||||
wxTheFontNameDirectory = new wxFontNameDirectory;
|
wxTheFontNameDirectory = new wxFontNameDirectory;
|
||||||
wxTheFontNameDirectory->Initialize();
|
wxTheFontNameDirectory->Initialize();
|
||||||
@@ -495,6 +502,13 @@ void wxApp::CleanUp()
|
|||||||
delete wxTheApp;
|
delete wxTheApp;
|
||||||
wxTheApp = (wxApp*) NULL;
|
wxTheApp = (wxApp*) NULL;
|
||||||
|
|
||||||
|
// 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
|
||||||
|
delete wxPendingEvents;
|
||||||
|
delete wxPendingEventsLocker;
|
||||||
|
#endif
|
||||||
|
|
||||||
wxSystemSettings::Done();
|
wxSystemSettings::Done();
|
||||||
|
|
||||||
delete[] wxBuffer;
|
delete[] wxBuffer;
|
||||||
|
@@ -40,8 +40,8 @@ wxList wxPendingDelete;
|
|||||||
|
|
||||||
#if wxUSE_THREADS
|
#if wxUSE_THREADS
|
||||||
/* List of events pending processing */
|
/* List of events pending processing */
|
||||||
wxList wxPendingEvents;
|
wxList *wxPendingEvents = NULL;
|
||||||
wxCriticalSection wxPendingEventsLocker;
|
wxCriticalSection *wxPendingEventsLocker = NULL;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Current cursor, in order to hang on to
|
/* Current cursor, in order to hang on to
|
||||||
|
@@ -51,8 +51,8 @@ extern char *wxBuffer;
|
|||||||
extern wxList wxPendingDelete;
|
extern wxList wxPendingDelete;
|
||||||
|
|
||||||
#if wxUSE_THREADS
|
#if wxUSE_THREADS
|
||||||
extern wxList wxPendingEvents;
|
extern wxList *wxPendingEvents;
|
||||||
extern wxCriticalSection wxPendingEventsLocker;
|
extern wxCriticalSection *wxPendingEventsLocker;
|
||||||
#endif // wxUSE_THREADS
|
#endif // wxUSE_THREADS
|
||||||
|
|
||||||
wxApp *wxTheApp = NULL;
|
wxApp *wxTheApp = NULL;
|
||||||
@@ -75,6 +75,13 @@ bool wxApp::Initialize()
|
|||||||
|
|
||||||
wxClassInfo::InitializeClasses();
|
wxClassInfo::InitializeClasses();
|
||||||
|
|
||||||
|
// 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
|
||||||
|
|
||||||
wxTheColourDatabase = new wxColourDatabase(wxKEY_STRING);
|
wxTheColourDatabase = new wxColourDatabase(wxKEY_STRING);
|
||||||
wxTheColourDatabase->Initialize();
|
wxTheColourDatabase->Initialize();
|
||||||
|
|
||||||
@@ -152,6 +159,13 @@ void wxApp::CleanUp()
|
|||||||
delete wxTheApp;
|
delete wxTheApp;
|
||||||
wxTheApp = NULL;
|
wxTheApp = NULL;
|
||||||
|
|
||||||
|
// 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
|
||||||
|
delete wxPendingEvents;
|
||||||
|
delete wxPendingEventsLocker;
|
||||||
|
#endif
|
||||||
|
|
||||||
#if (defined(__WXDEBUG__) && wxUSE_MEMORY_TRACING) || wxUSE_DEBUG_CONTEXT
|
#if (defined(__WXDEBUG__) && wxUSE_MEMORY_TRACING) || wxUSE_DEBUG_CONTEXT
|
||||||
// At this point we want to check if there are any memory
|
// At this point we want to check if there are any memory
|
||||||
// blocks that aren't part of the wxDebugContext itself,
|
// blocks that aren't part of the wxDebugContext itself,
|
||||||
@@ -496,8 +510,8 @@ void wxApp::DeletePendingObjects()
|
|||||||
#if wxUSE_THREADS
|
#if wxUSE_THREADS
|
||||||
void wxApp::ProcessPendingEvents()
|
void wxApp::ProcessPendingEvents()
|
||||||
{
|
{
|
||||||
wxNode *node = wxPendingEvents.First();
|
wxNode *node = wxPendingEvents->First();
|
||||||
wxCriticalSectionLocker locker(wxPendingEventsLocker);
|
wxCriticalSectionLocker locker(*wxPendingEventsLocker);
|
||||||
|
|
||||||
while (node)
|
while (node)
|
||||||
{
|
{
|
||||||
@@ -506,7 +520,7 @@ void wxApp::ProcessPendingEvents()
|
|||||||
handler->ProcessPendingEvents();
|
handler->ProcessPendingEvents();
|
||||||
|
|
||||||
delete node;
|
delete node;
|
||||||
node = wxPendingEvents.First();
|
node = wxPendingEvents->First();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif // wxUSE_THREADS
|
#endif // wxUSE_THREADS
|
||||||
|
@@ -29,8 +29,8 @@ wxList wxPendingDelete;
|
|||||||
|
|
||||||
#if wxUSE_THREADS
|
#if wxUSE_THREADS
|
||||||
// List of events pending propagation
|
// List of events pending propagation
|
||||||
wxList wxPendingEvents;
|
wxList *wxPendingEvents = NULL;
|
||||||
wxCriticalSection wxPendingEventsLocker;
|
wxCriticalSection *wxPendingEventsLocker = NULL;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
int wxPageNumber;
|
int wxPageNumber;
|
||||||
|
@@ -93,8 +93,8 @@ extern char *wxOsVersion;
|
|||||||
extern wxList *wxWinHandleList;
|
extern wxList *wxWinHandleList;
|
||||||
extern wxList WXDLLEXPORT wxPendingDelete;
|
extern wxList WXDLLEXPORT wxPendingDelete;
|
||||||
#if wxUSE_THREADS
|
#if wxUSE_THREADS
|
||||||
extern wxList wxPendingEvents;
|
extern wxList *wxPendingEvents;
|
||||||
extern wxCriticalSection wxPendingEventsLocker;
|
extern wxCriticalSection *wxPendingEventsLocker;
|
||||||
#endif
|
#endif
|
||||||
extern void wxSetKeyboardHook(bool doIt);
|
extern void wxSetKeyboardHook(bool doIt);
|
||||||
extern wxCursor *g_globalCursor;
|
extern wxCursor *g_globalCursor;
|
||||||
@@ -169,6 +169,12 @@ bool wxApp::Initialize()
|
|||||||
wxGetResource("wxWindows", "OsVersion", &wxOsVersion);
|
wxGetResource("wxWindows", "OsVersion", &wxOsVersion);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
// 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
|
||||||
|
|
||||||
wxTheColourDatabase = new wxColourDatabase(wxKEY_STRING);
|
wxTheColourDatabase = new wxColourDatabase(wxKEY_STRING);
|
||||||
wxTheColourDatabase->Initialize();
|
wxTheColourDatabase->Initialize();
|
||||||
|
|
||||||
@@ -551,6 +557,13 @@ void wxApp::CleanUp()
|
|||||||
if (wxWinHandleList)
|
if (wxWinHandleList)
|
||||||
delete wxWinHandleList ;
|
delete wxWinHandleList ;
|
||||||
|
|
||||||
|
// 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
|
||||||
|
delete wxPendingEvents;
|
||||||
|
delete wxPendingEventsLocker;
|
||||||
|
#endif
|
||||||
|
|
||||||
wxClassInfo::CleanUpClasses();
|
wxClassInfo::CleanUpClasses();
|
||||||
|
|
||||||
delete wxTheApp;
|
delete wxTheApp;
|
||||||
@@ -922,8 +935,8 @@ bool wxApp::ProcessIdle()
|
|||||||
#if wxUSE_THREADS
|
#if wxUSE_THREADS
|
||||||
void wxApp::ProcessPendingEvents()
|
void wxApp::ProcessPendingEvents()
|
||||||
{
|
{
|
||||||
wxNode *node = wxPendingEvents.First();
|
wxNode *node = wxPendingEvents->First();
|
||||||
wxCriticalSectionLocker locker(wxPendingEventsLocker);
|
wxCriticalSectionLocker locker(*wxPendingEventsLocker);
|
||||||
|
|
||||||
while (node)
|
while (node)
|
||||||
{
|
{
|
||||||
@@ -932,7 +945,7 @@ void wxApp::ProcessPendingEvents()
|
|||||||
handler->ProcessPendingEvents();
|
handler->ProcessPendingEvents();
|
||||||
|
|
||||||
delete node;
|
delete node;
|
||||||
node = wxPendingEvents.First();
|
node = wxPendingEvents->First();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@@ -39,8 +39,8 @@ wxList WXDLLEXPORT wxPendingDelete;
|
|||||||
|
|
||||||
// List of events pending processing
|
// List of events pending processing
|
||||||
#if wxUSE_THREADS
|
#if wxUSE_THREADS
|
||||||
wxList wxPendingEvents;
|
wxList *wxPendingEvents = NULL;
|
||||||
wxCriticalSection wxPendingEventsLocker;
|
wxCriticalSection *wxPendingEventsLocker = NULL;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Current cursor, in order to hang on to
|
// Current cursor, in order to hang on to
|
||||||
|
Reference in New Issue
Block a user