1234567891011121314151617181920212223242526272829303132333435363738394041 |
- #ifndef TOOLTIPBUTTON_H
- #define TOOLTIPBUTTON_H
- #include <QLabel>
- #include <QGraphicsOpacityEffect>
- class TooltipButton : public QLabel
- {
- Q_OBJECT
- public:
- explicit TooltipButton(QWidget *parent = nullptr);
- ~TooltipButton();
- void enterEvent(QEvent *) override;
- void leaveEvent(QEvent *) override;
- void moveEvent(QMoveEvent *) override;
- void resizeEvent(QResizeEvent *) override;
- void setTooltipParentWidget(QWidget *);
- void setTooltipText(QString text);
- private:
- void updateTooltipPosition();
- signals:
- private:
- QWidget* _tooltip_parent_widget = nullptr;
- QLabel* _tooltip_label = nullptr;
- QWidget* _tooltip_label_arrow = nullptr;
- QGraphicsOpacityEffect *_tooltip_opacity_effect = nullptr;
- QGraphicsOpacityEffect *_tooltip_arrow_opacity_effect = nullptr;
- };
- #endif // TOOLTIPBUTTON_H
|