1///////////////////////////////////////////////////////////////////////////// 2// Name: wx/x11/pen.h 3// Purpose: wxPen class 4// Author: Julian Smart 5// Modified by: 6// Created: 17/09/98 7// RCS-ID: $Id: pen.h 41751 2006-10-08 21:56:55Z VZ $ 8// Copyright: (c) Julian Smart 9// Licence: wxWindows licence 10///////////////////////////////////////////////////////////////////////////// 11 12#ifndef _WX_PEN_H_ 13#define _WX_PEN_H_ 14 15#include "wx/gdicmn.h" 16#include "wx/gdiobj.h" 17 18//----------------------------------------------------------------------------- 19// classes 20//----------------------------------------------------------------------------- 21 22class WXDLLIMPEXP_CORE wxPen; 23class WXDLLIMPEXP_CORE wxColour; 24class WXDLLIMPEXP_CORE wxBitmap; 25 26typedef char wxX11Dash; 27 28//----------------------------------------------------------------------------- 29// wxPen 30//----------------------------------------------------------------------------- 31 32class WXDLLIMPEXP_CORE wxPen: public wxGDIObject 33{ 34public: 35 wxPen() { } 36 37 wxPen( const wxColour &colour, int width = 1, int style = wxSOLID ); 38 wxPen( const wxBitmap &stipple, int width ); 39 virtual ~wxPen(); 40 41 bool Ok() const { return IsOk(); } 42 bool IsOk() const { return m_refData != NULL; } 43 44 bool operator == ( const wxPen& pen ) const; 45 bool operator != (const wxPen& pen) const { return !(*this == pen); } 46 47 void SetColour( const wxColour &colour ); 48 void SetColour( unsigned char red, unsigned char green, unsigned char blue ); 49 void SetCap( int capStyle ); 50 void SetJoin( int joinStyle ); 51 void SetStyle( int style ); 52 void SetWidth( int width ); 53 void SetDashes( int number_of_dashes, const wxDash *dash ); 54 void SetStipple( wxBitmap *stipple ); 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 wxBitmap* GetStipple() const; 65 66protected: 67 // ref counting code 68 virtual wxObjectRefData *CreateRefData() const; 69 virtual wxObjectRefData *CloneRefData(const wxObjectRefData *data) const; 70 71 DECLARE_DYNAMIC_CLASS(wxPen) 72}; 73 74#endif 75// _WX_PEN_H_ 76