<class name="QIconEngine" doc="/**
&lt;p&gt;The &lt;a href=&quot;QIconEngine.html#QIconEngine()&quot;&gt;&lt;tt&gt;QIconEngine&lt;/tt&gt;&lt;/a&gt; class provides an abstract base class for &lt;a href=&quot;QIcon.html&quot;&gt;&lt;tt&gt;QIcon&lt;/tt&gt;&lt;/a&gt; renderers.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Use &lt;a href=&quot;QIconEngineV2.html&quot;&gt;&lt;tt&gt;QIconEngineV2&lt;/tt&gt;&lt;/a&gt; instead.&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;An icon engine provides the rendering functions for a &lt;a href=&quot;QIcon.html&quot;&gt;&lt;tt&gt;QIcon&lt;/tt&gt;&lt;/a&gt;. Each icon has a corresponding icon engine that is responsible for drawing the icon with a requested size, mode and state.&lt;/p&gt;
&lt;p&gt;The icon is rendered by the &lt;a href=&quot;QIconEngine.html#paint(com.trolltech.qt.gui.QPainter, com.trolltech.qt.core.QRect, com.trolltech.qt.gui.QIcon.Mode, com.trolltech.qt.gui.QIcon.State)&quot;&gt;&lt;tt&gt;paint&lt;/tt&gt;&lt;/a&gt; function, and the icon can additionally be obtained as a pixmap with the &lt;a href=&quot;QIconEngine.html#pixmap(com.trolltech.qt.core.QSize, com.trolltech.qt.gui.QIcon.Mode, com.trolltech.qt.gui.QIcon.State)&quot;&gt;&lt;tt&gt;pixmap&lt;/tt&gt;&lt;/a&gt; function (the default implementation simply uses &lt;a href=&quot;QIconEngine.html#paint(com.trolltech.qt.gui.QPainter, com.trolltech.qt.core.QRect, com.trolltech.qt.gui.QIcon.Mode, com.trolltech.qt.gui.QIcon.State)&quot;&gt;&lt;tt&gt;paint&lt;/tt&gt;&lt;/a&gt; to achieve this). The &lt;a href=&quot;QIconEngine.html#addPixmap(com.trolltech.qt.gui.QPixmap, com.trolltech.qt.gui.QIcon.Mode, com.trolltech.qt.gui.QIcon.State)&quot;&gt;&lt;tt&gt;addPixmap&lt;/tt&gt;&lt;/a&gt; function can be used to add new pixmaps to the icon engine, and is used by &lt;a href=&quot;QIcon.html&quot;&gt;&lt;tt&gt;QIcon&lt;/tt&gt;&lt;/a&gt; to add specialized custom pixmaps.&lt;/p&gt;
&lt;p&gt;The &lt;a href=&quot;QIconEngine.html#paint(com.trolltech.qt.gui.QPainter, com.trolltech.qt.core.QRect, com.trolltech.qt.gui.QIcon.Mode, com.trolltech.qt.gui.QIcon.State)&quot;&gt;&lt;tt&gt;paint&lt;/tt&gt;&lt;/a&gt;, &lt;a href=&quot;QIconEngine.html#pixmap(com.trolltech.qt.core.QSize, com.trolltech.qt.gui.QIcon.Mode, com.trolltech.qt.gui.QIcon.State)&quot;&gt;&lt;tt&gt;pixmap&lt;/tt&gt;&lt;/a&gt;, and &lt;a href=&quot;QIconEngine.html#addPixmap(com.trolltech.qt.gui.QPixmap, com.trolltech.qt.gui.QIcon.Mode, com.trolltech.qt.gui.QIcon.State)&quot;&gt;&lt;tt&gt;addPixmap&lt;/tt&gt;&lt;/a&gt; functions are all virtual, and can therefore be reimplemented in subclasses of &lt;a href=&quot;QIconEngine.html#QIconEngine()&quot;&gt;&lt;tt&gt;QIconEngine&lt;/tt&gt;&lt;/a&gt;.&lt;/p&gt;

@see &lt;a href=&quot;QIconEngineV2.html&quot;&gt;&lt;tt&gt;QIconEngineV2&lt;/tt&gt;&lt;/a&gt;
@see &lt;tt&gt;QIconEnginePlugin&lt;/tt&gt; */">
    <method name="public QIconEngine()"/>
    <method name="public com.trolltech.qt.core.QSize actualSize(com.trolltech.qt.core.QSize size, com.trolltech.qt.gui.QIcon.Mode mode, com.trolltech.qt.gui.QIcon.State state)" doc="/**
&lt;p&gt;Returns the actual size of the icon the engine provides for the requested &lt;tt&gt;size&lt;/tt&gt;, &lt;tt&gt;mode&lt;/tt&gt; and &lt;tt&gt;state&lt;/tt&gt;. The default implementation returns the given &lt;tt&gt;size&lt;/tt&gt;.&lt;/p&gt;
 */"/>
    <method name="public void addFile(java.lang.String fileName, com.trolltech.qt.core.QSize size, com.trolltech.qt.gui.QIcon.Mode mode, com.trolltech.qt.gui.QIcon.State state)" doc="/**
&lt;p&gt;Called by QIcon::addFile(). Adds a specialized pixmap from the file with the given &lt;tt&gt;fileName&lt;/tt&gt;, &lt;tt&gt;size&lt;/tt&gt;, &lt;tt&gt;mode&lt;/tt&gt; and &lt;tt&gt;state&lt;/tt&gt;. The default pixmap-based engine stores any supplied file names, and it loads the pixmaps on demand instead of using scaled pixmaps if the size of a pixmap matches the size of icon requested. Custom icon engines that implement scalable vector formats are free to ignores any extra files.&lt;/p&gt;
 */"/>
    <method name="public void addPixmap(com.trolltech.qt.gui.QPixmap pixmap, com.trolltech.qt.gui.QIcon.Mode mode, com.trolltech.qt.gui.QIcon.State state)" doc="/**
&lt;p&gt;Called by QIcon::addPixmap(). Adds a specialized &lt;tt&gt;pixmap&lt;/tt&gt; for the given &lt;tt&gt;mode&lt;/tt&gt; and &lt;tt&gt;state&lt;/tt&gt;. The default pixmap-based engine stores any supplied pixmaps, and it uses them instead of scaled pixmaps if the size of a pixmap matches the size of icon requested. Custom icon engines that implement scalable vector formats are free to ignores any extra pixmaps.&lt;/p&gt;
 */"/>
    <method name="public abstract void paint(com.trolltech.qt.gui.QPainter painter, com.trolltech.qt.core.QRect rect, com.trolltech.qt.gui.QIcon.Mode mode, com.trolltech.qt.gui.QIcon.State state)" doc="/**
&lt;p&gt;Uses the given &lt;tt&gt;painter&lt;/tt&gt; to paint the icon with the required &lt;tt&gt;mode&lt;/tt&gt; and &lt;tt&gt;state&lt;/tt&gt; into the rectangle &lt;tt&gt;rect&lt;/tt&gt;.&lt;/p&gt;
 */"/>
    <method name="public com.trolltech.qt.gui.QPixmap pixmap(com.trolltech.qt.core.QSize size, com.trolltech.qt.gui.QIcon.Mode mode, com.trolltech.qt.gui.QIcon.State state)" doc="/**
&lt;p&gt;Returns the icon as a pixmap with the required &lt;tt&gt;size&lt;/tt&gt;, &lt;tt&gt;mode&lt;/tt&gt;, and &lt;tt&gt;state&lt;/tt&gt;. The default implementation creates a new pixmap and calls &lt;a href=&quot;QIconEngine.html#paint(com.trolltech.qt.gui.QPainter, com.trolltech.qt.core.QRect, com.trolltech.qt.gui.QIcon.Mode, com.trolltech.qt.gui.QIcon.State)&quot;&gt;&lt;tt&gt;paint&lt;/tt&gt;&lt;/a&gt; to fill it.&lt;/p&gt;
 */"/>
</class>
