]> git.saurik.com Git - wxWidgets.git/blob - include/wx/gtk/pen.h
Moved the cleanup code to an EVT_WINDOW_DESTROY handler.
[wxWidgets.git] / include / wx / gtk / pen.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: pen.h
3 // Purpose:
4 // Author: Robert Roebling
5 // Id: $Id$
6 // Copyright: (c) 1998 Robert Roebling
7 // Licence: wxWindows licence
8 /////////////////////////////////////////////////////////////////////////////
9
10
11 #ifndef __GTKPENH__
12 #define __GTKPENH__
13
14 #ifdef __GNUG__
15 #pragma interface
16 #endif
17
18 #include "wx/defs.h"
19 #include "wx/object.h"
20 #include "wx/string.h"
21 #include "wx/gdiobj.h"
22 #include "wx/gdicmn.h"
23
24 //-----------------------------------------------------------------------------
25 // classes
26 //-----------------------------------------------------------------------------
27
28 class wxPen;
29
30 #if defined(__WXGTK127__) || defined(__WXGTK20__)
31 typedef gint8 wxGTKDash;
32 #else
33 typedef gchar wxGTKDash;
34 #endif
35
36 //-----------------------------------------------------------------------------
37 // wxPen
38 //-----------------------------------------------------------------------------
39
40 class wxPen: public wxGDIObject
41 {
42 public:
43 wxPen() { }
44
45 wxPen( const wxColour &colour, int width, int style );
46 ~wxPen();
47
48 wxPen( const wxPen& pen ) { Ref(pen); }
49 wxPen& operator = ( const wxPen& pen ) { Ref(pen); return *this; }
50
51 bool Ok() const { return m_refData != NULL; }
52
53 bool operator == ( const wxPen& pen ) const;
54 bool operator != (const wxPen& pen) const { return !(*this == pen); }
55
56 void SetColour( const wxColour &colour );
57 void SetColour( int red, int green, int blue );
58 void SetCap( int capStyle );
59 void SetJoin( int joinStyle );
60 void SetStyle( int style );
61 void SetWidth( int width );
62 void SetDashes( int number_of_dashes, const wxDash *dash );
63
64 wxColour &GetColour() const;
65 int GetCap() const;
66 int GetJoin() const;
67 int GetStyle() const;
68 int GetWidth() const;
69 int GetDashes(wxDash **ptr) const;
70 int GetDashCount() const;
71 wxDash* GetDash() const;
72
73 private:
74 // ref counting code
75 virtual wxObjectRefData *CreateRefData() const;
76 virtual wxObjectRefData *CloneRefData(const wxObjectRefData *data) const;
77
78 DECLARE_DYNAMIC_CLASS(wxPen)
79 };
80
81 #endif // __GTKPENH__