![]() |
Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
|
#include <qsvgiconengine.h>
Public Member Functions | |
QSvgIconEngine () | |
QSvgIconEngine (const QSvgIconEngine &other) | |
~QSvgIconEngine () | |
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. | |
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. | |
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 |
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(). | |
bool | isNull () override |
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 QList< QSize > | availableSizes (QIcon::Mode mode=QIcon::Normal, QIcon::State state=QIcon::Off) |
Returns sizes of all images that are contained in the engine for the specific mode and state. | |
virtual QString | iconName () |
Returns the name used to create the engine, if available. | |
virtual void | virtual_hook (int id, void *data) |
Additional method to allow extending QIconEngine without adding new virtual methods (and without breaking binary compatibility). | |
Additional Inherited Members | |
![]() | |
enum | IconEngineHook { IsNullHook = 3 , ScaledPixmapHook } |
These enum values are used for virtual_hook() to allow additional queries to icon engine without breaking binary compatibility. More... | |
![]() | |
QIconEngine (const QIconEngine &other) | |
Definition at line 14 of file qsvgiconengine.h.
QSvgIconEngine::QSvgIconEngine | ( | ) |
Definition at line 64 of file qsvgiconengine.cpp.
Referenced by clone().
QSvgIconEngine::QSvgIconEngine | ( | const QSvgIconEngine & | other | ) |
Definition at line 69 of file qsvgiconengine.cpp.
References QSvgIconEnginePrivate::addedPixmaps, other(), QSvgIconEnginePrivate::svgBuffers, and QSvgIconEnginePrivate::svgFiles.
QSvgIconEngine::~QSvgIconEngine | ( | ) |
Definition at line 78 of file qsvgiconengine.cpp.
|
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.
The returned size is in device-independent pixels (This is relevant for high-dpi pixmaps).
Reimplemented from QIconEngine.
Definition at line 83 of file qsvgiconengine.cpp.
References QSvgIconEnginePrivate::addedPixmaps, QSvgIconEnginePrivate::hashKey(), QHash< Key, T >::isEmpty(), QPixmap::isNull(), pixmap, QPixmap::size(), state, and QHash< Key, T >::value().
Referenced by 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 252 of file qsvgiconengine.cpp.
References addPixmap(), CompressedSvgFile, fileName, fileType(), QSvgIconEnginePrivate::hashKey(), QHash< Key, T >::insert(), QPixmap::isNull(), QSvgRenderer::isValid(), OtherFile, renderer, state, QSvgIconEnginePrivate::stepSerialNum(), SvgFile, and QSvgIconEnginePrivate::svgFiles.
|
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 224 of file qsvgiconengine.cpp.
References QSvgIconEnginePrivate::addedPixmaps, QSvgIconEnginePrivate::hashKey(), QHash< Key, T >::insert(), pixmap, state, and QSvgIconEnginePrivate::stepSerialNum().
Referenced by addFile().
|
overridevirtual |
Reimplement this method to return a clone of this icon engine.
Implements QIconEngine.
Definition at line 296 of file qsvgiconengine.cpp.
References QSvgIconEngine().
|
overridevirtual |
Returns true if this icon engine represent a null QIcon.
Reimplemented from QIconEngine.
Definition at line 286 of file qsvgiconengine.cpp.
References QSvgIconEnginePrivate::addedPixmaps, QHash< Key, T >::isEmpty(), QSvgIconEnginePrivate::svgBuffers, and QSvgIconEnginePrivate::svgFiles.
|
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 291 of file qsvgiconengine.cpp.
|
overridevirtual |
Uses the given painter to paint the icon with the required mode and state into the rectangle rect.
Implements QIconEngine.
Definition at line 277 of file qsvgiconengine.cpp.
References QPainter::device(), QPaintDevice::devicePixelRatio(), QPainter::drawPixmap(), painter, pixmap, rect, 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 166 of file qsvgiconengine.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 302 of file qsvgiconengine.cpp.
References QSvgIconEnginePrivate::addedPixmaps, QHash< Key, T >::clear(), fileNames, QSvgIconEnginePrivate::hashKey(), i, QHash< Key, T >::insert(), QIcon::Normal, QIcon::Off, pixmap, qCompress(), qUncompress(), qWarning, state, and QSvgIconEnginePrivate::svgBuffers.
|
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. The size is given in device-independent pixels.
Reimplemented from QIconEngine.
Definition at line 172 of file qsvgiconengine.cpp.
References actualSize(), QSvgIconEnginePrivate::addedPixmaps, QSvgRenderer::defaultSize(), QPixmap::devicePixelRatio(), QPixmap::fill(), QPixmapCache::find(), QSvgIconEnginePrivate::hashKey(), QPixmapCache::insert(), QGuiApplicationPrivate::instance(), QCoreApplication::instance(), QHash< Key, T >::isEmpty(), QSize::isEmpty(), QPixmap::isNull(), QSize::isNull(), QSvgRenderer::isValid(), Qt::KeepAspectRatio, QSvgIconEnginePrivate::loadDataForModeAndState(), QIcon::Normal, QSvgIconEnginePrivate::pmcKey(), QHash< Key, T >::remove(), QSvgRenderer::render(), renderer, QSize::scale(), QPixmap::setDevicePixelRatio(), QPixmap::size(), state, Qt::transparent, and QHash< Key, T >::value().
Referenced by 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 358 of file qsvgiconengine.cpp.
References QSvgIconEnginePrivate::addedPixmaps, QHash< Key, T >::asKeyValueRange(), QSvgIconEnginePrivate::hashKey(), QHash< Key, T >::isEmpty(), it, QIcon::Normal, QIcon::Off, out, qCompress(), QIODeviceBase::ReadOnly, QSvgIconEnginePrivate::svgBuffers, QSvgIconEnginePrivate::svgFiles, and QHash< Key, T >::value().