Wireshark 5.1.0
The Wireshark network protocol analyzer
Loading...
Searching...
No Matches
contrast_adapt_icon.h
Go to the documentation of this file.
1
9
10#pragma once
11
13
14#include <QColor>
15#include <QIcon>
16#include <QPalette>
17#include <QSize>
18#include <QString>
19
61class ContrastAdaptIcon : public QIcon
62{
63public:
75 explicit ContrastAdaptIcon(const QString &svg_resource_path,
76 QPalette::ColorRole surface_role = QPalette::Window,
77 QSize size = QSize(16, 16));
78
86 ContrastAdaptIcon(const QString &svg_resource_path,
87 const QColor &explicit_background,
88 QSize size = QSize(16, 16));
89
95 explicit ContrastAdaptIcon(const char *name) {
96 QString path = QStringLiteral(":/svg_icons/") + QLatin1String(name) + QStringLiteral(".svg");
97 *this = ContrastAdaptIcon(path, QPalette::Window);
98 }
99
109 static void setDefaultMinContrast(qreal ratio);
110 static qreal defaultMinContrast();
111
118 void setPalette(const QPalette &palette);
119
120private:
121 // Private delegate: the engine shares @p palette so setPalette() can reach it.
122 ContrastAdaptIcon(const QString &svg_resource_path,
123 QPalette::ColorRole surface_role,
124 const QColor &explicit_background,
125 QSize size, IconPaletteRef palette);
126
127 IconPaletteRef palette_;
128};
static void setDefaultMinContrast(qreal ratio)
Minimum WCAG contrast ratio every ContrastAdaptIcon holds against its background.
Definition contrast_adapt_icon.cpp:387
ContrastAdaptIcon(const char *name)
Convenience constructor for creating a contrast-adapted icon from a stock name.
Definition contrast_adapt_icon.h:95
void setPalette(const QPalette &palette)
Set a custom palette for drawing this icon instead of the application palette.
Definition contrast_adapt_icon.cpp:382
ContrastAdaptIcon(const QString &svg_resource_path, QPalette::ColorRole surface_role=QPalette::Window, QSize size=QSize(16, 16))
Definition contrast_adapt_icon.cpp:357
std::shared_ptr< std::optional< QPalette > > IconPaletteRef
Palette override shared between an icon object and its engine, so that ThemedIcon::setPalette() / Con...
Definition token_palette.h:27