| Version: 3.3.1

Public Types | Public Member Functions | List of all members
wxIconBundle Class Reference
Class List by Category » Graphics Device Interface (GDI)

`#include <wx/iconbndl.h>`

Inheritance diagram for wxIconBundle:
[legend]

## Detailed Description

This class contains multiple copies of an icon in different sizes.

It is typically used in wxDialog::SetIcons and wxTopLevelWindow::SetIcons.

##

Library: wxCore
Category: Graphics Device Interface (GDI)

Predefined objects/pointers: wxNullIconBundle

## Public Types
enum | { FALLBACK_NONE = 0 , FALLBACK_SYSTEM = 1 , FALLBACK_NEAREST_LARGER = 2 }
| The elements of this enum determine what happens if GetIcon() doesn't find the icon of exactly the requested size. More...

## Public Member Functions
| wxIconBundle ()
| Default ctor. More...
| wxIconBundle (const wxString &file, wxBitmapType type=wxBITMAP_TYPE_ANY)
| Initializes the bundle with the icon(s) found in the file. More...
| wxIconBundle (wxInputStream &stream, wxBitmapType type=wxBITMAP_TYPE_ANY)
| Initializes the bundle with the icon(s) found in the stream. More...
| wxIconBundle (const wxIcon &icon)
| Initializes the bundle with a single icon. More...
| wxIconBundle (const wxString &resourceName, WXHINSTANCE module)
| Initializes the bundle with all sizes of a group icon with resourceName stored as an MS Windows resource in module. More...
| wxIconBundle (const wxIconBundle &ic)
| Copy constructor. More...
virtual | ~wxIconBundle ()
| Destructor. More...
void | AddIcon (const wxString &file, wxBitmapType type=wxBITMAP_TYPE_ANY)
| Adds all the icons contained in the file to the bundle; if the collection already contains icons with the same width and height, they are replaced by the new ones. More...
void | AddIcon (wxInputStream &stream, wxBitmapType type=wxBITMAP_TYPE_ANY)
| Adds all the icons contained in the stream to the bundle; if the collection already contains icons with the same width and height, they are replaced by the new ones. More...
void | AddIcon (const wxString &resourceName, WXHINSTANCE module)
| Loads all sizes of a group icon with resourceName stored as an MS Windows resource in module. More...
void | AddIcon (const wxIcon &icon)
| Adds the icon to the collection; if the collection already contains an icon with the same width and height, it is replaced by the new one. More...
wxIcon | GetIcon (const wxSize &size, int flags=FALLBACK_SYSTEM) const
| Returns the icon with the given size. More...
wxIcon | GetIcon (wxCoord size=wxDefaultCoord, int flags=FALLBACK_SYSTEM) const
| Same as. More...
wxIcon | GetIconOfExactSize (const wxSize &size) const
| Returns the icon with exactly the given size or wxNullIcon if this size is not available. More...
size_t | GetIconCount () const
| return the number of available icons More...
wxIcon | GetIconByIndex (size_t n) const
| return the icon at index (must be < GetIconCount()) More...
bool | IsEmpty () const
| Returns true if the bundle doesn't contain any icons, false otherwise (in which case a call to GetIcon() with default parameter should return a valid icon). More...
wxIconBundle & | operator= (const wxIconBundle &ic)
| Assignment operator, using reference counting. More...
Public Member Functions inherited from wxGDIObject
| wxGDIObject ()
| Default constructor. More...
Public Member Functions inherited from wxObject
| wxObject ()
| Default ctor; initializes to nullptr the internal reference data. More...
| wxObject (const wxObject &other)
| Copy ctor. More...
virtual | ~wxObject ()
| Destructor. More...
virtual wxClassInfo * | GetClassInfo () const
| This virtual function is redefined for every class that requires run-time type information, when using the wxDECLARE_CLASS macro (or similar). More...
wxObjectRefData * | GetRefData () const
| Returns the wxObject::m_refData pointer, i.e. the data referenced by this object. More...
bool | IsKindOf (const wxClassInfo *info) const
| Determines whether this class is a subclass of (or the same class as) the given class. More...
bool | IsSameAs (const wxObject &obj) const
| Returns true if this object has the same data pointer as obj. More...
void | Ref (const wxObject &clone)
| Makes this object refer to the data in clone. More...
void | SetRefData (wxObjectRefData *data)
| Sets the wxObject::m_refData pointer. More...
void | UnRef ()
| Decrements the reference count in the associated data, and if it is zero, deletes the data. More...
void | UnShare ()
| This is the same of AllocExclusive() but this method is public. More...
void | operator delete (void *buf)
| The delete operator is defined for debugging versions of the library only, when the identifier `__WXDEBUG__` is defined. More...
void * | operator new (size_t size, const wxString &filename=nullptr, int lineNum=0)
| The new operator is defined for debugging versions of the library only, when the identifier `__WXDEBUG__` is defined. More...

## Additional Inherited Members
Protected Member Functions inherited from wxObject
void | AllocExclusive ()
| Ensure that this object's data is not shared with any other object. More...
virtual wxObjectRefData * | CreateRefData () const
| Creates a new instance of the wxObjectRefData-derived class specific to this object and returns it. More...
virtual wxObjectRefData * | CloneRefData (const wxObjectRefData *data) const
| Creates a new instance of the wxObjectRefData-derived class specific to this object and initializes it copying data. More...
Protected Attributes inherited from wxObject
wxObjectRefData * | m_refData
| Pointer to an object which is the object's reference-counted data. More...

## Member Enumeration Documentation

## ◆ anonymous enum

anonymous enum

The elements of this enum determine what happens if GetIcon() doesn't find the icon of exactly the requested size.

Since
  2.9.4

Enumerator
FALLBACK_NONE | Return invalid icon if exact size is not found.
FALLBACK_SYSTEM | Return the icon of the system icon size if exact size is not found. May be combined with other non-NONE enum elements to determine what happens if the system icon size is not found either.
FALLBACK_NEAREST_LARGER | Return the icon of closest larger size or, if there is no icon of larger size in the bundle, the closest icon of smaller size.

## Constructor & Destructor Documentation

## ◆ wxIconBundle() [1/6]

wxIconBundle::wxIconBundle | ( |  | ) |

Default ctor.

## ◆ wxIconBundle() [2/6]

wxIconBundle::wxIconBundle | ( | const wxString & | file,
|  | wxBitmapType | type = `wxBITMAP_TYPE_ANY`
| ) |  |

Initializes the bundle with the icon(s) found in the file.

## ◆ wxIconBundle() [3/6]

wxIconBundle::wxIconBundle | ( | wxInputStream & | stream,
|  | wxBitmapType | type = `wxBITMAP_TYPE_ANY`
| ) |  |

Initializes the bundle with the icon(s) found in the stream.

Notice that the stream must be seekable, at least if it contains more than one icon. The stream pointer is positioned after the last icon read from the stream when this function returns.

Since
  2.9.0

## ◆ wxIconBundle() [4/6]

wxIconBundle::wxIconBundle | ( | const wxIcon & | icon | ) |

Initializes the bundle with a single icon.

## ◆ wxIconBundle() [5/6]

wxIconBundle::wxIconBundle | ( | const wxString & | resourceName,
|  | WXHINSTANCE | module
| ) |  |

Initializes the bundle with all sizes of a group icon with resourceName stored as an MS Windows resource in module.

When module is 0, the current instance is used.

See also
  AddIcon(const wxString&, WXHINSTANCE)

Availability: only available for the wxMSW port.

Since
  3.1.1

## ◆ wxIconBundle() [6/6]

wxIconBundle::wxIconBundle | ( | const wxIconBundle & | ic | ) |

Copy constructor.

## ◆ ~wxIconBundle()

virtual wxIconBundle::~wxIconBundle | ( |  | ) |
| virtual

Destructor.

## Member Function Documentation

## ◆ AddIcon() [1/4]

void wxIconBundle::AddIcon | ( | const wxIcon & | icon | ) |

Adds the icon to the collection; if the collection already contains an icon with the same width and height, it is replaced by the new one.

## ◆ AddIcon() [2/4]

void wxIconBundle::AddIcon | ( | const wxString & | file,
|  | wxBitmapType | type = `wxBITMAP_TYPE_ANY`
| ) |  |

Adds all the icons contained in the file to the bundle; if the collection already contains icons with the same width and height, they are replaced by the new ones.

## ◆ AddIcon() [3/4]

void wxIconBundle::AddIcon | ( | const wxString & | resourceName,
|  | WXHINSTANCE | module
| ) |  |

Loads all sizes of a group icon with resourceName stored as an MS Windows resource in module.

When module is 0, the current instance is used.

Availability: only available for the wxMSW port.

Since
  3.1.1

## ◆ AddIcon() [4/4]

void wxIconBundle::AddIcon | ( | wxInputStream & | stream,
|  | wxBitmapType | type = `wxBITMAP_TYPE_ANY`
| ) |  |

Adds all the icons contained in the stream to the bundle; if the collection already contains icons with the same width and height, they are replaced by the new ones.

Notice that, as well as in the constructor loading the icon bundle from stream, the stream must be seekable, at least if more than one icon is to be loaded from it.

Since
  2.9.0

## ◆ GetIcon() [1/2]

wxIcon wxIconBundle::GetIcon | ( | const wxSize & | size,
|  | int | flags = `FALLBACK_SYSTEM`
| ) |  | const

Returns the icon with the given size.

If size is wxDefaultSize, it is interpreted as the standard system icon size, i.e. the size returned by wxSystemSettings::GetMetric() for `wxSYS_ICON_X` and `wxSYS_ICON_Y`.

If the bundle contains an icon with exactly the requested size, it's always returned. Otherwise, the behaviour depends on the flags. If only wxIconBundle::FALLBACK_NONE is given, the function returns an invalid icon. If wxIconBundle::FALLBACK_SYSTEM is given, it tries to find the icon of standard system size, regardless of the size passed as parameter. Otherwise, or if the icon system size is not found either, but wxIconBundle::FALLBACK_NEAREST_LARGER flag is specified, the function returns the smallest icon of the size larger than the requested one or, if this fails too, just the icon closest to the specified size.

The flags parameter is available only since wxWidgets 2.9.4.

## ◆ GetIcon() [2/2]

wxIcon wxIconBundle::GetIcon | ( | wxCoord | size = `wxDefaultCoord`,
|  | int | flags = `FALLBACK_SYSTEM`
| ) |  | const

Same as.

GetIcon( wxSize( size, size ) )
wxIconBundle::GetIcon
wxIcon GetIcon(const wxSize &size, int flags=FALLBACK_SYSTEM) const
Returns the icon with the given size.
wxSize
A wxSize is a useful data structure for graphics operations.
Definition: gdicmn.h:1039

.

## ◆ GetIconByIndex()

wxIcon wxIconBundle::GetIconByIndex | ( | size_t | n | ) | const

return the icon at index (must be < GetIconCount())

## ◆ GetIconCount()

size_t wxIconBundle::GetIconCount | ( |  | ) | const

return the number of available icons

## ◆ GetIconOfExactSize()

wxIcon wxIconBundle::GetIconOfExactSize | ( | const wxSize & | size | ) | const

Returns the icon with exactly the given size or wxNullIcon if this size is not available.

## ◆ IsEmpty()

bool wxIconBundle::IsEmpty | ( |  | ) | const

Returns true if the bundle doesn't contain any icons, false otherwise (in which case a call to GetIcon() with default parameter should return a valid icon).

## ◆ operator=()

wxIconBundle& wxIconBundle::operator= | ( | const wxIconBundle & | ic | ) |

Assignment operator, using reference counting.