Spec-Zone.ru › Qt 5.15

Класс QIconEngine

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

Заголовок: #include <QIconEngine>
qmake: QT += gui
  • Список всех членов, включая унаследованные

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

Структура AvailableSizesArgument
Структура ScaledPixmapArgument
Перечисление IconEngineHook { AvailableSizesHook, IconNameHook, 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) const
виртуальный QIconEngine * clone() const = 0
виртуальный QString iconName() const
bool isNull() const
виртуальный 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::AvailableSizesHook 1 Позволяет запросить размеры содержащихся пикселей для движков на основе пикселей. Аргумент data функции virtual_hook() — указатель на AvailableSizesArgument, который должен быть заполнен размерами иконок. Движки, работающие с масштабируемым векторным форматом, обычно возвращают пустой список.
QIconEngine::IconNameHook 2 Позволяет запросить имя, используемое для создания иконки, например, при создании иконки с помощью QIcon::fromTheme().
QIconEngine::IsNullHook 3 Позволяет запросить, представляет ли этот движок нулевую иконку. Аргумент data функции virtual_hook() — указатель на bool, который может быть установлен в true, если иконка является нулевой. Это значение перечисления было добавлено в Qt 5.7.
QIconEngine::ScaledPixmapHook 4 Предоставляет способ получения пикселей, масштабированных в соответствии с заданным масштабом (обычно равным отношению пикселей устройства). Аргумент data функции virtual_hook() — указатель на ScaledPixmapArgument, который содержит входные и выходные аргументы. Это значение перечисления было добавлено в Qt 5.9.

Это перечисление было введено или изменено в Qt 4.5.

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

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

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) const

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

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

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

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

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

[virtual] QString QIconEngine::iconName() const

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

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

Функция была введена в Qt 4.7.

bool QIconEngine::isNull() const

Возвращает 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)

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

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

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

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

QPixmap QIconEngine::scaledPixmap(const QSize &size, QIcon::Mode mode, QIcon::State state, qreal scale)

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

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

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

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

См. также ScaledPixmapArgument.

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

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

Функция была введена в Qt 4.5.

См. также IconEngineHook.

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

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

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

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

Spec-Zone.ru

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