From: Robert Roebling Date: Mon, 2 Jun 2008 18:07:06 +0000 (+0000) Subject: Disable disabling wxWeakRef X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/ae8eee38f480032f4d1b756419f0d70b5f05f156?ds=inline Disable disabling wxWeakRef git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/configure.in b/configure.in index ced854cefc..cca944651e 100644 --- a/configure.in +++ b/configure.in @@ -719,7 +719,6 @@ WX_ARG_FEATURE(textbuf, [ --enable-textbuf use wxTextBuffer class] WX_ARG_FEATURE(textfile, [ --enable-textfile use wxTextFile class], wxUSE_TEXTFILE) WX_ARG_FEATURE(timer, [ --enable-timer use wxTimer class], wxUSE_TIMER) WX_ARG_FEATURE(variant, [ --enable-variant use wxVariant class], wxUSE_VARIANT) -WX_ARG_FEATURE(weakref, [ --enable-weakref make wxEvtHandler trackable with wxWeakRef<>], wxUSE_WEAKREF) WX_ARG_FEATURE(zipstream, [ --enable-zipstream use wxZip streams], wxUSE_ZIPSTREAM) dnl URL-related classes @@ -6099,10 +6098,6 @@ if test "$wxUSE_VARIANT" = "yes"; then AC_DEFINE(wxUSE_VARIANT) fi -if test "$wxUSE_WEAKREF" = "yes"; then - AC_DEFINE(wxUSE_WEAKREF) -fi - if test "$wxUSE_FS_INET" = "yes"; then AC_DEFINE(wxUSE_FS_INET) fi diff --git a/include/wx/chkconf.h b/include/wx/chkconf.h index 8d36d10b0c..9fb5dbbf08 100644 --- a/include/wx/chkconf.h +++ b/include/wx/chkconf.h @@ -299,14 +299,6 @@ # endif #endif /* wxUSE_VARIANT */ -#ifndef wxUSE_WEAKREF -# ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_WEAKREF must be defined." -# else -# define wxUSE_WEAKREF 0 -# endif -#endif /* wxUSE_WEAKREF */ - #ifndef wxUSE_XLOCALE # ifdef wxABORT_ON_CONFIG_ERROR # error "wxUSE_XLOCALE must be defined." diff --git a/include/wx/event.h b/include/wx/event.h index e9b0220996..6808935163 100644 --- a/include/wx/event.h +++ b/include/wx/event.h @@ -2260,9 +2260,7 @@ protected: // ---------------------------------------------------------------------------- class WXDLLIMPEXP_BASE wxEvtHandler : public wxObject -#if wxUSE_WEAKREF , public wxTrackable -#endif { public: wxEvtHandler(); @@ -2381,9 +2379,7 @@ public: // Avoid problems at exit by cleaning up static hash table gracefully void ClearEventHashTable() { GetEventHashTable().Clear(); } -#if wxUSE_WEAKREF void OnSinkDestroyed( wxEvtHandler *sink ); -#endif private: static const wxEventTableEntry sm_eventTableEntries[]; @@ -2450,16 +2446,13 @@ protected: virtual void DoSetClientData( void *data ); virtual void *DoGetClientData() const; -#if wxUSE_WEAKREF // Search tracker objects for event connection with this sink wxEventConnectionRef *FindRefInTrackerList(wxEvtHandler *eventSink); -#endif private: DECLARE_DYNAMIC_CLASS_NO_COPY(wxEvtHandler) }; -#if wxUSE_WEAKREF // ---------------------------------------------------------------------------- // wxEventConnectionRef represents all connections between two event handlers // and enables automatic disconnect when an event handler sink goes out of @@ -2508,7 +2501,6 @@ private: DECLARE_NO_ASSIGN_CLASS(wxEventConnectionRef) }; -#endif // wxUSE_WEAKREF // Post a message to the given event handler which will be processed during the // next event loop iteration. diff --git a/include/wx/mac/setup0.h b/include/wx/mac/setup0.h index 2c0e20dbf1..dba42e11ea 100644 --- a/include/wx/mac/setup0.h +++ b/include/wx/mac/setup0.h @@ -235,16 +235,6 @@ // Recommended setting: 0 unless you do plan to develop MT applications #define wxUSE_THREADS 1 -// Set wxUSE_WEAKREF to 1 t support use of weak references to common classes -// in wxWidgets (wxWeakRef). Set to 0 if your compiler has problems with -// the template-based implementation (Embedded Visual C++ 4 for ARM has a bug -// in this area, Visual C compiler options "/vmm /vmg" may help then). -// -// Default is 1 -// -// Recommended setting: 1 -#define wxUSE_WEAKREF 1 - // If enabled, compiles wxWidgets streams classes // // wx stream classes are used for image IO, process IO redirection, network diff --git a/include/wx/motif/setup0.h b/include/wx/motif/setup0.h index ccb4722a47..41bddf1435 100644 --- a/include/wx/motif/setup0.h +++ b/include/wx/motif/setup0.h @@ -234,16 +234,6 @@ // Recommended setting: 0 unless you do plan to develop MT applications #define wxUSE_THREADS 1 -// Set wxUSE_WEAKREF to 1 t support use of weak references to common classes -// in wxWidgets (wxWeakRef). Set to 0 if your compiler has problems with -// the template-based implementation (Embedded Visual C++ 4 for ARM has a bug -// in this area, Visual C compiler options "/vmm /vmg" may help then). -// -// Default is 1 -// -// Recommended setting: 1 -#define wxUSE_WEAKREF 1 - // If enabled, compiles wxWidgets streams classes // // wx stream classes are used for image IO, process IO redirection, network diff --git a/include/wx/msw/setup0.h b/include/wx/msw/setup0.h index 174fe9977d..2c78ac864c 100644 --- a/include/wx/msw/setup0.h +++ b/include/wx/msw/setup0.h @@ -234,16 +234,6 @@ // Recommended setting: 0 unless you do plan to develop MT applications #define wxUSE_THREADS 1 -// Set wxUSE_WEAKREF to 1 t support use of weak references to common classes -// in wxWidgets (wxWeakRef). Set to 0 if your compiler has problems with -// the template-based implementation (Embedded Visual C++ 4 for ARM has a bug -// in this area, Visual C compiler options "/vmm /vmg" may help then). -// -// Default is 1 -// -// Recommended setting: 1 -#define wxUSE_WEAKREF 1 - // If enabled, compiles wxWidgets streams classes // // wx stream classes are used for image IO, process IO redirection, network diff --git a/include/wx/msw/wince/setup.h b/include/wx/msw/wince/setup.h index e863f80917..a5b561330f 100644 --- a/include/wx/msw/wince/setup.h +++ b/include/wx/msw/wince/setup.h @@ -234,16 +234,6 @@ // Recommended setting: 0 unless you do plan to develop MT applications #define wxUSE_THREADS 1 -// Set wxUSE_WEAKREF to 1 t support use of weak references to common classes -// in wxWidgets (wxWeakRef). Set to 0 if your compiler has problems with -// the template-based implementation (Embedded Visual C++ 4 for ARM has a bug -// in this area, Visual C compiler options "/vmm /vmg" may help then). -// -// Default is 1 -// -// Recommended setting: 1 -#define wxUSE_WEAKREF 1 - // If enabled, compiles wxWidgets streams classes // // wx stream classes are used for image IO, process IO redirection, network diff --git a/include/wx/os2/setup0.h b/include/wx/os2/setup0.h index 823a4e8687..d9604eb552 100644 --- a/include/wx/os2/setup0.h +++ b/include/wx/os2/setup0.h @@ -234,16 +234,6 @@ // Recommended setting: 0 unless you do plan to develop MT applications #define wxUSE_THREADS 1 -// Set wxUSE_WEAKREF to 1 t support use of weak references to common classes -// in wxWidgets (wxWeakRef). Set to 0 if your compiler has problems with -// the template-based implementation (Embedded Visual C++ 4 for ARM has a bug -// in this area, Visual C compiler options "/vmm /vmg" may help then). -// -// Default is 1 -// -// Recommended setting: 1 -#define wxUSE_WEAKREF 1 - // If enabled, compiles wxWidgets streams classes // // wx stream classes are used for image IO, process IO redirection, network diff --git a/include/wx/palmos/setup0.h b/include/wx/palmos/setup0.h index c6873eb5b1..0433d57944 100644 --- a/include/wx/palmos/setup0.h +++ b/include/wx/palmos/setup0.h @@ -234,16 +234,6 @@ // Recommended setting: 0 unless you do plan to develop MT applications #define wxUSE_THREADS 1 -// Set wxUSE_WEAKREF to 1 t support use of weak references to common classes -// in wxWidgets (wxWeakRef). Set to 0 if your compiler has problems with -// the template-based implementation (Embedded Visual C++ 4 for ARM has a bug -// in this area, Visual C compiler options "/vmm /vmg" may help then). -// -// Default is 1 -// -// Recommended setting: 1 -#define wxUSE_WEAKREF 1 - // If enabled, compiles wxWidgets streams classes // // wx stream classes are used for image IO, process IO redirection, network diff --git a/include/wx/setup_gccxml.h b/include/wx/setup_gccxml.h index 2a96e01681..3c0e43d711 100644 --- a/include/wx/setup_gccxml.h +++ b/include/wx/setup_gccxml.h @@ -196,8 +196,6 @@ #define wxUSE_THREADS 1 -#define wxUSE_WEAKREF 1 - #define wxUSE_STREAMS 1 #if defined(__DMC__) || defined(__WATCOMC__) \ diff --git a/include/wx/setup_inc.h b/include/wx/setup_inc.h index 7cd3ef5538..882fe92e03 100644 --- a/include/wx/setup_inc.h +++ b/include/wx/setup_inc.h @@ -230,16 +230,6 @@ // Recommended setting: 0 unless you do plan to develop MT applications #define wxUSE_THREADS 1 -// Set wxUSE_WEAKREF to 1 t support use of weak references to common classes -// in wxWidgets (wxWeakRef). Set to 0 if your compiler has problems with -// the template-based implementation (Embedded Visual C++ 4 for ARM has a bug -// in this area, Visual C compiler options "/vmm /vmg" may help then). -// -// Default is 1 -// -// Recommended setting: 1 -#define wxUSE_WEAKREF 1 - // If enabled, compiles wxWidgets streams classes // // wx stream classes are used for image IO, process IO redirection, network diff --git a/include/wx/univ/setup0.h b/include/wx/univ/setup0.h index 8610adb8bf..c0759f852b 100644 --- a/include/wx/univ/setup0.h +++ b/include/wx/univ/setup0.h @@ -233,16 +233,6 @@ // Recommended setting: 0 unless you do plan to develop MT applications #define wxUSE_THREADS 1 -// Set wxUSE_WEAKREF to 1 t support use of weak references to common classes -// in wxWidgets (wxWeakRef). Set to 0 if your compiler has problems with -// the template-based implementation (Embedded Visual C++ 4 for ARM has a bug -// in this area, Visual C compiler options "/vmm /vmg" may help then). -// -// Default is 1 -// -// Recommended setting: 1 -#define wxUSE_WEAKREF 1 - // If enabled, compiles wxWidgets streams classes // // wx stream classes are used for image IO, process IO redirection, network diff --git a/setup.h.in b/setup.h.in index 162d88073b..6849432200 100644 --- a/setup.h.in +++ b/setup.h.in @@ -196,8 +196,6 @@ #define wxUSE_THREADS 0 -#define wxUSE_WEAKREF 0 - #define wxUSE_STREAMS 0 #if defined(__DMC__) || defined(__WATCOMC__) \ diff --git a/src/common/event.cpp b/src/common/event.cpp index d2bd83d29b..6c18e84338 100644 --- a/src/common/event.cpp +++ b/src/common/event.cpp @@ -1061,7 +1061,6 @@ wxEvtHandler::~wxEvtHandler() { wxDynamicEventTableEntry *entry = (wxDynamicEventTableEntry*)*it; -#if wxUSE_WEAKREF // Remove ourselves from sink destructor notifications // (this has usually been been done, in wxTrackable destructor) wxEvtHandler *eventSink = entry->m_eventSink; @@ -1075,7 +1074,6 @@ wxEvtHandler::~wxEvtHandler() delete evtConnRef; } } -#endif // wxUSE_WEAKREF if (entry->m_callbackUserData) delete entry->m_callbackUserData; @@ -1379,7 +1377,6 @@ void wxEvtHandler::Connect( int id, int lastId, // Insert at the front of the list so most recent additions are found first m_dynamicEvents->Insert( (wxObject*) entry ); -#if wxUSE_WEAKREF // Make sure we get to know when a sink is destroyed if ( eventSink && eventSink != this ) { @@ -1389,7 +1386,6 @@ void wxEvtHandler::Connect( int id, int lastId, else evtConnRef = new wxEventConnectionRef(this, eventSink); } -#endif // wxUSE_WEAKREF } bool wxEvtHandler::Disconnect( int id, int lastId, wxEventType eventType, @@ -1400,7 +1396,6 @@ bool wxEvtHandler::Disconnect( int id, int lastId, wxEventType eventType, if (!m_dynamicEvents) return false; -#if wxUSE_WEAKREF // Remove connection from tracker node (wxEventConnectionRef) if ( eventSink && eventSink != this ) { @@ -1408,7 +1403,6 @@ bool wxEvtHandler::Disconnect( int id, int lastId, wxEventType eventType, if ( evtConnRef ) evtConnRef->DecRef(); } -#endif // wxUSE_WEAKREF wxList::compatibility_iterator node = m_dynamicEvents->GetFirst(); while (node) @@ -1500,7 +1494,6 @@ void *wxEvtHandler::DoGetClientData() const return m_clientData; } -#if wxUSE_WEAKREF // A helper to find an wxEventConnectionRef object wxEventConnectionRef * wxEvtHandler::FindRefInTrackerList(wxEvtHandler *eventSink) @@ -1540,7 +1533,6 @@ void wxEvtHandler::OnSinkDestroyed( wxEvtHandler *sink ) node = node_nxt; } } -#endif // wxUSE_WEAKREF #endif // wxUSE_BASE