X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2b5f62a0b2db198609b45dec622a018dae37008e..d968078adbfb147e913b9a33fc54242a36f117ce:/src/msw/brush.cpp diff --git a/src/msw/brush.cpp b/src/msw/brush.cpp index e47a77f3b1..b5edb43205 100644 --- a/src/msw/brush.cpp +++ b/src/msw/brush.cpp @@ -5,18 +5,14 @@ // Modified by: // Created: 04/01/98 // RCS-ID: $Id$ -// Copyright: (c) Julian Smart and Markus Holzem -// Licence: wxWindows license +// Copyright: (c) Julian Smart +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// // ============================================================================ // declarations // ============================================================================ -#ifdef __GNUG__ -#pragma implementation "brush.h" -#endif - // ---------------------------------------------------------------------------- // headers // ---------------------------------------------------------------------------- @@ -28,11 +24,12 @@ #pragma hdrstop #endif +#include "wx/brush.h" + #ifndef WX_PRECOMP #include "wx/list.h" #include "wx/utils.h" #include "wx/app.h" - #include "wx/brush.h" #endif // WX_PRECOMP #include "wx/msw/private.h" @@ -103,7 +100,8 @@ wxBrushRefData::wxBrushRefData(const wxBitmap& stipple) } wxBrushRefData::wxBrushRefData(const wxBrushRefData& data) - : m_stipple(data.m_stipple), + : wxGDIRefData(), + m_stipple(data.m_stipple), m_colour(data.m_colour) { m_style = data.m_style; @@ -126,7 +124,7 @@ bool wxBrushRefData::operator==(const wxBrushRefData& data) const // don't compare HBRUSHes return m_style == data.m_style && m_colour == data.m_colour && - m_stipple == data.m_stipple; + m_stipple.IsSameAs(data.m_stipple); } void wxBrushRefData::DoSetStipple(const wxBitmap& stipple) @@ -149,28 +147,32 @@ void wxBrushRefData::Free() } } -static int TransllateHatchStyle(int style) +#if !defined(__WXMICROWIN__) && !defined(__WXWINCE__) + +static int TranslateHatchStyle(int style) { switch ( style ) { -#ifndef __WXMICROWIN__ case wxBDIAGONAL_HATCH: return HS_BDIAGONAL; case wxCROSSDIAG_HATCH: return HS_DIAGCROSS; case wxFDIAGONAL_HATCH: return HS_FDIAGONAL; case wxCROSS_HATCH: return HS_CROSS; case wxHORIZONTAL_HATCH:return HS_HORIZONTAL; case wxVERTICAL_HATCH: return HS_VERTICAL; -#endif // __WXMICROWIN__ default: return -1; } } +#endif // !__WXMICROWIN__ && !__WXWINCE__ + HBRUSH wxBrushRefData::GetHBRUSH() { if ( !m_hBrush ) { - int hatchStyle = TransllateHatchStyle(m_style); +#if !defined(__WXMICROWIN__) && !defined(__WXWINCE__) + int hatchStyle = TranslateHatchStyle(m_style); if ( hatchStyle == -1 ) +#endif // !__WXMICROWIN__ && !__WXWINCE__ { switch ( m_style ) { @@ -196,10 +198,12 @@ HBRUSH wxBrushRefData::GetHBRUSH() break; } } +#ifndef __WXWINCE__ else // create a hatched brush { m_hBrush = ::CreateHatchBrush(hatchStyle, m_colour.GetPixel()); } +#endif if ( !m_hBrush ) { @@ -240,16 +244,6 @@ wxBrush::~wxBrush() // wxBrush house keeping stuff // ---------------------------------------------------------------------------- -wxBrush& wxBrush::operator=(const wxBrush& brush) -{ - if ( *this != brush ) - { - Ref(brush); - } - - return *this; -} - bool wxBrush::operator==(const wxBrush& brush) const { const wxBrushRefData *brushData = (wxBrushRefData *)brush.m_refData; @@ -258,12 +252,12 @@ bool wxBrush::operator==(const wxBrush& brush) const return m_refData ? (brushData && *M_BRUSHDATA == *brushData) : !brushData; } -wxObjectRefData *wxBrush::CreateRefData() const +wxGDIRefData *wxBrush::CreateGDIRefData() const { return new wxBrushRefData; } -wxObjectRefData *wxBrush::CloneRefData(const wxObjectRefData *data) const +wxGDIRefData *wxBrush::CloneGDIRefData(const wxGDIRefData *data) const { return new wxBrushRefData(*(const wxBrushRefData *)data); } @@ -331,5 +325,3 @@ void wxBrush::SetStipple(const wxBitmap& stipple) M_BRUSHDATA->SetStipple(stipple); } - -