From: Vadim Zeitlin <vadim@wxwidgets.org>
Date: Tue, 2 Nov 2010 11:57:09 +0000 (+0000)
Subject: Changed wxImage::ConvertAlphaToMask() return type to bool.
X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/878f28d8c8ae550e5b07916a0c22374850b5091f

Changed wxImage::ConvertAlphaToMask() return type to bool.

Make this function more useful by returning true from it if alpha channel was
really converted to the mask by it.

Closes #12637.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65990 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
---

diff --git a/docs/changes.txt b/docs/changes.txt
index 69bb9a4e1e..795d6871ff 100644
--- a/docs/changes.txt
+++ b/docs/changes.txt
@@ -426,6 +426,7 @@ All (GUI):
 - Improve wxGTK print/page setup dialog (rafravago).
 - Added wxToolbook XRC handler (Andrea Zanellato).
 - Added wxDocManager::FindTemplate() (troelsk).
+- Return bool, not void, from wxImage::ConvertAlphaToMask() (troelsk).
 
 MSW:
 
diff --git a/include/wx/image.h b/include/wx/image.h
index cb602383d1..b17ebe06a5 100644
--- a/include/wx/image.h
+++ b/include/wx/image.h
@@ -388,7 +388,7 @@ public:
     // automatically or using the specified colour for the mask), if it has
     // any, does nothing otherwise:
     bool ConvertAlphaToMask(unsigned char threshold = wxIMAGE_ALPHA_THRESHOLD);
-    void ConvertAlphaToMask(unsigned char mr, unsigned char mg, unsigned char mb,
+    bool ConvertAlphaToMask(unsigned char mr, unsigned char mg, unsigned char mb,
                             unsigned char threshold = wxIMAGE_ALPHA_THRESHOLD);
 
 
diff --git a/interface/wx/image.h b/interface/wx/image.h
index c14f9f9595..b083796d72 100644
--- a/interface/wx/image.h
+++ b/interface/wx/image.h
@@ -815,7 +815,7 @@ public:
         FindFirstUnusedColour() by this function, see the overload below if you
         this is not appropriate.
 
-        @return @false if FindFirstUnusedColour returns @false, @true otherwise.
+        @return Returns @true on success, @false on error.
     */
     bool ConvertAlphaToMask(unsigned char threshold = wxIMAGE_ALPHA_THRESHOLD);
 
@@ -841,8 +841,9 @@ public:
             are set. Pixels with the alpha values above the threshold are
             considered to be opaque.
 
+        @return Returns @true on success, @false on error.
      */
-    void ConvertAlphaToMask(unsigned char mr, unsigned char mg, unsigned char mb,
+    bool ConvertAlphaToMask(unsigned char mr, unsigned char mg, unsigned char mb,
                             unsigned char threshold = wxIMAGE_ALPHA_THRESHOLD);
 
     /**
diff --git a/src/common/image.cpp b/src/common/image.cpp
index 75f950842b..4a07012039 100644
--- a/src/common/image.cpp
+++ b/src/common/image.cpp
@@ -2020,7 +2020,7 @@ bool wxImage::SetMaskFromImage(const wxImage& mask,
 bool wxImage::ConvertAlphaToMask(unsigned char threshold)
 {
     if ( !HasAlpha() )
-        return true;
+        return false;
 
     unsigned char mr, mg, mb;
     if ( !FindFirstUnusedColour(&mr, &mg, &mb) )
@@ -2029,17 +2029,16 @@ bool wxImage::ConvertAlphaToMask(unsigned char threshold)
         return false;
     }
 
-    ConvertAlphaToMask(mr, mg, mb, threshold);
-    return true;
+    return ConvertAlphaToMask(mr, mg, mb, threshold);
 }
 
-void wxImage::ConvertAlphaToMask(unsigned char mr,
+bool wxImage::ConvertAlphaToMask(unsigned char mr,
                                  unsigned char mg,
                                  unsigned char mb,
                                  unsigned char threshold)
 {
     if ( !HasAlpha() )
-        return;
+        return false;
 
     AllocExclusive();
 
@@ -2070,6 +2069,8 @@ void wxImage::ConvertAlphaToMask(unsigned char mr,
 
     M_IMGDATA->m_alpha = NULL;
     M_IMGDATA->m_staticAlpha = false;
+
+    return true;
 }
 
 // ----------------------------------------------------------------------------