]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/dc.cpp
Further attempts at WinCE media control
[wxWidgets.git] / src / msw / dc.cpp
index 74960b6ef4904852a8e6da2709c8c7d524adcea0..20bf623044f063dd38cf7a04a63d6d0f53f79063 100644 (file)
@@ -131,10 +131,13 @@ static bool AlphaBlt(HDC hdcDst,
                      const wxBitmap& bmpSrc);
 
 #ifdef wxHAVE_RAW_BITMAP
-// our (limited) AlphaBlend() replacement
+
+// our (limited) AlphaBlend() replacement for Windows versions not providing it
 static void
-wxAlphaBlend(HDC hdcDst, int x, int y, int w, int h, int srcX, int srcY, const wxBitmap& bmp);
-#endif
+wxAlphaBlend(HDC hdcDst, int x, int y, int w, int h,
+             int srcX, int srcY, const wxBitmap& bmp);
+
+#endif // wxHAVE_RAW_BITMAP
 
 // ----------------------------------------------------------------------------
 // private classes
@@ -255,23 +258,6 @@ wxColourChanger::~wxColourChanger()
 // wxDC
 // ---------------------------------------------------------------------------
 
-// Default constructor
-wxDC::wxDC()
-{
-    m_canvas = NULL;
-
-    m_oldBitmap = 0;
-    m_oldPen = 0;
-    m_oldBrush = 0;
-    m_oldFont = 0;
-#if wxUSE_PALETTE
-    m_oldPalette = 0;
-#endif // wxUSE_PALETTE
-
-    m_bOwnsDC = false;
-    m_hDC = 0;
-}
-
 wxDC::~wxDC()
 {
     if ( m_hDC != 0 )
@@ -1757,7 +1743,7 @@ bool wxDC::DoGetPartialTextExtents(const wxString& text, wxArrayInt& widths) con
     static int maxWidth = -1;
     int fit = 0;
     SIZE sz = {0,0};
-    int stlen = text.Length();
+    int stlen = text.length();
 
     if (maxLenText == -1)
     {
@@ -2282,12 +2268,14 @@ bool wxDC::DoBlit(wxCoord xdest, wxCoord ydest,
     return success;
 }
 
-void wxDC::DoGetSize(int *w, int *h) const
+void wxDC::GetDeviceSize(int *width, int *height) const
 {
     WXMICROWIN_CHECK_HDC
 
-    if ( w ) *w = ::GetDeviceCaps(GetHdc(), HORZRES);
-    if ( h ) *h = ::GetDeviceCaps(GetHdc(), VERTRES);
+    if ( width )
+        *width = ::GetDeviceCaps(GetHdc(), HORZRES);
+    if ( height )
+        *height = ::GetDeviceCaps(GetHdc(), VERTRES);
 }
 
 void wxDC::DoGetSizeMM(int *w, int *h) const
@@ -2539,6 +2527,8 @@ static bool AlphaBlt(HDC hdcDst,
 
         wxLogLastError(_T("AlphaBlend"));
     }
+#else
+    wxUnusedVar(hdcSrc);
 #endif // defined(AC_SRC_OVER)
 
     // AlphaBlend() unavailable of failed: use our own (probably much slower)
@@ -2560,14 +2550,16 @@ static bool AlphaBlt(HDC hdcDst,
 #ifdef wxHAVE_RAW_BITMAP
 
 static void
-wxAlphaBlend(HDC hdcDst, int xDst, int yDst, int w, int h, int srcX, int srcY, const wxBitmap& bmpSrc)
+wxAlphaBlend(HDC hdcDst, int xDst, int yDst,
+             int w, int h,
+             int srcX, int srcY, const wxBitmap& bmpSrc)
 {
     // get the destination DC pixels
     wxBitmap bmpDst(w, h, 32 /* force creating RGBA DIB */);
     MemoryHDC hdcMem;
     SelectInHDC select(hdcMem, GetHbitmapOf(bmpDst));
 
-    if ( !::BitBlt(hdcMem, 0, 0, w, h, hdcDst, 0, 0, SRCCOPY) )
+    if ( !::BitBlt(hdcMem, 0, 0, w, h, hdcDst, xDst, yDst, SRCCOPY) )
     {
         wxLogLastError(_T("BitBlt"));
     }