Spec-Zone.ru › Qt 6.1

Класс QIconEngine

Класс QIconEngine предоставляет абстрактный базовый класс для рендереров QIcon. Подробнее...

Заголовок: #include <QIconEngine>
CMake: find_package(Qt6 COMPONENTS Gui REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
  • Список всех членов, включая унаследованные

Типы публичного доступа

Структура ScaledPixmapArgument
Перечисление IconEngineHook { IsNullHook, ScaledPixmapHook }

Функции публичного доступа

QIconEngine()
виртуальный ~QIconEngine()
виртуальный QSize actualSize(const QSize &size, QIcon::Mode mode, QIcon::State state)
виртуальный void addFile(const QString &fileName, const QSize &size, QIcon::Mode mode, QIcon::State state)
виртуальный void addPixmap(const QPixmap &pixmap, QIcon::Mode mode, QIcon::State state)
виртуальный QList<QSize> availableSizes(QIcon::Mode mode = QIcon::Normal, QIcon::State state = QIcon::Off)
виртуальный QIconEngine * clone() const = 0
виртуальный QString iconName()
виртуальный bool isNull()
виртуальный QString key() const
виртуальный void paint(QPainter *painter, const QRect &rect, QIcon::Mode mode, QIcon::State state) = 0
виртуальный QPixmap pixmap(const QSize &size, QIcon::Mode mode, QIcon::State state)
виртуальный bool read(QDataStream &in)
виртуальный QPixmap scaledPixmap(const QSize &size, QIcon::Mode mode, QIcon::State state, qreal scale)
виртуальный void virtual_hook(int id, void *data)
виртуальный bool write(QDataStream &out) const

Подробное описание

Движок иконок предоставляет функции рендеринга для QIcon. Каждая иконка имеет соответствующий движок иконок, который отвечает за отрисовку иконки с запрошенным размером, режимом и состоянием.

Иконка рендерится функцией paint(), и иконку дополнительно можно получить как пиксель с помощью функции pixmap() (реализация по умолчанию просто использует paint() для достижения этого). Функция addPixmap() может использоваться для добавления новых пикселей в движок иконок и используется QIcon для добавления специализированных пользовательских пикселей.

Функции paint(), pixmap() и addPixmap() являются виртуальными и поэтому могут быть переопределены в подклассах QIconEngine.

См. также QIconEnginePlugin.

Документация по типам членов

Перечисление QIconEngine::IconEngineHook

Эти значения перечисления используются для virtual_hook() для возможности дополнительных запросов к движку иконок без нарушения бинарной совместимости.

Константа Значение Описание
QIconEngine::IsNullHook 3 Позволяет запросить, представляет ли этот движок пустую иконку. Аргумент data метода virtual_hook() — указатель на bool, который можно установить в значение true, если иконка пуста. Это значение перечисления было добавлено в Qt 5.7.
QIconEngine::ScaledPixmapHook 4 Предоставляет способ получения пикселя, масштабированного в соответствии с заданным масштабом (обычно равным отношению пикселей устройства). Аргумент data функции virtual_hook() — указатель на ScaledPixmapArgument, содержащий входные и выходные аргументы. Это значение перечисления было добавлено в Qt 5.9.

См. также virtual_hook().

Документация по функциям-членам

[since 5.6] QIconEngine::QIconEngine()

Конструирует движок иконок.

Эта функция была добавлена в Qt 5.6.

[virtual] QIconEngine::~QIconEngine()

Уничтожает движок иконок.

[virtual] QSize QIconEngine::actualSize(const QSize &size, QIcon::Mode mode, QIcon::State state)

Возвращает фактический размер иконки, предоставляемой движком для запрошенного size, mode и state. Реализация по умолчанию возвращает заданный size.

[virtual] void QIconEngine::addFile(const QString &fileName, const QSize &size, QIcon::Mode mode, QIcon::State state)

Вызывается функцией QIcon::addFile(). Добавляет специализированный пиксель из файла с заданным fileName, size, mode и state. Движок иконок по умолчанию хранит все предоставленные имена файлов и загружает пиксели по требованию вместо использования масштабированных пикселей, если размер пикселя соответствует размеру запрошенной иконки. Пользовательские движки иконок, реализующие масштабируемые векторные форматы, могут игнорировать дополнительные файлы.

[virtual] void QIconEngine::addPixmap(const QPixmap &pixmap, QIcon::Mode mode, QIcon::State state)

Вызывается функцией QIcon::addPixmap(). Добавляет специализированный pixmap для заданного mode и state. Движок иконок по умолчанию хранит все предоставленные пиксели и использует их вместо масштабированных пикселей, если размер пикселя соответствует размеру запрошенной иконки. Пользовательские движки иконок, реализующие масштабируемые векторные форматы, могут игнорировать дополнительные пиксели.

[virtual] QList<QSize> QIconEngine::availableSizes(QIcon::Mode mode = QIcon::Normal, QIcon::State state = QIcon::Off)

Возвращает размеры всех изображений, содержащихся в движке, для заданного mode и state.

[pure virtual] QIconEngine *QIconEngine::clone() const

Переопределите этот метод, чтобы вернуть копию этого движка иконок.

[virtual] QString QIconEngine::iconName()

Возвращает имя, используемое для создания движка, если оно доступно.

[virtual, since 5.7] bool QIconEngine::isNull()

Возвращает true, если этот движок иконок представляет пустую QIcon.

Примечание: Это вспомогательный метод, и фактическая работа выполняется методом virtual_hook(), поэтому этот метод зависит от поддержки движком иконок и может не работать со всеми движками иконок.

Эта функция была добавлена в Qt 5.7.

[virtual] QString QIconEngine::key() const

Возвращает ключ, который идентифицирует этот движок иконок.

[pure virtual] void QIconEngine::paint(QPainter *painter, const QRect &rect, QIcon::Mode mode, QIcon::State state)

Использует заданный painter для отрисовки значка с требуемым mode и state в прямоугольник rect.

[virtual] QPixmap QIconEngine::pixmap(const QSize &size, QIcon::Mode mode, QIcon::State state)

Возвращает значок в виде пикселмапа с требуемыми size, mode и state. Реализация по умолчанию создаёт новый пикселмап и вызывает paint() для его заполнения.

[virtual] bool QIconEngine::read(QDataStream &in)

Читает содержимое движка значка из QDataStream in. Возвращает true, если содержимое было прочитано; в противном случае возвращает false.

Реализация QIconEngine по умолчанию всегда возвращает false.

[virtual, since 5.9] QPixmap QIconEngine::scaledPixmap(const QSize &size, QIcon::Mode mode, QIcon::State state, qreal scale)

Возвращает пикселмап для заданных size, mode, state и scale.

Аргумент scale обычно равен коэффициенту масштабирования пикселей устройства дисплея.

Примечание: Это вспомогательный метод, и фактическая работа выполняется методом virtual_hook(), поэтому этот метод зависит от поддержки движка значков и может не работать со всеми движками значков.

Примечание: Некоторые движки могут преобразовать scale в целое число.

Эта функция была добавлена в Qt 5.9.

См. также ScaledPixmapArgument.

[virtual] void QIconEngine::virtual_hook(int id, void *data)

Дополнительный метод для расширения QIconEngine без добавления новых виртуальных методов (и без нарушения бинарной совместимости). Фактическое действие и формат data зависит от аргумента id, который фактически является константой из перечисления IconEngineHook.

См. также IconEngineHook.

[virtual] bool QIconEngine::write(QDataStream &out) const

Записывает содержимое этого движка в QDataStream out. Возвращает true, если содержимое было записано; в противном случае возвращает false.

Реализация QIconEngine по умолчанию всегда возвращает false.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qiconengine.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API