feat: add display flag button click logic

This commit is contained in:
parker
2025-06-24 00:51:25 +01:00
parent 4471a9a537
commit 1f367b82fd
5 changed files with 72 additions and 5 deletions

View File

@@ -1,5 +1,6 @@
#pragma once
#include <QGraphicsItem>
#include <QBrush>
class DisplayFlagButton
: public QGraphicsItem
@@ -7,11 +8,21 @@ class DisplayFlagButton
public:
DisplayFlagButton(QGraphicsItem *parent = nullptr);
float getWidth();
void setEnabled(bool enabled);
private:
QRectF baseRect_;
QColor disabledColor_=QColor("#373737");
QColor enabledColor_=QColor("#00BFFF");
QColor hoveredColor_=QColor("#666666");
QBrush disabledBrush_;
QBrush enabledBrush_;
QBrush hoveredBrush_;
bool hovered_=false;
bool enabled_=false;
protected:
QRectF boundingRect() const override;
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override;
void hoverEnterEvent(QGraphicsSceneHoverEvent *event) override;
void hoverLeaveEvent(QGraphicsSceneHoverEvent *event) override;
};