]> git.saurik.com Git - wxWidgets.git/blob - include/wx/gdiobj.h
simplify/cleanup wxTheXXXList and wxGDIObject code (patch 1452023 from Paul Cornett)
[wxWidgets.git] / include / wx / gdiobj.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/gdiobj.h
3 // Purpose: wxGDIObject base header
4 // Author: Julian Smart
5 // Modified by:
6 // Created:
7 // Copyright: (c) Julian Smart
8 // RCS-ID: $Id$
9 // Licence: wxWindows Licence
10 /////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_GDIOBJ_H_BASE_
13 #define _WX_GDIOBJ_H_BASE_
14
15 #include "wx/object.h"
16
17 // ----------------------------------------------------------------------------
18 // wxGDIRefData is the base class for wxXXXData structures which contain the
19 // real data for the GDI object and are shared among all wxWin objects sharing
20 // the same native GDI object
21 // ----------------------------------------------------------------------------
22
23 class WXDLLIMPEXP_CORE wxGDIRefData: public wxObjectRefData { };
24
25 // ----------------------------------------------------------------------------
26 // wxGDIObject
27 // ----------------------------------------------------------------------------
28
29 class WXDLLIMPEXP_CORE wxGDIObject: public wxObject
30 {
31 public:
32 bool IsNull() const { return m_refData == NULL; }
33
34 #if defined(__WXMSW__) || defined(__WXOS2__) || defined(__WXPALMOS__)
35 // Creates the resource
36 virtual bool RealizeResource() { return false; }
37
38 // Frees the resource
39 virtual bool FreeResource(bool WXUNUSED(force) = false) { return false; }
40
41 virtual bool IsFree() const { return false; }
42
43 // Returns handle.
44 virtual WXHANDLE GetResourceHandle() const { return 0; }
45 #endif // defined(__WXMSW__) || defined(__WXOS2__)
46
47 DECLARE_DYNAMIC_CLASS(wxGDIObject)
48 };
49
50 #endif
51 // _WX_GDIOBJ_H_BASE_