From 6d37c1b7733b6d80682033b839c62517d237eb03 Mon Sep 17 00:00:00 2001 From: Robert Roebling Date: Fri, 12 Jun 2009 20:16:07 +0000 Subject: [PATCH] Rename wxObjectDataRef wxRefCounter, use it in wxVariant git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61034 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/object.h | 20 ++++++++++++-------- include/wx/variant.h | 2 +- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/include/wx/object.h b/include/wx/object.h index 9ef6b83b33..3b57f5425f 100644 --- a/include/wx/object.h +++ b/include/wx/object.h @@ -69,7 +69,6 @@ class WXDLLIMPEXP_FWD_BASE wxClassInfo; class WXDLLIMPEXP_FWD_BASE wxHashTable; class WXDLLIMPEXP_FWD_BASE wxObject; class WXDLLIMPEXP_FWD_BASE wxPluginLibrary; -class WXDLLIMPEXP_FWD_BASE wxObjectRefData; class WXDLLIMPEXP_FWD_BASE wxHashTable_Node; // ---------------------------------------------------------------------------- @@ -399,13 +398,13 @@ inline T *wxCheckCast(const void *ptr, T * = NULL) #endif // wxUSE_MEMORY_TRACING // ---------------------------------------------------------------------------- -// wxObjectRefData: ref counted data meant to be stored in wxObject +// wxRefCounter: ref counted data "manager" // ---------------------------------------------------------------------------- -class WXDLLIMPEXP_BASE wxObjectRefData +class WXDLLIMPEXP_BASE wxRefCounter { public: - wxObjectRefData() { m_count = 1; } + wxRefCounter() { m_count = 1; } int GetRefCount() const { return m_count; } @@ -415,15 +414,20 @@ public: protected: // this object should never be destroyed directly but only as a // result of a DecRef() call: - virtual ~wxObjectRefData() { } + virtual ~wxRefCounter() { } private: // our refcount: int m_count; - - friend class WXDLLIMPEXP_FWD_BASE wxObject; }; +// ---------------------------------------------------------------------------- +// wxObjectRefData: ref counted data meant to be stored in wxObject +// ---------------------------------------------------------------------------- + +typedef wxRefCounter wxObjectRefData; + + // ---------------------------------------------------------------------------- // wxObjectDataPtr: helper class to avoid memleaks because of missing calls // to wxObjectRefData::DecRef @@ -518,7 +522,7 @@ public: { m_refData = other.m_refData; if (m_refData) - m_refData->m_count++; + m_refData->IncRef(); } wxObject& operator=(const wxObject& other) diff --git a/include/wx/variant.h b/include/wx/variant.h index d082a4f42b..ded99175d4 100644 --- a/include/wx/variant.h +++ b/include/wx/variant.h @@ -55,7 +55,7 @@ * overloading wxVariant with unnecessary functionality. */ -class WXDLLIMPEXP_BASE wxVariantData : public wxObjectRefData +class WXDLLIMPEXP_BASE wxVariantData : public wxRefCounter { friend class wxVariant; public: -- 2.50.0