/**
@class wxObjectRefData
- @wxheader{object.h}
This class is used to store reference-counted data.
It's declared @c protected so that wxObjectRefData instances
will never be destroyed directly but only as result of a DecRef() call.
*/
- ~wxObjectRefData();
+ virtual ~wxObjectRefData();
public:
/**
/**
@class wxObject
- @wxheader{object.h}
This is the root class of many of the wxWidgets classes.
Performs dereferencing, for those objects that use reference counting.
*/
- wxObject();
-
- /**
- A virtual function that may be redefined by derived classes to allow dumping of
- memory states.
-
- This function is only defined in debug build and exists only if @c __WXDEBUG__
- is defined.
-
- @param stream
- Stream on which to output dump information.
-
- @remarks Currently wxWidgets does not define Dump() for derived classes,
- but programmers may wish to use it for their own applications.
- Be sure to call the Dump member of the class's base class to allow all
- information to be dumped.
- The implementation of this function in wxObject just writes
- the class name of the object.
- */
- void Dump(ostream& stream);
+ virtual ~wxObject();
/**
This virtual function is redefined for every class that requires run-time
type information, when using the ::DECLARE_CLASS macro (or similar).
*/
- wxClassInfo* GetClassInfo();
+ virtual wxClassInfo* GetClassInfo() const;
/**
Returns the wxObject::m_refData pointer, i.e. the data referenced by this object.
@return @true if the class represented by info is the same class as this
one or is derived from it.
*/
- bool IsKindOf(wxClassInfo* info);
+ bool IsKindOf(const wxClassInfo* info) const;
/**
Returns @true if this object has the same data pointer as @a obj.
@see @ref overview_refcount
*/
- bool IsSameAs(const wxObject& obj);
+ bool IsSameAs(const wxObject& obj) const;
/**
Makes this object refer to the data in @a clone.
/**
@class wxClassInfo
- @wxheader{object.h}
This class stores meta-information about classes.
/**
Finds the wxClassInfo object for a class with the given @a name.
*/
- static wxClassInfo* FindClass(wxChar* name);
+ static wxClassInfo* FindClass(const wxString& className);
/**
Returns the name of the first base class (@NULL if none).
*/
- wxChar* GetBaseClassName1() const;
+ const wxChar* GetBaseClassName1() const;
/**
Returns the name of the second base class (@NULL if none).
*/
- wxChar* GetBaseClassName2() const;
+ const wxChar* GetBaseClassName2() const;
/**
Returns the string form of the class name.
*/
- wxChar* GetClassName() const;
+ const wxChar* GetClassName() const;
/**
Returns the size of the class.
*/
int GetSize() const;
- /**
- Initializes pointers in the wxClassInfo objects for fast execution of IsKindOf().
- Called in base wxWidgets library initialization.
- */
- static void InitializeClasses();
-
/**
Returns @true if this class info can create objects of the associated class.
*/
/**
Returns @true if this class is a kind of (inherits from) the given class.
*/
- bool IsKindOf(wxClassInfo* info);
+ bool IsKindOf(const wxClassInfo* info) const;
};
/**
- @wxheader{object.h}
This is helper template class primarily written to avoid memory leaks because of
missing calls to wxObjectRefData::DecRef().
// Global functions/macros
// ============================================================================
-/** @ingroup group_funcmacro_rtti */
+/** @addtogroup group_funcmacro_rtti */
//@{
/**
//@}
-/** @ingroup group_funcmacro_debug */
+/** @addtogroup group_funcmacro_debug */
//@{
/**