]> git.saurik.com Git - wxWidgets.git/blob - include/wx/generic/icon.h
prevent crash if panel/kicker is killed, bug 1872724
[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* const* bits);
31 #ifdef wxNEEDS_CHARPP
32 wxIcon(char **bits);
33 #endif
34
35 // For compatibility with wxMSW where desired size is sometimes required to
36 // distinguish between multiple icons in a resource.
37 wxIcon( const wxString& filename,
38 wxBitmapType type = wxICON_DEFAULT_BITMAP_TYPE,
39 int WXUNUSED(desiredWidth)=-1, int WXUNUSED(desiredHeight)=-1 ) :
40 wxBitmap(filename, type)
41 {
42 }
43
44 wxIcon(const wxIconLocation& loc)
45 : wxBitmap(loc.GetFileName(), wxBITMAP_TYPE_ANY)
46 {
47 }
48
49 // create from bitmap (which should have a mask unless it's monochrome):
50 // there shouldn't be any implicit bitmap -> icon conversion (i.e. no
51 // ctors, assignment operators...), but it's ok to have such function
52 void CopyFromBitmap(const wxBitmap& bmp);
53
54 private:
55 DECLARE_DYNAMIC_CLASS(wxIcon)
56 };
57
58 #endif // _WX_GENERIC_ICON_H_