| 1 #pragma once |
1 #pragma once |
| 2 #include <QPushButton> |
2 #include <QPushButton> |
| |
3 #include <QLineEdit> |
| 3 |
4 |
| 4 /** |
5 /** |
| 5 * @brief A button that can be used to select a color |
6 * @brief A button that can be used to select a color |
| 6 */ |
7 */ |
| 7 class ColorButton : public QPushButton |
8 class ColorButton : public QWidget |
| 8 { |
9 { |
| 9 Q_OBJECT |
10 Q_OBJECT |
| 10 Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged) |
11 Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged) |
| 11 QColor storedSelectedColor; |
12 QLineEdit* lineEdit; |
| |
13 QPushButton* button; |
| 12 public: |
14 public: |
| 13 ColorButton(const QColor& color = {}, QWidget* parent = nullptr); |
15 ColorButton(const QColor& color = {}, QWidget* parent = nullptr); |
| 14 ColorButton(QWidget* parent = nullptr); |
16 ColorButton(QWidget* parent = nullptr); |
| 15 const QColor& color() const; |
17 QColor color() const; |
| 16 Q_SLOT void setColor(const QColor& color); |
18 Q_SLOT void setColor(const QColor& color); |
| 17 Q_SIGNAL void colorChanged(const QColor& color); |
19 Q_SIGNAL void colorChanged(const QColor& color); |
| 18 }; |
20 }; |