]> git.saurik.com Git - wxWidgets.git/blame_incremental - include/wx/generic/imaglist.h
set eol-style
[wxWidgets.git] / include / wx / generic / imaglist.h
... / ...
CommitLineData
1/////////////////////////////////////////////////////////////////////////////
2// Name: wx/generic/imaglist.h
3// Purpose:
4// Author: Robert Roebling
5// Created: 01/02/97
6// Id:
7// Copyright: (c) 1998 Robert Roebling and Julian Smart
8// Licence: wxWindows licence
9/////////////////////////////////////////////////////////////////////////////
10
11#ifndef __IMAGELISTH_G__
12#define __IMAGELISTH_G__
13
14#include "wx/defs.h"
15#include "wx/list.h"
16#include "wx/icon.h"
17
18class WXDLLIMPEXP_FWD_CORE wxDC;
19class WXDLLIMPEXP_FWD_CORE wxBitmap;
20class WXDLLIMPEXP_FWD_CORE wxColour;
21
22
23class WXDLLEXPORT wxGenericImageList: public wxObject
24{
25public:
26 wxGenericImageList() { m_width = m_height = 0; }
27 wxGenericImageList( int width, int height, bool mask = true, int initialCount = 1 );
28 virtual ~wxGenericImageList();
29 bool Create( int width, int height, bool mask = true, int initialCount = 1 );
30 bool Create();
31
32 virtual int GetImageCount() const;
33 virtual bool GetSize( int index, int &width, int &height ) const;
34
35 int Add( const wxBitmap& bitmap );
36 int Add( const wxBitmap& bitmap, const wxBitmap& mask );
37 int Add( const wxBitmap& bitmap, const wxColour& maskColour );
38 wxBitmap GetBitmap(int index) const;
39 wxIcon GetIcon(int index) const;
40 bool Replace( int index, const wxBitmap &bitmap );
41 bool Replace( int index, const wxBitmap &bitmap, const wxBitmap& mask );
42 bool Remove( int index );
43 bool RemoveAll();
44
45 virtual bool Draw(int index, wxDC& dc, int x, int y,
46 int flags = wxIMAGELIST_DRAW_NORMAL,
47 bool solidBackground = false);
48
49 // Internal use only
50 const wxBitmap *GetBitmapPtr(int index) const;
51private:
52 wxList m_images;
53
54 int m_width;
55 int m_height;
56
57 DECLARE_DYNAMIC_CLASS(wxGenericImageList)
58};
59
60#ifndef wxHAS_NATIVE_IMAGELIST
61
62/*
63 * wxImageList has to be a real class or we have problems with
64 * the run-time information.
65 */
66
67class WXDLLEXPORT wxImageList: public wxGenericImageList
68{
69 DECLARE_DYNAMIC_CLASS(wxImageList)
70
71public:
72 wxImageList() {}
73
74 wxImageList( int width, int height, bool mask = true, int initialCount = 1 )
75 : wxGenericImageList(width, height, mask, initialCount)
76 {
77 }
78};
79#endif // !wxHAS_NATIVE_IMAGELIST
80
81#endif // __IMAGELISTH_G__
82