]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/gdiobj.h
Back to 'unsigned int' after reasearch of 'size_t' problems.
[wxWidgets.git] / include / wx / msw / gdiobj.h
index 31c3f4ad978ccfa0c0114a585d0ed050133a7352..4be2edb8be8dc379b57e256a73d71bdebe1cd0d6 100644 (file)
@@ -1,67 +1,61 @@
 /////////////////////////////////////////////////////////////////////////////
-// 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 and Markus Holzem
-// Licence:    wxWindows license
+// Copyright:   (c) Julian Smart
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-#ifndef __GDIOBJH__
-#define __GDIOBJH__
+#ifndef _WX_GDIOBJ_H_
+#define _WX_GDIOBJ_H_
 
-#include "wx/object.h"
+#include "wx/object.h"  // base class
 
-#ifdef __GNUG__
-#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
+// ----------------------------------------------------------------------------
+// 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 {
-public:
-    inline wxGDIRefData(void)
-       {
-       }
+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
-    // __GDIOBJH__
+    // _WX_GDIOBJ_H_