// Purpose: interface of wxIconBundle
// Author: wxWidgets team
// RCS-ID: $Id$
-// Licence: wxWindows license
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
/**
/**
Initializes the bundle with the icon(s) found in the file.
*/
- wxIconBundle(const wxString& file, wxBitmapType type);
+ wxIconBundle(const wxString& file, wxBitmapType type = wxBITMAP_TYPE_ANY);
+
+ /**
+ Initializes the bundle with the icon(s) found in the stream.
+
+ Notice that the @a 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(wxInputStream& stream, wxBitmapType type = wxBITMAP_TYPE_ANY);
/**
Initializes the bundle with a single icon.
virtual ~wxIconBundle();
/**
- 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.
+ 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.
*/
- void AddIcon(const wxString& file, wxBitmapType type);
+ void AddIcon(const wxString& file, 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 @a stream must be seekable, at least if more than one icon
+ is to be loaded from it.
+
+ @since 2.9.0
+ */
+ void AddIcon(wxInputStream& stream, wxBitmapType type = wxBITMAP_TYPE_ANY);
/**
Adds the icon to the collection; if the collection already
/**
Same as @code GetIcon( wxSize( size, size ) ) @endcode.
*/
- const wxIcon GetIcon(wxCoord size = -1) const;
+ wxIcon GetIcon(wxCoord size = wxDefaultCoord) const;
/**
Returns the icon with exactly the given size or ::wxNullIcon if this
wxIcon GetIconOfExactSize(const wxSize& size) 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).
+ return the number of available icons
*/
- bool IsEmpty() const;
+ size_t GetIconCount() const;
/**
- Assignment operator, using @ref overview_refcount "reference counting".
+ return the icon at index (must be < GetIconCount())
*/
- wxIconBundle operator =(const wxIconBundle& ic);
+ wxIcon GetIconByIndex(size_t n) const;
/**
- Equality operator. This returns @true if two icon bundles are equal.
+ 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).
*/
- bool operator ==(const wxIconBundle& ic);
+ bool IsEmpty() const;
/**
- Inequality operator. This returns true if two icon bundles are not equal.
+ Assignment operator, using @ref overview_refcount "reference counting".
*/
- bool operator !=(const wxIconBundle& ic);
+ wxIconBundle& operator=(const wxIconBundle& ic);
+
};