add wxUSE_WEAKREF (modified partially applied patch 1870445)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51614 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -2258,7 +2258,10 @@ protected:
|
||||
// wxEvtHandler: the base class for all objects handling wxWidgets events
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
class WXDLLIMPEXP_BASE wxEvtHandler : public wxObject, public wxTrackable
|
||||
class WXDLLIMPEXP_BASE wxEvtHandler : public wxObject
|
||||
#if wxUSE_WEAKREF
|
||||
, public wxTrackable
|
||||
#endif
|
||||
{
|
||||
public:
|
||||
wxEvtHandler();
|
||||
@@ -2358,7 +2361,9 @@ 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[];
|
||||
@@ -2425,13 +2430,16 @@ 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
|
||||
@@ -2480,6 +2488,7 @@ private:
|
||||
|
||||
DECLARE_NO_ASSIGN_CLASS(wxEventConnectionRef)
|
||||
};
|
||||
#endif // wxUSE_WEAKREF
|
||||
|
||||
// Post a message to the given eventhandler which will be processed during the
|
||||
// next event loop iteration
|
||||
|
Reference in New Issue
Block a user