]> git.saurik.com Git - wxWidgets.git/blob - include/wx/generic/icon.h
moved duplicated wxRegionContain definitions to wx/region.h
[wxWidgets.git] / include / wx / generic / icon.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/generic/icon.h
3 // Purpose: wxIcon implementation for ports where it's same as wxBitmap
4 // Author: Julian Smart
5 // Modified by:
6 // Created: 17/09/98
7 // RCS-ID: $Id$
8 // Copyright: (c) Julian Smart
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_GENERIC_ICON_H_
13 #define _WX_GENERIC_ICON_H_
14
15 #include "wx/bitmap.h"
16
17 //-----------------------------------------------------------------------------
18 // wxIcon
19 //-----------------------------------------------------------------------------
20
21 #ifndef wxICON_DEFAULT_BITMAP_TYPE
22 #define wxICON_DEFAULT_BITMAP_TYPE wxBITMAP_TYPE_XPM
23 #endif
24
25 class WXDLLIMPEXP_CORE wxIcon: public wxBitmap
26 {
27 public:
28 wxIcon();
29
30 wxIcon( const char **bits, int width=-1, int height=-1 );
31 wxIcon( char **bits, int width=-1, int height=-1 );
32
33 // For compatibility with wxMSW where desired size is sometimes required to
34 // distinguish between multiple icons in a resource.
35 wxIcon( const wxString& filename,
36 wxBitmapType type = wxICON_DEFAULT_BITMAP_TYPE,
37 int WXUNUSED(desiredWidth)=-1, int WXUNUSED(desiredHeight)=-1 ) :
38 wxBitmap(filename, type)
39 {
40 }
41
42 wxIcon(const wxIconLocation& loc)
43 : wxBitmap(loc.GetFileName(), wxBITMAP_TYPE_ANY)
44 {
45 }
46
47 bool operator==(const wxIcon& icon) const
48 { return m_refData == icon.m_refData; }
49 bool operator!=(const wxIcon& icon) const
50 { return !(*this == icon); }
51
52 // create from bitmap (which should have a mask unless it's monochrome):
53 // there shouldn't be any implicit bitmap -> icon conversion (i.e. no
54 // ctors, assignment operators...), but it's ok to have such function
55 void CopyFromBitmap(const wxBitmap& bmp);
56
57 private:
58 DECLARE_DYNAMIC_CLASS(wxIcon)
59 };
60
61 #endif // _WX_GENERIC_ICON_H_