2002-02-05 11:34:33 -05:00
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Name: pen.h
|
|
|
|
// Purpose: wxPen class
|
|
|
|
// Author: Julian Smart
|
|
|
|
// Modified by:
|
|
|
|
// Created: 17/09/98
|
|
|
|
// RCS-ID: $Id$
|
|
|
|
// Copyright: (c) Julian Smart
|
2004-05-23 16:53:33 -04:00
|
|
|
// Licence: wxWindows licence
|
2002-02-05 11:34:33 -05:00
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
#ifndef _WX_PEN_H_
|
|
|
|
#define _WX_PEN_H_
|
|
|
|
|
2003-08-09 08:38:21 -04:00
|
|
|
#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
|
2002-02-05 11:34:33 -05:00
|
|
|
#pragma interface "pen.h"
|
|
|
|
#endif
|
|
|
|
|
2003-02-20 13:20:47 -05:00
|
|
|
#include "wx/gdicmn.h"
|
2002-02-05 11:34:33 -05:00
|
|
|
#include "wx/gdiobj.h"
|
|
|
|
|
2002-02-10 12:24:14 -05:00
|
|
|
//-----------------------------------------------------------------------------
|
|
|
|
// classes
|
|
|
|
//-----------------------------------------------------------------------------
|
2002-02-05 11:34:33 -05:00
|
|
|
|
2005-08-02 14:16:51 -04:00
|
|
|
class WXDLLIMPEXP_CORE wxPen;
|
|
|
|
class WXDLLIMPEXP_CORE wxColour;
|
|
|
|
class WXDLLIMPEXP_CORE wxBitmap;
|
2002-02-05 11:34:33 -05:00
|
|
|
|
2002-02-10 12:24:14 -05:00
|
|
|
typedef char wxX11Dash;
|
2002-02-05 11:34:33 -05:00
|
|
|
|
2002-02-10 12:24:14 -05:00
|
|
|
//-----------------------------------------------------------------------------
|
|
|
|
// wxPen
|
|
|
|
//-----------------------------------------------------------------------------
|
2002-02-05 11:34:33 -05:00
|
|
|
|
2005-08-02 14:16:51 -04:00
|
|
|
class WXDLLIMPEXP_CORE wxPen: public wxGDIObject
|
2002-02-05 11:34:33 -05:00
|
|
|
{
|
|
|
|
public:
|
2002-02-10 12:24:14 -05:00
|
|
|
wxPen() { }
|
2002-02-05 11:34:33 -05:00
|
|
|
|
2003-07-21 15:39:34 -04:00
|
|
|
wxPen( const wxColour &colour, int width = 1, int style = wxSOLID );
|
2003-02-20 13:20:47 -05:00
|
|
|
wxPen( const wxBitmap &stipple, int width );
|
2002-02-10 12:24:14 -05:00
|
|
|
~wxPen();
|
2002-02-05 11:34:33 -05:00
|
|
|
|
2002-02-10 12:24:14 -05:00
|
|
|
wxPen( const wxPen& pen ) { Ref(pen); }
|
|
|
|
wxPen& operator = ( const wxPen& pen ) { Ref(pen); return *this; }
|
2002-02-05 11:34:33 -05:00
|
|
|
|
2002-02-10 12:24:14 -05:00
|
|
|
bool Ok() const { return m_refData != NULL; }
|
2002-02-05 11:34:33 -05:00
|
|
|
|
2002-02-10 12:24:14 -05:00
|
|
|
bool operator == ( const wxPen& pen ) const;
|
|
|
|
bool operator != (const wxPen& pen) const { return !(*this == pen); }
|
|
|
|
|
|
|
|
void SetColour( const wxColour &colour );
|
|
|
|
void SetColour( int red, int green, int blue );
|
|
|
|
void SetCap( int capStyle );
|
|
|
|
void SetJoin( int joinStyle );
|
|
|
|
void SetStyle( int style );
|
|
|
|
void SetWidth( int width );
|
|
|
|
void SetDashes( int number_of_dashes, const wxDash *dash );
|
2003-02-20 13:20:47 -05:00
|
|
|
void SetStipple( wxBitmap *stipple );
|
|
|
|
|
2002-02-10 12:24:14 -05:00
|
|
|
wxColour &GetColour() const;
|
|
|
|
int GetCap() const;
|
|
|
|
int GetJoin() const;
|
|
|
|
int GetStyle() const;
|
|
|
|
int GetWidth() const;
|
|
|
|
int GetDashes(wxDash **ptr) const;
|
|
|
|
int GetDashCount() const;
|
|
|
|
wxDash* GetDash() const;
|
2003-02-20 13:20:47 -05:00
|
|
|
wxBitmap* GetStipple() const;
|
2002-02-10 12:24:14 -05:00
|
|
|
|
|
|
|
private:
|
|
|
|
// ref counting code
|
|
|
|
virtual wxObjectRefData *CreateRefData() const;
|
|
|
|
virtual wxObjectRefData *CloneRefData(const wxObjectRefData *data) const;
|
2002-02-05 11:34:33 -05:00
|
|
|
|
2002-02-10 12:24:14 -05:00
|
|
|
DECLARE_DYNAMIC_CLASS(wxPen)
|
2002-02-05 11:34:33 -05:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|
|
|
|
// _WX_PEN_H_
|