/**
@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();
+ virtual ~wxObject();
/**
A virtual function that may be redefined by derived classes to allow dumping of
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.
/**
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.
/**
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().