/////////////////////////////////////////////////////////////////////////////
-// Name: brush.h
+// Name: wx/gtk/brush.h
// Purpose:
// Author: Robert Roebling
// Id: $Id$
// Copyright: (c) 1998 Robert Roebling
-// Licence: wxWindows licence
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
+#ifndef _WX_GTK_BRUSH_H_
+#define _WX_GTK_BRUSH_H_
-#ifndef __GTKBRUSHH__
-#define __GTKBRUSHH__
-
-#ifdef __GNUG__
-#pragma interface
-#endif
-
-#include "wx/defs.h"
-#include "wx/object.h"
-#include "wx/string.h"
-#include "wx/gdiobj.h"
-#include "wx/bitmap.h"
-
-//-----------------------------------------------------------------------------
-// classes
-//-----------------------------------------------------------------------------
-
-class wxBrush;
+class WXDLLIMPEXP_FWD_CORE wxBitmap;
+class WXDLLIMPEXP_FWD_CORE wxColour;
//-----------------------------------------------------------------------------
// wxBrush
//-----------------------------------------------------------------------------
-class wxBrush: public wxGDIObject
+class WXDLLIMPEXP_CORE wxBrush: public wxBrushBase
{
- DECLARE_DYNAMIC_CLASS(wxBrush)
+public:
+ wxBrush() { }
- public:
-
- wxBrush(void);
- wxBrush( const wxColour &colour, int style );
+ wxBrush( const wxColour &colour, int style = wxSOLID );
wxBrush( const wxBitmap &stippleBitmap );
- wxBrush( const wxBrush &brush );
- wxBrush( const wxBrush *brush );
- ~wxBrush(void);
- wxBrush& operator = ( const wxBrush& brush );
- bool operator == ( const wxBrush& brush );
- bool operator != ( const wxBrush& brush );
- bool Ok(void) const;
+ virtual ~wxBrush();
+
+ bool Ok() const { return IsOk(); }
+ bool IsOk() const { return m_refData != NULL; }
+
+ bool operator == ( const wxBrush& brush ) const;
+ bool operator != (const wxBrush& brush) const { return !(*this == brush); }
+
+ virtual int GetStyle() const;
+ wxColour &GetColour() const;
+ wxBitmap *GetStipple() const;
- int GetStyle(void) const;
- wxColour &GetColour(void) const;
- wxBitmap *GetStipple(void) const;
-
-
void SetColour( const wxColour& col );
void SetColour( unsigned char r, unsigned char g, unsigned char b );
void SetStyle( int style );
void SetStipple( const wxBitmap& stipple );
-
- void Unshare(void);
-
- // no data :-)
+
+protected:
+ // ref counting code
+ virtual wxObjectRefData *CreateRefData() const;
+ virtual wxObjectRefData *CloneRefData(const wxObjectRefData *data) const;
+
+ DECLARE_DYNAMIC_CLASS(wxBrush)
};
-#endif // __GTKBRUSHH__
+#endif // _WX_GTK_BRUSH_H_