]> git.saurik.com Git - wxWidgets.git/blob - include/wx/x11/brush.h
fixing overrelease and out-of-bounds write, fixes #13725
[wxWidgets.git] / include / wx / x11 / brush.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/x11/brush.h
3 // Purpose: wxBrush class
4 // Author: Julian Smart, Robert Roebling
5 // Modified by:
6 // Created: 17/09/98
7 // RCS-ID: $Id$
8 // Copyright: (c) Julian Smart, Robert Roebling
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_BRUSH_H_
13 #define _WX_BRUSH_H_
14
15 #include "wx/gdiobj.h"
16
17 //-----------------------------------------------------------------------------
18 // classes
19 //-----------------------------------------------------------------------------
20
21 class WXDLLIMPEXP_FWD_CORE wxBrush;
22 class WXDLLIMPEXP_FWD_CORE wxColour;
23 class WXDLLIMPEXP_FWD_CORE wxBitmap;
24
25 //-----------------------------------------------------------------------------
26 // wxBrush
27 //-----------------------------------------------------------------------------
28
29 class WXDLLIMPEXP_CORE wxBrush : public wxBrushBase
30 {
31 public:
32 wxBrush() { }
33
34 wxBrush( const wxColour &colour, wxBrushStyle style = wxBRUSHSTYLE_SOLID );
35 #if FUTURE_WXWIN_COMPATIBILITY_3_0
36 wxDEPRECATED_FUTURE( wxBrush(const wxColour& col, int style) );
37 #endif
38 wxBrush( const wxBitmap &stippleBitmap );
39 virtual ~wxBrush();
40
41 bool operator==(const wxBrush& brush) const;
42 bool operator!=(const wxBrush& brush) const { return !(*this == brush); }
43
44 wxBrushStyle GetStyle() const;
45 wxColour GetColour() const;
46 wxBitmap *GetStipple() const;
47
48 void SetColour( const wxColour& col );
49 void SetColour( unsigned char r, unsigned char g, unsigned char b );
50 void SetStyle( wxBrushStyle style );
51 void SetStipple( const wxBitmap& stipple );
52
53 #if FUTURE_WXWIN_COMPATIBILITY_3_0
54 wxDEPRECATED_FUTURE( void SetStyle(int style) )
55 { SetStyle((wxBrushStyle)style); }
56 #endif
57
58 protected:
59 virtual wxGDIRefData *CreateGDIRefData() const;
60 virtual wxGDIRefData *CloneGDIRefData(const wxGDIRefData *data) const;
61
62 DECLARE_DYNAMIC_CLASS(wxBrush)
63 };
64
65 #endif // _WX_BRUSH_H_