X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/bbcdf8bc7ca806d8278c7cb6d09d5590378b67d8..18a1516c4b2406f61202d5390fa8595e8ea5a196:/include/wx/msw/gdiobj.h diff --git a/include/wx/msw/gdiobj.h b/include/wx/msw/gdiobj.h index 1950d12ffe..3d3d1b9209 100644 --- a/include/wx/msw/gdiobj.h +++ b/include/wx/msw/gdiobj.h @@ -1,66 +1,64 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: gdiobj.h +// Name: wx/msw/gdiobj.h // Purpose: wxGDIObject class: base class for other GDI classes // Author: Julian Smart // Modified by: // Created: 01/02/97 // RCS-ID: $Id$ // Copyright: (c) Julian Smart -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_GDIOBJ_H_ #define _WX_GDIOBJ_H_ -#include "wx/object.h" - -#ifdef __GNUG__ -#pragma interface "gdiobj.h" +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) + #pragma interface "gdiobj.h" #endif -// wxGDIRefData is the reference-counted data part of a GDI object. -// It contains another counter, m_usageCount, which counts the number -// of times this object has been used; e.g. in SetFont, the count -// is incremented. This is different from reference counting, -// where only the constructors, destructors and (un)clone operations -// affect the reference count. -// THIS IS NOW BEING REMOVED AS REDUNDANT AND ERROR-PRONE +#include "wx/object.h" // base class -class WXDLLEXPORT wxGDIRefData: public wxObjectRefData { -public: - inline wxGDIRefData(void) - { - } +// ---------------------------------------------------------------------------- +// wxGDIRefData is the base class for wxXXXData structures which contain the +// real data for the GDI object and are shared among all wxWin objects sharing +// the same native GDI object +// ---------------------------------------------------------------------------- + +class WXDLLEXPORT wxGDIRefData : public wxObjectRefData +{ + // this class is intentionally left blank }; -#define M_GDIDATA ((wxGDIRefData *)m_refData) +// ---------------------------------------------------------------------------- +// wxGDIObject +// ---------------------------------------------------------------------------- -class WXDLLEXPORT wxGDIObject: public wxObject +class WXDLLEXPORT wxGDIObject : public wxObject { -DECLARE_DYNAMIC_CLASS(wxGDIObject) - public: - inline wxGDIObject(void) { m_visible = FALSE; }; - inline ~wxGDIObject(void) {}; +public: + wxGDIObject() { m_visible = false; }; - // Creates the resource - virtual bool RealizeResource(void) { return FALSE; }; + // Creates the resource + virtual bool RealizeResource() { return false; }; - // Frees the resource - virtual bool FreeResource(bool WXUNUSED(force) = FALSE) { return FALSE; }; + // Frees the resource + virtual bool FreeResource(bool WXUNUSED(force) = false) { return false; } - virtual bool IsFree(void) { return FALSE; }; + virtual bool IsFree() const { return false; } - inline bool IsNull(void) const { return (m_refData == 0); } + bool IsNull() const { return (m_refData == 0); } - // Returns handle. - virtual WXHANDLE GetResourceHandle(void) { return 0; } + // Returns handle. + virtual WXHANDLE GetResourceHandle() const { return 0; } - virtual bool GetVisible(void) { return m_visible; } - virtual void SetVisible(bool v) { m_visible = v; } + virtual bool GetVisible() { return m_visible; } + virtual void SetVisible(bool v) { m_visible = v; } protected: - bool m_visible; // Can a pointer to this object be safely taken? - // - only if created within FindOrCreate... + bool m_visible; // true only if we should delete this object ourselves + +private: + DECLARE_DYNAMIC_CLASS(wxGDIObject) }; #endif