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