]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/brush.cpp
Avoid core dumps when SetImageList is used.
[wxWidgets.git] / src / msw / brush.cpp
index c201a5574854d3ffa4be0b3f0e3e7c2f77ebffb1..5f497f119c28b409fd9a7aefed4b8b22e6179336 100644 (file)
@@ -5,15 +5,15 @@
 // Modified by:
 // Created:     04/01/98
 // RCS-ID:      $Id$
 // 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
 // ============================================================================
 
 /////////////////////////////////////////////////////////////////////////////
 
 // ============================================================================
 // declarations
 // ============================================================================
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
 #pragma implementation "brush.h"
 #endif
 
 #pragma implementation "brush.h"
 #endif
 
@@ -151,26 +151,30 @@ void wxBrushRefData::Free()
 
 static int TransllateHatchStyle(int style)
 {
 
 static int TransllateHatchStyle(int style)
 {
+#if !defined(__WXMICROWIN__) && !defined(__WXWINCE__)
     switch ( 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;
         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;
     }
         default:                return -1;
     }
+#else // __WXMICROWIN__
+    return -1;
+#endif
 }
 
 HBRUSH wxBrushRefData::GetHBRUSH()
 {
     if ( !m_hBrush )
     {
 }
 
 HBRUSH wxBrushRefData::GetHBRUSH()
 {
     if ( !m_hBrush )
     {
+#ifndef __WXWINCE__
         int hatchStyle = TransllateHatchStyle(m_style);
         if ( hatchStyle == -1 )
         int hatchStyle = TransllateHatchStyle(m_style);
         if ( hatchStyle == -1 )
+#endif
         {
             switch ( m_style )
             {
         {
             switch ( m_style )
             {
@@ -196,10 +200,12 @@ HBRUSH wxBrushRefData::GetHBRUSH()
                     break;
             }
         }
                     break;
             }
         }
+#ifndef __WXWINCE__
         else // create a hatched brush
         {
             m_hBrush = ::CreateHatchBrush(hatchStyle, m_colour.GetPixel());
         }
         else // create a hatched brush
         {
             m_hBrush = ::CreateHatchBrush(hatchStyle, m_colour.GetPixel());
         }
+#endif
 
         if ( !m_hBrush )
         {
 
         if ( !m_hBrush )
         {
@@ -242,7 +248,7 @@ wxBrush::~wxBrush()
 
 wxBrush& wxBrush::operator=(const wxBrush& brush)
 {
 
 wxBrush& wxBrush::operator=(const wxBrush& brush)
 {
-    if ( *this != brush )
+    if ( this != &brush )
     {
         Ref(brush);
     }
     {
         Ref(brush);
     }
@@ -293,11 +299,11 @@ wxBitmap *wxBrush::GetStipple() const
     return M_BRUSHDATA->GetStipple();
 }
 
     return M_BRUSHDATA->GetStipple();
 }
 
-WXHBRUSH wxBrush::GetResourceHandle() const
+WXHANDLE wxBrush::GetResourceHandle() const
 {
     wxCHECK_MSG( Ok(), FALSE, _T("invalid brush") );
 
 {
     wxCHECK_MSG( Ok(), FALSE, _T("invalid brush") );
 
-    return (WXHBRUSH)M_BRUSHDATA->GetHBRUSH();
+    return (WXHANDLE)M_BRUSHDATA->GetHBRUSH();
 }
 
 // ----------------------------------------------------------------------------
 }
 
 // ----------------------------------------------------------------------------