22 Q_ENUMS(Qt::ToolButtonStyle Qt::ArrowType)
24 Q_PROPERTY(ToolButtonPopupMode popupMode READ popupMode WRITE setPopupMode)
26 Q_PROPERTY(Qt::ToolButtonStyle toolButtonStyle READ toolButtonStyle WRITE setToolButtonStyle)
27 Q_PROPERTY(
bool autoRaise READ autoRaise WRITE setAutoRaise)
28 Q_PROPERTY(Qt::ArrowType arrowType READ arrowType WRITE setArrowType)
31 enum ToolButtonPopupMode {
36 Q_ENUM(ToolButtonPopupMode)
38 explicit QToolButton(QWidget *parent =
nullptr);
41 QSize sizeHint()
const override;
42 QSize minimumSizeHint()
const override;
44 Qt::ToolButtonStyle toolButtonStyle()
const;
46 Qt::ArrowType arrowType()
const;
47 void setArrowType(Qt::ArrowType type);
50 void setMenu(QMenu* menu);
53 void setPopupMode(ToolButtonPopupMode mode);
54 ToolButtonPopupMode popupMode()
const;
57 QAction *defaultAction()
const;
59 void setAutoRaise(
bool enable);
60 bool autoRaise()
const;
66 void setToolButtonStyle(Qt::ToolButtonStyle style);
67 void setDefaultAction(QAction *);
70 void triggered(QAction *);
73 bool event(QEvent *e) override;
74 void mousePressEvent(QMouseEvent *) override;
75 void mouseReleaseEvent(QMouseEvent *) override;
76 void paintEvent(QPaintEvent *) override;
77 void actionEvent(QActionEvent *) override;
79 void enterEvent(QEnterEvent *) override;
80 void leaveEvent(QEvent *) override;
81 void timerEvent(QTimerEvent *) override;
82 void changeEvent(QEvent *) override;
84 bool hitButton(
const QPoint &pos)
const override;
85 void checkStateSet() override;
86 void nextCheckState() override;
87 virtual void initStyleOption(QStyleOptionToolButton *option)
const;
90 Q_DISABLE_COPY(QToolButton)
91 Q_DECLARE_PRIVATE(QToolButton)