]> git.saurik.com Git - wxWidgets.git/blob - include/wx/gtk1/pen.h
added wxMirrorDC
[wxWidgets.git] / include / wx / gtk1 / 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 #if defined(__GNUG__) && !defined(__APPLE__)
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 )
49 : wxGDIObject()
50 { Ref(pen); }
51 wxPen& operator = ( const wxPen& pen ) { Ref(pen); return *this; }
52
53 bool Ok() const { return m_refData != NULL; }
54
55 bool operator == ( const wxPen& pen ) const;
56 bool operator != (const wxPen& pen) const { return !(*this == pen); }
57
58 void SetColour( const wxColour &colour );
59 void SetColour( int red, int green, int blue );
60 void SetCap( int capStyle );
61 void SetJoin( int joinStyle );
62 void SetStyle( int style );
63 void SetWidth( int width );
64 void SetDashes( int number_of_dashes, const wxDash *dash );
65
66 wxColour &GetColour() const;
67 int GetCap() const;
68 int GetJoin() const;
69 int GetStyle() const;
70 int GetWidth() const;
71 int GetDashes(wxDash **ptr) const;
72 int GetDashCount() const;
73 wxDash* GetDash() const;
74
75 private:
76 // ref counting code
77 virtual wxObjectRefData *CreateRefData() const;
78 virtual wxObjectRefData *CloneRefData(const wxObjectRefData *data) const;
79
80 DECLARE_DYNAMIC_CLASS(wxPen)
81 };
82
83 #endif // __GTKPENH__