#ifndef _WX_ICON_H_
#define _WX_ICON_H_
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-#pragma interface "icon.h"
-#endif
-
#include "wx/bitmap.h"
// Icon
-class WXDLLEXPORT wxIcon: public wxBitmap
+class WXDLLIMPEXP_CORE wxIcon : public wxGDIObject
{
public:
- wxIcon();
-
- // Copy constructors
- wxIcon(const wxIcon& icon)
- : wxBitmap()
- { Ref(icon); }
+ wxIcon();
- wxIcon(const char **data);
- wxIcon(char **data);
- wxIcon(const char bits[], int width , int height );
- wxIcon(const wxString& name, int flags = wxBITMAP_TYPE_ICON_RESOURCE,
+ 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);
- wxIcon(const wxIconLocation& loc)
- {
+ wxIcon(const wxIconLocation& loc)
+ {
LoadFile(loc.GetFileName(), wxBITMAP_TYPE_ICON);
- }
- ~wxIcon();
+ }
+
+ wxIcon(WXHICON icon, const wxSize& size);
- bool LoadFile(const wxString& name, wxBitmapType flags /* = wxBITMAP_TYPE_ICON_RESOURCE */ ,
+ 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 )
+ 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);
+ // 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);
+
+ int GetWidth() const;
+ int GetHeight() const;
+ int GetDepth() const;
+ void SetWidth(int w);
+ void SetHeight(int h);
+ void SetDepth(int d);
+ void SetOk(bool isOk);
+
+ WXHICON GetHICON() const ;
+
+protected:
+ virtual wxGDIRefData *CreateGDIRefData() const;
+ virtual wxGDIRefData *CloneGDIRefData(const wxGDIRefData *data) const;
- DECLARE_DYNAMIC_CLASS(wxIcon)
+private:
+ DECLARE_DYNAMIC_CLASS(wxIcon)
};
/*
-class WXDLLEXPORT wxICONFileHandler: public wxBitmapHandler
+class WXDLLIMPEXP_CORE wxICONFileHandler: public wxBitmapHandler
{
DECLARE_DYNAMIC_CLASS(wxICONFileHandler)
public:
};
*/
-class WXDLLEXPORT wxICONResourceHandler: public wxBitmapHandler
+class WXDLLIMPEXP_CORE wxICONResourceHandler: public wxBitmapHandler
{
DECLARE_DYNAMIC_CLASS(wxICONResourceHandler)
public: