1/////////////////////////////////////////////////////////////////////////////
2// Name:        wx/gtk1/brush.h
3// Purpose:
4// Author:      Robert Roebling
5// Id:          $Id: brush.h 41751 2006-10-08 21:56:55Z VZ $
6// Copyright:   (c) 1998 Robert Roebling
7// Licence:     wxWindows licence
8/////////////////////////////////////////////////////////////////////////////
9
10
11#ifndef __GTKBRUSHH__
12#define __GTKBRUSHH__
13
14#include "wx/defs.h"
15#include "wx/object.h"
16#include "wx/string.h"
17#include "wx/gdiobj.h"
18#include "wx/bitmap.h"
19
20//-----------------------------------------------------------------------------
21// classes
22//-----------------------------------------------------------------------------
23
24class WXDLLIMPEXP_CORE wxBrush;
25
26//-----------------------------------------------------------------------------
27// wxBrush
28//-----------------------------------------------------------------------------
29
30class WXDLLIMPEXP_CORE wxBrush: public wxBrushBase
31{
32public:
33    wxBrush() { }
34
35    wxBrush( const wxColour &colour, int style = wxSOLID );
36    wxBrush( const wxBitmap &stippleBitmap );
37    virtual ~wxBrush();
38
39    bool Ok() const { return IsOk(); }
40    bool IsOk() const { return m_refData != NULL; }
41
42    bool operator == ( const wxBrush& brush ) const;
43    bool operator != (const wxBrush& brush) const { return !(*this == brush); }
44
45    virtual int GetStyle() const;
46    wxColour &GetColour() const;
47    wxBitmap *GetStipple() const;
48
49    void SetColour( const wxColour& col );
50    void SetColour( unsigned char r, unsigned char g, unsigned char b );
51    void SetStyle( int style );
52    void SetStipple( const wxBitmap& stipple );
53
54private:
55    // ref counting code
56    virtual wxObjectRefData *CreateRefData() const;
57    virtual wxObjectRefData *CloneRefData(const wxObjectRefData *data) const;
58
59    DECLARE_DYNAMIC_CLASS(wxBrush)
60};
61
62#endif // __GTKBRUSHH__
63