Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qtoolbutton.h
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3// Qt-Security score:significant reason:default
4
5#ifndef QTOOLBUTTON_H
6#define QTOOLBUTTON_H
7
8#include <QtWidgets/qtwidgetsglobal.h>
9
10#include <QtWidgets/qabstractbutton.h>
11
13
14QT_BEGIN_NAMESPACE
15
16class QToolButtonPrivate;
17class QMenu;
18class QStyleOptionToolButton;
19
20class Q_WIDGETS_EXPORT QToolButton : public QAbstractButton
21{
22 Q_OBJECT
23 Q_ENUMS(Qt::ToolButtonStyle Qt::ArrowType)
24#if QT_CONFIG(menu)
25 Q_PROPERTY(ToolButtonPopupMode popupMode READ popupMode WRITE setPopupMode)
26#endif
27 Q_PROPERTY(Qt::ToolButtonStyle toolButtonStyle READ toolButtonStyle WRITE setToolButtonStyle)
28 Q_PROPERTY(bool autoRaise READ autoRaise WRITE setAutoRaise)
29 Q_PROPERTY(Qt::ArrowType arrowType READ arrowType WRITE setArrowType)
30
31public:
32 enum ToolButtonPopupMode {
33 DelayedPopup,
34 MenuButtonPopup,
35 InstantPopup
36 };
37 Q_ENUM(ToolButtonPopupMode)
38
39 explicit QToolButton(QWidget *parent = nullptr);
40 ~QToolButton();
41
42 QSize sizeHint() const override;
43 QSize minimumSizeHint() const override;
44
45 Qt::ToolButtonStyle toolButtonStyle() const;
46
47 Qt::ArrowType arrowType() const;
48 void setArrowType(Qt::ArrowType type);
49
50#if QT_CONFIG(menu)
51 void setMenu(QMenu* menu);
52 QMenu* menu() const;
53
54 void setPopupMode(ToolButtonPopupMode mode);
55 ToolButtonPopupMode popupMode() const;
56#endif
57
58 QAction *defaultAction() const;
59
60 void setAutoRaise(bool enable);
61 bool autoRaise() const;
62
63public Q_SLOTS:
64#if QT_CONFIG(menu)
65 void showMenu();
66#endif
67 void setToolButtonStyle(Qt::ToolButtonStyle style);
68 void setDefaultAction(QAction *);
69
70Q_SIGNALS:
71 void triggered(QAction *);
72
73protected:
74 bool event(QEvent *e) override;
75 void mousePressEvent(QMouseEvent *) override;
76 void mouseReleaseEvent(QMouseEvent *) override;
77 void paintEvent(QPaintEvent *) override;
78 void actionEvent(QActionEvent *) override;
79
80 void enterEvent(QEnterEvent *) override;
81 void leaveEvent(QEvent *) override;
82 void timerEvent(QTimerEvent *) override;
83 void changeEvent(QEvent *) override;
84
85 bool hitButton(const QPoint &pos) const override;
86 void checkStateSet() override;
87 void nextCheckState() override;
88 virtual void initStyleOption(QStyleOptionToolButton *option) const;
89
90private:
91 Q_DISABLE_COPY(QToolButton)
92 Q_DECLARE_PRIVATE(QToolButton)
93};
94
95QT_END_NAMESPACE
96
97#endif // QTOOLBUTTON_H
The QComboBox widget combines a button with a dropdown list.
Definition qcombobox.h:25
QFileDialogComboBox(QWidget *parent=nullptr)
QStringList history() const
void setHistory(const QStringList &paths)
void setFileDialogPrivate(QFileDialogPrivate *d_pointer)
void showPopup() override
Displays the list of items in the combobox.
void paintEvent(QPaintEvent *) override
\reimp
void keyPressEvent(QKeyEvent *e) override
FIXME: this is a hack to avoid propagating key press events to the dialog and from there to the "Ok" ...
void setFileDialogPrivate(QFileDialogPrivate *d_pointer)
QFileDialogLineEdit(QWidget *parent=nullptr)
void setFileDialogPrivate(QFileDialogPrivate *d_pointer)
QSize sizeHint() const override
QFileDialogListView(QWidget *parent=nullptr)
void keyPressEvent(QKeyEvent *e) override
void keyPressEvent(QKeyEvent *e) override
QSize sizeHint() const override
QFileDialogTreeView(QWidget *parent)
void setFileDialogPrivate(QFileDialogPrivate *d_pointer)
The QFileDialog class provides a dialog that allows users to select files or directories.
Definition qfiledialog.h:29
The QListView class provides a list or icon view onto a model.
Definition qlistview.h:18
Definition qlist.h:80
\inmodule QtCore
The QToolButton class provides a quick-access button to commands or options, usually used inside a QT...
Definition qtoolbutton.h:21
The QTreeView class provides a default model/view implementation of a tree view.
Definition qtreeview.h:21
QT_REQUIRE_CONFIG(animation)
static QUrl _qt_get_directory(const QUrl &url, const QFileInfo &local)
static void _qt_init_lastVisited()
QStringList qt_strip_filters(const QStringList &filters)
QStringList qt_make_filter_list(const QString &filter)
static QString fileFromPath(const QString &rootPath, QString path)
static bool isCaseSensitiveFileSystem(const QString &path)
QT_REQUIRE_CONFIG(filedialog)
QT_REQUIRE_CONFIG(thread)
QT_REQUIRE_CONFIG(treeview)
QFileDialogArgs(const QUrl &url={})