X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7c78e7c70271608b076b1dbed201b1204e6898d4..d0fff5cb110810d3bee6fa255292f161f7752911:/include/wx/qt/brush.h diff --git a/include/wx/qt/brush.h b/include/wx/qt/brush.h index 32048f67b7..2475bd0b24 100644 --- a/include/wx/qt/brush.h +++ b/include/wx/qt/brush.h @@ -1,60 +1,86 @@ ///////////////////////////////////////////////////////////////////////////// // Name: brush.h -// Purpose: -// Author: Robert Roebling -// Created: 01/02/97 -// Id: -// Copyright: (c) 1998 Robert Roebling, Julian Smart and Markus Holzem +// Purpose: wxBrush class +// Author: AUTHOR +// Modified by: +// Created: ??/??/98 +// RCS-ID: $Id$ +// Copyright: (c) AUTHOR // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// - -#ifndef __GTKBRUSHH__ -#define __GTKBRUSHH__ +#ifndef _WX_BRUSH_H_ +#define _WX_BRUSH_H_ #ifdef __GNUG__ -#pragma interface +#pragma interface "brush.h" #endif -#include "wx/defs.h" -#include "wx/object.h" -#include "wx/string.h" +#include "wx/gdicmn.h" #include "wx/gdiobj.h" #include "wx/bitmap.h" -//----------------------------------------------------------------------------- -// classes -//----------------------------------------------------------------------------- +class WXDLLEXPORT wxBrush; + +class WXDLLEXPORT wxBrushRefData: public wxGDIRefData +{ + friend class WXDLLEXPORT wxBrush; +public: + wxBrushRefData(); + wxBrushRefData(const wxBrushRefData& data); + ~wxBrushRefData(); -class wxBrush; +protected: + int m_style; + wxBitmap m_stipple ; + wxColour m_colour; -//----------------------------------------------------------------------------- -// wxBrush -//----------------------------------------------------------------------------- +/* TODO: implementation + WXHBRUSH m_hBrush; +*/ +}; -class wxBrush: public wxGDIObject +#define M_BRUSHDATA ((wxBrushRefData *)m_refData) + +// Brush +class WXDLLEXPORT wxBrush: public wxGDIObject { DECLARE_DYNAMIC_CLASS(wxBrush) - public: - - wxBrush(void); - wxBrush( const wxColour &colour, int style ); - wxBrush( const wxString &colourName, int style ); - 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; - - int GetStyle(void) const; - wxColour &GetColour(void) const; - wxBitmap *GetStipple(void) const; - - // no data :-) +public: + wxBrush(); + wxBrush(const wxColour& col, int style); + wxBrush(const wxString& col, int style); + wxBrush(const wxBitmap& stipple); + inline wxBrush(const wxBrush& brush) { Ref(brush); } + inline wxBrush(const wxBrush* brush) { if (brush) Ref(*brush); } + ~wxBrush(); + + virtual void SetColour(const wxColour& col) ; + virtual void SetColour(const wxString& col) ; + virtual void SetColour(unsigned char r, unsigned char g, unsigned char b) ; + virtual void SetStyle(int style) ; + virtual void SetStipple(const wxBitmap& stipple) ; + + inline wxBrush& operator = (const wxBrush& brush) { if (*this == brush) return (*this); Ref(brush); return *this; } + inline bool operator == (const wxBrush& brush) { return m_refData == brush.m_refData; } + inline bool operator != (const wxBrush& brush) { return m_refData != brush.m_refData; } + + inline wxColour& GetColour() const { return (M_BRUSHDATA ? M_BRUSHDATA->m_colour : wxNullColour); }; + inline int GetStyle() const { return (M_BRUSHDATA ? M_BRUSHDATA->m_style : 0); }; + inline wxBitmap *GetStipple() const { return (M_BRUSHDATA ? & M_BRUSHDATA->m_stipple : 0); }; + + virtual bool Ok() const { return (m_refData != NULL) ; } + +// Implementation + + // Useful helper: create the brush resource + void RealizeResource(); + + // When setting properties, we must make sure we're not changing + // another object + void Unshare(); }; -#endif // __GTKBRUSHH__ +#endif + // _WX_BRUSH_H_