3#include "Widgets/Headers/QTIconManager.h"
4#include "Base/Headers/Buffer.hpp"
31 class NDEVR_IMAGES_API NDEVRSVGIconEngine :
public QIconEngine
46 ~NDEVRSVGIconEngine();
52 virtual void paint(QPainter* painter,
const QRect& rect, QIcon::Mode mode, QIcon::State state)
override;
58 QSize actualSize(
const QSize& size, QIcon::Mode mode, QIcon::State state)
override;
64 virtual QPixmap pixmap(
const QSize& size, QIcon::Mode mode, QIcon::State state)
override;
70 virtual QIconEngine* clone(
void)
const override;
75 void createSVGRenderer(
const QSize& size);
81 QIcon::Mode m_override_mode;
82 mutable QSize m_default_size;
The equivelent of std::vector but with a bit more control.
A hash-based key-value store, useful for quick associative lookups.
NDEVRIconEngine(const UUID &id)
Constructs an icon engine with the given unique identifier.
QIcon createIcon(const StringView &icon, const IconThemeSettings &theme, QIcon::Mode mode=QIcon::Mode::Normal) final override
Creates a QIcon from the given SVG icon identifier.
SVGIconEngine()
Constructs an SVGIconEngine.
bool canProcess(const StringView &icon, const IconThemeSettings &theme, QIcon::Mode mode) const final override
Checks whether this engine can process the given icon.
The core String View class for the NDEVR API.
The core String class for the NDEVR API.
A universally unique identifier (UUID) is a 128-bit number used to identify information in computer s...
The primary namespace for the NDEVR SDK.
@ icon
Icon identifier for the object.
QSvgRenderer * renderer
The SVG renderer for this element.
QTransform transform
The transform applied when rendering this SVG element.
bool draw_shadow
Whether to draw a drop shadow behind this element.
IconEngineItem(const QTransform &transform, QSvgRenderer *render, bool draw_shadow)
Constructs an IconEngineItem with a transform, renderer, and shadow flag.
Stores information for how to draw icons, when supported.