]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/dc.cpp
fixed crash in wxDb::Open() in Unicode build due to wrong interpretation of BufferLen...
[wxWidgets.git] / src / msw / dc.cpp
index ac9179a3762eaac0a2c0b1d0d913cee9ad5fa798..11570c8c40e1afef4fa11d973ec704fce2eeb853 100644 (file)
     #include "wx/dcmemory.h"
     #include "wx/log.h"
     #include "wx/icon.h"
+    #include "wx/dcprint.h"
 #endif
 
 #include "wx/sysopt.h"
-#include "wx/dcprint.h"
 #include "wx/module.h"
 #include "wx/dynlib.h"
 
@@ -490,7 +490,7 @@ void wxDC::DestroyClippingRegion()
         // on desktop WIN32 also, since the WIN32 docs imply that the user
         // clipping region is independent from the paint clipping region.
         ::SelectClipRgn(GetHdc(), 0);
-#else        
+#else
         // TODO: this should restore the previous clipping region,
         //       so that OnPaint processing works correctly, and the update
         //       clipping region doesn't get destroyed after the first
@@ -498,7 +498,7 @@ void wxDC::DestroyClippingRegion()
         HRGN rgn = CreateRectRgn(0, 0, 32000, 32000);
         ::SelectClipRgn(GetHdc(), rgn);
         ::DeleteObject(rgn);
-#endif        
+#endif
     }
 
     wxDCBase::DestroyClippingRegion();
@@ -1488,7 +1488,7 @@ void wxDC::SetFont(const wxFont& font)
         else // selected ok
         {
             if ( !m_oldFont )
-                m_oldFont = (WXHPEN)hfont;
+                m_oldFont = (WXHFONT)hfont;
 
             m_font = font;
         }
@@ -1581,7 +1581,7 @@ void wxDC::SetBrush(const wxBrush& brush)
         else // selected ok
         {
             if ( !m_oldBrush )
-                m_oldBrush = (WXHPEN)hbrush;
+                m_oldBrush = (WXHBRUSH)hbrush;
 
             m_brush = brush;
         }
@@ -1745,9 +1745,11 @@ void wxDC::DoGetTextExtent(const wxString& string, wxCoord *x, wxCoord *y,
         wxLogLastError(_T("GetTextExtentPoint32()"));
     }
 
+#if !defined(_WIN32_WCE) || (_WIN32_WCE >= 400)
     // the result computed by GetTextExtentPoint32() may be too small as it
     // accounts for under/overhang of the first/last character while we want
     // just the bounding rect for this string so adjust the width as needed
+    // (using API not available in 2002 SDKs of WinCE)
     if ( len > 0 )
     {
         ABC width;
@@ -1769,6 +1771,7 @@ void wxDC::DoGetTextExtent(const wxString& string, wxCoord *x, wxCoord *y,
         }
         //else: GetCharABCWidths() failed, not a TrueType font?
     }
+#endif // !defined(_WIN32_WCE) || (_WIN32_WCE >= 400)
 
     TEXTMETRIC tm;
     ::GetTextMetrics(GetHdc(), &tm);