]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/bitmap.h
Implement deep copy of wxBitmapRefData
[wxWidgets.git] / include / wx / msw / bitmap.h
index 332da5790c3dde353f46705f967ecad12b6cbb5f..695030e45388e855cb159615c278aa1d3e82d1aa 100644 (file)
@@ -13,7 +13,6 @@
 #define _WX_BITMAP_H_
 
 #include "wx/msw/gdiimage.h"
-#include "wx/gdicmn.h"
 #include "wx/palette.h"
 
 class WXDLLEXPORT wxBitmap;
@@ -46,6 +45,12 @@ public:
 
     // Initialize with XPM data
     wxBitmap(const char* const* data);
+#ifdef wxNEEDS_CHARPP
+    wxBitmap(char** data)
+    {
+        *this = wxBitmap(wx_const_cast(const char* const*, data));
+    }
+#endif
 
     // Load a file or resource
     wxBitmap(const wxString& name, wxBitmapType type = wxBITMAP_TYPE_BMP_RESOURCE);
@@ -133,9 +138,6 @@ public:
     wxBitmap GetMaskBitmap() const;
     void SetMask(wxMask *mask);
 
-    bool operator==(const wxBitmap& bitmap) const { return m_refData == bitmap.m_refData; }
-    bool operator!=(const wxBitmap& bitmap) const { return m_refData != bitmap.m_refData; }
-
     // these functions are internal and shouldn't be used, they risk to
     // disappear in the future
     bool HasAlpha() const;
@@ -195,6 +197,9 @@ class WXDLLEXPORT wxMask : public wxObject
 public:
     wxMask();
 
+    // Copy constructor
+    wxMask(const wxMask &mask);
+
     // Construct a mask from a bitmap and a colour indicating the transparent
     // area
     wxMask(const wxBitmap& bitmap, const wxColour& colour);
@@ -232,7 +237,7 @@ protected:
 class WXDLLEXPORT wxBitmapHandler : public wxGDIImageHandler
 {
 public:
-    wxBitmapHandler() { m_type = wxBITMAP_TYPE_INVALID; }
+    wxBitmapHandler() { }
     wxBitmapHandler(const wxString& name, const wxString& ext, long type)
         : wxGDIImageHandler(name, ext, type)
     {