]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/mac/carbon/brush.h
wxDC::StretchBlit() for wxMac and wxMSW (patch 1611973)
[wxWidgets.git] / include / wx / mac / carbon / brush.h
index 6f915f9d8f29eb3cb5e2f283d600883fe5e5b8aa..937109c915d02cd48e58ab8ec63432091802a1a9 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        brush.h
+// Name:        wx/mac/carbon/brush.h
 // Purpose:     wxBrush class
 // Author:      Stefan Csomor
 // Modified by:
 #ifndef _WX_BRUSH_H_
 #define _WX_BRUSH_H_
 
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-#pragma interface "brush.h"
-#endif
-
 #include "wx/gdicmn.h"
 #include "wx/gdiobj.h"
 #include "wx/bitmap.h"
@@ -30,7 +26,7 @@ typedef enum
 } wxMacBrushKind ;
 
 // Brush
-class WXDLLEXPORT wxBrush: public wxGDIObject
+class WXDLLEXPORT wxBrush: public wxBrushBase
 {
     DECLARE_DYNAMIC_CLASS(wxBrush)
 
@@ -39,46 +35,38 @@ public:
     wxBrush(short macThemeBrush ) ;
     wxBrush(const wxColour& col, int style = wxSOLID);
     wxBrush(const wxBitmap& stipple);
-    wxBrush(const wxBrush& brush)
-        : wxGDIObject()
-        { Ref(brush); }
-    ~wxBrush();
+    virtual ~wxBrush();
 
-    virtual void SetColour(const wxColour& col)  ;
-    virtual void SetColour(unsigned char r, unsigned char g, unsigned char b)  ;
+    virtual void SetColour(const wxColour& col) ;
+    virtual void SetColour(unsigned char r, unsigned char g, unsigned char b) ;
     virtual void SetStyle(int style)  ;
     virtual void SetStipple(const wxBitmap& stipple)  ;
     virtual void MacSetTheme(short macThemeBrush) ;
     virtual void MacSetThemeBackground(unsigned long macThemeBackground ,  WXRECTPTR extent) ;
 
-    wxBrush& operator = (const wxBrush& brush)
-    { if (*this == brush) return (*this); Ref(brush); return *this; }
-    bool operator == (const wxBrush& brush)
-    { return m_refData == brush.m_refData; }
-    bool operator != (const wxBrush& brush)
-    { return m_refData != brush.m_refData; }
+    bool operator == (const wxBrush& brush) const;
+    bool operator != (const wxBrush& brush) const
+        { return !(*this == brush); }
 
     wxMacBrushKind MacGetBrushKind()  const ;
 
     unsigned long MacGetThemeBackground(WXRECTPTR extent)  const ;
     short MacGetTheme()  const ;
     wxColour& GetColour() const ;
-    int GetStyle() const ;
+    virtual int GetStyle() const ;
     wxBitmap *GetStipple() const ;
 
-    bool IsHatch() const
-        { return (GetStyle()>=wxBDIAGONAL_HATCH) && (GetStyle()<=wxVERTICAL_HATCH); }
-
-    virtual bool Ok() const { return (m_refData != NULL) ; }
+    virtual bool Ok() const { return IsOk(); }
+    virtual bool IsOk() const { return (m_refData != NULL) ; }
 
 // Implementation
 
     // Useful helper: create the brush resource
     bool RealizeResource();
 
-    // When setting properties, we must make sure we're not changing
-    // another object
-    void Unshare();
+protected:
+    virtual wxObjectRefData* CreateRefData() const;
+    virtual wxObjectRefData* CloneRefData(const wxObjectRefData* data) const;
 };
 
 #endif