]> git.saurik.com Git - wxWidgets.git/commitdiff
added wxBitmap::UseAlpha()
authorVadim Zeitlin <vadim@wxwidgets.org>
Sun, 13 Apr 2003 13:45:20 +0000 (13:45 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Sun, 13 Apr 2003 13:45:20 +0000 (13:45 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20188 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/msw/bitmap.h
include/wx/rawbmp.h
samples/image/image.cpp
src/msw/bitmap.cpp

index 536a62b307f945941c2468c430201a36e7803ed3..cd67008e6b6dc09fdf2ac253298fe1d9389eaf93 100644 (file)
@@ -146,8 +146,10 @@ public:
     bool operator==(const wxBitmap& bitmap) const { return m_refData == bitmap.m_refData; }
     bool operator!=(const wxBitmap& bitmap) const { return m_refData != bitmap.m_refData; }
 
-    // this function is internal and shouldn't be used, it risks to disappear
+    // these functions are internal and shouldn't be used, they risk to
+    // disappear in the future
     bool HasAlpha() const;
+    void UseAlpha();
 
 #if WXWIN_COMPATIBILITY_2_4
     // these functions do nothing and are only there for backwards
index 5af914e4a48da74faa400364356d2d612606ace6..a7fa177ede9cb2347de474e7d3c52a87edeb6a36 100644 (file)
@@ -90,6 +90,9 @@ public:
         m_bmp.UngetRawData(this);
     }
 
+    // call this to indicate that we should use the alpha channel
+    void UseAlpha() { m_bmp.UseAlpha(); }
+
     // accessors
     unsigned char *GetPixels() const { return m_pixels; }
     int GetWidth() const { return m_width; }
index 3dfe14841fc63eaabe314f07cf488da05b5ec8d5..584dda78481262c5de7ad84f3d30b39c85bf880d 100644 (file)
@@ -267,6 +267,8 @@ public:
             return;
         }
 
+        data.UseAlpha();
+
         wxRawBitmapIterator p(data);
 
         p.Offset(BORDER, BORDER);
index 8cc1e1b180ab0a9c27de5b71d6f98021f17a0acd..564f1f33f175e998d89d67c253449f8a31e4e936 100644 (file)
@@ -1096,6 +1096,12 @@ int wxBitmap::GetQuality() const
 
 #endif // WXWIN_COMPATIBILITY_2_4
 
+void wxBitmap::UseAlpha()
+{
+    if ( GetBitmapData() )
+        GetBitmapData()->m_hasAlpha = true;
+}
+
 bool wxBitmap::HasAlpha() const
 {
     return GetBitmapData() && GetBitmapData()->m_hasAlpha;