X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3ed3a1c846d66410872a15f746c432311e306e42..2e18fe7139558b3cb592a04a4e4668319a966ebf:/docs/doxygen/overviews/refcount.h diff --git a/docs/doxygen/overviews/refcount.h b/docs/doxygen/overviews/refcount.h index 75454a80c3..90f392ff3b 100644 --- a/docs/doxygen/overviews/refcount.h +++ b/docs/doxygen/overviews/refcount.h @@ -3,7 +3,7 @@ // Purpose: topic overview // Author: wxWidgets team // RCS-ID: $Id$ -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// /** @@ -47,7 +47,7 @@ will return @true if two objects are identical and not only if they share the same data. Note that wxWidgets follows the STL philosophy: when a comparison -operator can not be implemented efficiently (like for e.g. wxImage's == +operator cannot be implemented efficiently (like for e.g. wxImage's == operator which would need to compare the entire image's data, pixel-by-pixel), it's not implemented at all. That's why not all reference counted classes provide comparison operators. @@ -78,6 +78,12 @@ operators and copy constructors since they are reference-counted: @li wxBrush @li wxCursor @li wxFont +@li wxGraphicsBrush +@li wxGraphicsContext +@li wxGraphicsFont +@li wxGraphicsMatrix +@li wxGraphicsPath +@li wxGraphicsPen @li wxIcon @li wxImage @li wxMetafile @@ -99,11 +105,12 @@ will result in an assert failure in debug builds. @section overview_refcount_object Making Your Own Reference Counted Class -Reference counting can be implemented easily using wxObject and wxObjectRefData -classes. Alternatively, you can also use the wxObjectDataPtr template. +Reference counting can be implemented easily using wxObject or using +the intermediate wxRefCounter class directly. +Alternatively, you can also use the wxObjectDataPtr template. -First, derive a new class from wxObjectRefData and put there the -memory-consuming data. +First, derive a new class from wxRefCounter (or wxObjectRefData when +using a wxObject derived class) and put the memory-consuming data in it. Then derive a new class from wxObject and implement there the public interface which will be seen by the user of your class. You'll probably want to add a