]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/mac/carbon/icon.h
Cast for argument to delete[] - VC6 doesn't want to delete a const pointer
[wxWidgets.git] / include / wx / mac / carbon / icon.h
index 64bdcc74ff8ba089dee958fa6d5b20ad1a43b0b8..754a5344c14334a5eba83a854eee4390248af294 100644 (file)
 #include "wx/bitmap.h"
 
 // Icon
-class WXDLLEXPORT wxIcon: public wxGDIObject
+class WXDLLIMPEXP_CORE wxIcon : public wxGDIObject
 {
 public:
     wxIcon();
 
-    // Copy constructors
-    wxIcon(const wxIcon& icon)
-        : wxGDIObject()
-    {
-        Ref(icon);
-    }
-
-    wxIcon(const char **data);
-    wxIcon(char **data);
+    wxIcon(const char* const* data);
     wxIcon(const char bits[], int width , int height );
     wxIcon(const wxString& name, int flags = wxBITMAP_TYPE_ICON_RESOURCE,
          int desiredWidth = -1, int desiredHeight = -1);
@@ -36,24 +28,22 @@ public:
     {
       LoadFile(loc.GetFileName(), wxBITMAP_TYPE_ICON);
     }
-    ~wxIcon();
+
+    wxIcon(WXHICON icon, const wxSize& size);
+
+    virtual ~wxIcon();
 
     bool LoadFile(const wxString& name, wxBitmapType flags /* = wxBITMAP_TYPE_ICON_RESOURCE */ ,
       int desiredWidth /* = -1 */ , int desiredHeight = -1);
     bool LoadFile(const wxString& name ,wxBitmapType flags = wxBITMAP_TYPE_ICON_RESOURCE )
       { return LoadFile( name , flags , -1 , -1 ) ; }
 
-    wxIcon& operator=(const wxIcon& icon)
-    { if (this != &icon) Ref(icon); return *this; }
-    bool operator==(const wxIcon& icon) const { return m_refData == icon.m_refData; }
-    bool operator!=(const wxIcon& icon) const { return !(*this == icon); }
 
     // create from bitmap (which should have a mask unless it's monochrome):
     // there shouldn't be any implicit bitmap -> icon conversion (i.e. no
     // ctors, assignment operators...), but it's ok to have such function
     void CopyFromBitmap(const wxBitmap& bmp);
 
-    bool Ok() const;
     int GetWidth() const;
     int GetHeight() const;
     int GetDepth() const;
@@ -64,11 +54,16 @@ public:
 
     WXHICON GetHICON() const ;
 
+protected:
+    virtual wxGDIRefData *CreateGDIRefData() const;
+    virtual wxGDIRefData *CloneGDIRefData(const wxGDIRefData *data) const;
+
+private:
     DECLARE_DYNAMIC_CLASS(wxIcon)
 };
 
 /*
-class WXDLLEXPORT wxICONFileHandler: public wxBitmapHandler
+class WXDLLIMPEXP_CORE wxICONFileHandler: public wxBitmapHandler
 {
   DECLARE_DYNAMIC_CLASS(wxICONFileHandler)
 public:
@@ -84,7 +79,7 @@ public:
 };
 */
 
-class WXDLLEXPORT wxICONResourceHandler: public wxBitmapHandler
+class WXDLLIMPEXP_CORE wxICONResourceHandler: public wxBitmapHandler
 {
   DECLARE_DYNAMIC_CLASS(wxICONResourceHandler)
 public: