![]() |
Qt 6.x
The Qt SDK
|
#include <qicon_p.h>
Public Member Functions | |
QPixmapIconEngine () | |
QPixmapIconEngine (const QPixmapIconEngine &) | |
~QPixmapIconEngine () | |
void | paint (QPainter *painter, const QRect &rect, QIcon::Mode mode, QIcon::State state) override |
Uses the given painter to paint the icon with the required mode and state into the rectangle rect. | |
QPixmap | pixmap (const QSize &size, QIcon::Mode mode, QIcon::State state) override |
Returns the icon as a pixmap with the required size, mode, and state. | |
QPixmap | scaledPixmap (const QSize &size, QIcon::Mode mode, QIcon::State state, qreal scale) override |
QPixmapIconEngineEntry * | bestMatch (const QSize &size, qreal scale, QIcon::Mode mode, QIcon::State state, bool sizeOnly) |
QSize | actualSize (const QSize &size, QIcon::Mode mode, QIcon::State state) override |
Returns the actual size of the icon the engine provides for the requested size, mode and state. | |
QList< QSize > | availableSizes (QIcon::Mode mode, QIcon::State state) override |
void | addPixmap (const QPixmap &pixmap, QIcon::Mode mode, QIcon::State state) override |
Called by QIcon::addPixmap(). | |
void | addFile (const QString &fileName, const QSize &size, QIcon::Mode mode, QIcon::State state) override |
Called by QIcon::addFile(). | |
QString | key () const override |
\variable QIconEngine::ScaledPixmapArgument::size | |
QIconEngine * | clone () const override |
Reimplement this method to return a clone of this icon engine. | |
bool | read (QDataStream &in) override |
Reads icon engine contents from the QDataStream in. | |
bool | write (QDataStream &out) const override |
Writes the contents of this engine to the QDataStream out. | |
![]() | |
QIconEngine () | |
virtual | ~QIconEngine () |
Destroys the icon engine. | |
virtual void | paint (QPainter *painter, const QRect &rect, QIcon::Mode mode, QIcon::State state)=0 |
Uses the given painter to paint the icon with the required mode and state into the rectangle rect. | |
virtual QSize | actualSize (const QSize &size, QIcon::Mode mode, QIcon::State state) |
Returns the actual size of the icon the engine provides for the requested size, mode and state. | |
virtual QPixmap | pixmap (const QSize &size, QIcon::Mode mode, QIcon::State state) |
Returns the icon as a pixmap with the required size, mode, and state. | |
virtual void | addPixmap (const QPixmap &pixmap, QIcon::Mode mode, QIcon::State state) |
Called by QIcon::addPixmap(). | |
virtual void | addFile (const QString &fileName, const QSize &size, QIcon::Mode mode, QIcon::State state) |
Called by QIcon::addFile(). | |
virtual QString | key () const |
\variable QIconEngine::ScaledPixmapArgument::size | |
virtual QIconEngine * | clone () const =0 |
Reimplement this method to return a clone of this icon engine. | |
virtual bool | read (QDataStream &in) |
Reads icon engine contents from the QDataStream in. | |
virtual bool | write (QDataStream &out) const |
Writes the contents of this engine to the QDataStream out. | |
virtual QList< QSize > | availableSizes (QIcon::Mode mode=QIcon::Normal, QIcon::State state=QIcon::Off) |
virtual QString | iconName () |
virtual bool | isNull () |
virtual QPixmap | scaledPixmap (const QSize &size, QIcon::Mode mode, QIcon::State state, qreal scale) |
virtual void | virtual_hook (int id, void *data) |
Friends | |
class | QIconThemeEngine |
Q_GUI_EXPORT QDataStream & | operator<< (QDataStream &s, const QIcon &icon) |
Additional Inherited Members | |
![]() | |
enum | IconEngineHook { IsNullHook = 3 , ScaledPixmapHook } |
![]() | |
QIconEngine (const QIconEngine &other) | |
QPixmapIconEngine::QPixmapIconEngine | ( | ) |
QPixmapIconEngine::QPixmapIconEngine | ( | const QPixmapIconEngine & | other | ) |
|
overridevirtual |
Returns the actual size of the icon the engine provides for the requested size, mode and state.
The default implementation returns the given size.
Reimplemented from QIconEngine.
Definition at line 328 of file qicon.cpp.
References actualSize(), bestMatch(), QSize::height(), QSize::isNull(), Qt::KeepAspectRatio, QSize::scale(), QPixmapIconEngineEntry::size, state, and QSize::width().
Referenced by actualSize(), and scaledPixmap().
|
overridevirtual |
Called by QIcon::addFile().
Adds a specialized pixmap from the file with the given fileName, size, mode and state. 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.
Reimplemented from QIconEngine.
Definition at line 420 of file qicon.cpp.
References QFileInfo::absoluteFilePath(), QList< T >::append(), QList< T >::at(), fileName, findBySize(), i, QList< T >::isEmpty(), origIcoDepth(), position(), and state.
Referenced by read().
|
overridevirtual |
Called by QIcon::addPixmap().
Adds a specialized pixmap for the given mode and state. 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.
Reimplemented from QIconEngine.
Definition at line 363 of file qicon.cpp.
References QString::clear(), QPixmapIconEngineEntry::fileName, QPixmapIconEngineEntry::pixmap, pixmap, QPixmapIconEngineEntry::scale, QPixmapIconEngineEntry::size, and state.
|
overridevirtual |
Returns sizes of all images that are contained in the engine for the specific mode and state.
Reimplemented from QIconEngine.
Reimplemented in QWindowsFileIconEngine.
Definition at line 348 of file qicon.cpp.
References QPixmapIconEngineEntry::fileName, i, QSize::isEmpty(), QPixmap::isNull(), QPixmapIconEngineEntry::mode, QPixmapIconEngineEntry::pixmap, QPixmapIconEngineEntry::size, QPixmap::size(), QList< T >::size(), QPixmapIconEngineEntry::state, and state.
Referenced by QAbstractFileIconEngine::actualSize().
QPixmapIconEngineEntry * QPixmapIconEngine::bestMatch | ( | const QSize & | size, |
qreal | scale, | ||
QIcon::Mode | mode, | ||
QIcon::State | state, | ||
bool | sizeOnly | ||
) |
Definition at line 211 of file qicon.cpp.
References QIcon::Active, QIcon::Disabled, QPixmapIconEngineEntry::fileName, QPixmap::isNull(), QSize::isNull(), QSize::isValid(), QIcon::Normal, QIcon::Off, QIcon::On, QPixmapIconEngineEntry::pixmap, QIcon::Selected, QPixmapIconEngineEntry::size, QPixmap::size(), and state.
Referenced by actualSize(), and scaledPixmap().
|
overridevirtual |
Reimplement this method to return a clone of this icon engine.
Implements QIconEngine.
Definition at line 470 of file qicon.cpp.
References QPixmapIconEngine().
|
overridevirtual |
\variable QIconEngine::ScaledPixmapArgument::size
The requested size of the pixmap.
\variable QIconEngine::ScaledPixmapArgument::mode
The requested mode of the pixmap.
\variable QIconEngine::ScaledPixmapArgument::state
The requested state of the pixmap.
\variable QIconEngine::ScaledPixmapArgument::scale
The requested scale of the pixmap.
\variable QIconEngine::ScaledPixmapArgument::pixmap
The pixmap that is the best match for the given \l size, \l mode, \l state, and \l scale. This is an output parameter that is set after calling \l virtual_hook().
Returns a key that identifies this icon engine.
Reimplemented from QIconEngine.
Definition at line 465 of file qicon.cpp.
Referenced by QWindowsFileIconEngine::filePixmap().
|
overridevirtual |
Uses the given painter to paint the icon with the required mode and state into the rectangle rect.
Implements QIconEngine.
Definition at line 143 of file qicon.cpp.
References QPainter::device(), dpr(), QPainter::drawPixmap(), painter, qApp, rect, scaledPixmap(), and state.
|
overridevirtual |
Returns the icon as a pixmap with the required size, mode, and state.
The default implementation creates a new pixmap and calls paint() to fill it.
Reimplemented from QIconEngine.
Definition at line 263 of file qicon.cpp.
References scaledPixmap(), and state.
|
overridevirtual |
Reads icon engine contents from the QDataStream in.
Returns true if the contents were read; otherwise returns false
.
QIconEngine's default implementation always return false.
Reimplemented from QIconEngine.
Definition at line 475 of file qicon.cpp.
References addFile(), QList< T >::clear(), fileName, i, QPixmapIconEngineEntry::pixmap, and state.
|
overridevirtual |
Returns a pixmap for the given size, mode, state and scale.
The scale argument is typically equal to the \l {High DPI} {device pixel ratio} of the display.
Reimplemented from QIconEngine.
Definition at line 268 of file qicon.cpp.
References QIcon::Active, actualSize(), QList< T >::at(), bestMatch(), QPixmap::cacheKey(), QPalette::cacheKey(), QPixmapCache::find(), QObjectPrivate::get(), QSize::height(), Qt::IgnoreAspectRatio, QPixmapCache::insert(), QList< T >::isEmpty(), QPixmap::isNull(), QSize::isNull(), Qt::KeepAspectRatio, QPixmapIconEngineEntry::mode, QIcon::Normal, QGuiApplication::palette(), QPixmapIconEngineEntry::pixmap, pixmap, qApp, QList< T >::remove(), QSize::scale(), QPixmap::scaled(), QPixmap::size(), QList< T >::size(), Qt::SmoothTransformation, state, and QSize::width().
Referenced by paint(), and pixmap().
|
overridevirtual |
Writes the contents of this engine to the QDataStream out.
Returns true
if the contents were written; otherwise returns false
.
QIconEngine's default implementation always return false.
Reimplemented from QIconEngine.
Definition at line 506 of file qicon.cpp.
References QList< T >::at(), QPixmapIconEngineEntry::fileName, i, QPixmap::isNull(), QPixmapIconEngineEntry::mode, out, QPixmapIconEngineEntry::pixmap, QList< T >::size(), QPixmapIconEngineEntry::size, and QPixmapIconEngineEntry::state.
|
friend |