Wireshark 5.1.0
The Wireshark network protocol analyzer
Loading...
Searching...
No Matches
theme_welcome_preview.h
Go to the documentation of this file.
1
9
10#ifndef THEME_WELCOME_PREVIEW_H
11#define THEME_WELCOME_PREVIEW_H
12
15
16#include <QFont>
17#include <QFrame>
18#include <QHash>
19#include <QImage>
20#include <QList>
21#include <QPalette>
22
23#include <memory>
24
25class QAction;
26class QContextMenuEvent;
27class QLabel;
28class QMenu;
29class QMouseEvent;
30
31namespace Ui {
32class ThemeWelcomePreview;
33}
34
49class ThemeWelcomePreview : public QFrame
50{
51 Q_OBJECT
52public:
53 explicit ThemeWelcomePreview(QWidget *parent = nullptr);
54 ~ThemeWelcomePreview();
55
63 void setTheme(const QHash<ThemeManager::ThemeToken, ThemeColorPair> &tokens,
64 bool dark, const QPalette &palette);
65
67 void setPreviewFont(const QFont &regular);
68
74 ThemePreviewPicker &picker() { return picker_; }
75
76signals:
79
84 void pickMenuRequested(QMenu *menu, QAction *before,
85 const QList<ThemePreviewPick::Layer> &layers);
86
89
90protected:
91 void mouseMoveEvent(QMouseEvent *event) override;
92 void mousePressEvent(QMouseEvent *event) override;
93 void contextMenuEvent(QContextMenuEvent *event) override;
94
95private:
97 int pickTextHeight() const;
98
100 QImage renderPickImage();
101
107 QString buildStyleSheet(const QHash<ThemeManager::ThemeToken, ThemeColorPair> &tokens,
108 bool dark, const QPalette &palette) const;
109
110 Ui::ThemeWelcomePreview *ui;
112 QLabel *filter_bookmark_;
114 QLabel *filter_buttons_;
116 ThemePreviewPicker picker_;
118 QFont preview_font_;
119 bool has_preview_font_ = false;
120 std::unique_ptr<ThemeWelcomePreview> pick_probe_;
122 bool key_render_ = false;
123};
124
125#endif // THEME_WELCOME_PREVIEW_H
Definition theme_preview_pick.h:171
void setTheme(const QHash< ThemeManager::ThemeToken, ThemeColorPair > &tokens, bool dark, const QPalette &palette)
Definition theme_welcome_preview.cpp:184
void setPreviewFont(const QFont &regular)
Definition theme_welcome_preview.cpp:238
void pickMenuRequested(QMenu *menu, QAction *before, const QList< ThemePreviewPick::Layer > &layers)
ThemePreviewPicker & picker()
Definition theme_welcome_preview.h:74
void layerPicked(const ThemePreviewPick::Layer &layer)
Definition theme_preview_pick.h:60