Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
qquickabstractbutton_p.h
Go to the documentation of this file.
1// Copyright (C) 2017 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
4#ifndef QQUICKABSTRACTBUTTON_P_H
5#define QQUICKABSTRACTBUTTON_P_H
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the Qt API. It exists purely as an
12// implementation detail. This header file may change from version to
13// version without notice, or even be removed.
14//
15// We mean it.
16//
17
18#include <QtQuickTemplates2/private/qquickcontrol_p.h>
19#include <QtQuickTemplates2/private/qquickicon_p.h>
20
22
23class QQuickAction;
25
26class Q_QUICKTEMPLATES2_EXPORT QQuickAbstractButton : public QQuickControl
27{
29 Q_PROPERTY(QString text READ text WRITE setText RESET resetText NOTIFY textChanged FINAL)
30 Q_PROPERTY(bool down READ isDown WRITE setDown NOTIFY downChanged RESET resetDown FINAL)
31 Q_PROPERTY(bool pressed READ isPressed NOTIFY pressedChanged FINAL)
32 Q_PROPERTY(bool checked READ isChecked WRITE setChecked NOTIFY checkedChanged FINAL)
33 Q_PROPERTY(bool checkable READ isCheckable WRITE setCheckable NOTIFY checkableChanged FINAL)
34 Q_PROPERTY(bool autoExclusive READ autoExclusive WRITE setAutoExclusive NOTIFY autoExclusiveChanged FINAL)
35 Q_PROPERTY(bool autoRepeat READ autoRepeat WRITE setAutoRepeat NOTIFY autoRepeatChanged FINAL)
36 Q_PROPERTY(QQuickItem *indicator READ indicator WRITE setIndicator NOTIFY indicatorChanged FINAL)
37 // 2.3 (Qt 5.10)
38 Q_PROPERTY(QQuickIcon icon READ icon WRITE setIcon NOTIFY iconChanged FINAL REVISION(2, 3))
39 Q_PROPERTY(Display display READ display WRITE setDisplay NOTIFY displayChanged FINAL REVISION(2, 3))
40 Q_PROPERTY(QQuickAction *action READ action WRITE setAction NOTIFY actionChanged FINAL REVISION(2, 3))
41 // 2.4 (Qt 5.11)
42 Q_PROPERTY(int autoRepeatDelay READ autoRepeatDelay WRITE setAutoRepeatDelay NOTIFY autoRepeatDelayChanged FINAL REVISION(2, 4))
43 Q_PROPERTY(int autoRepeatInterval READ autoRepeatInterval WRITE setAutoRepeatInterval NOTIFY autoRepeatIntervalChanged FINAL REVISION(2, 4))
44 Q_PROPERTY(qreal pressX READ pressX NOTIFY pressXChanged FINAL REVISION(2, 4))
45 Q_PROPERTY(qreal pressY READ pressY NOTIFY pressYChanged FINAL REVISION(2, 4))
46 // 2.5 (Qt 5.12)
47 Q_PROPERTY(qreal implicitIndicatorWidth READ implicitIndicatorWidth NOTIFY implicitIndicatorWidthChanged FINAL REVISION(2, 5))
48 Q_PROPERTY(qreal implicitIndicatorHeight READ implicitIndicatorHeight NOTIFY implicitIndicatorHeightChanged FINAL REVISION(2, 5))
49 Q_CLASSINFO("DeferredPropertyNames", "background,contentItem,indicator")
50 QML_NAMED_ELEMENT(AbstractButton)
52
53public:
54 explicit QQuickAbstractButton(QQuickItem *parent = nullptr);
56
57 QString text() const;
58 void setText(const QString &text);
59 void resetText();
60
61 bool isDown() const;
62 void setDown(bool down);
63 void resetDown();
64
65 bool isPressed() const;
66 void setPressed(bool pressed);
67
68 bool isChecked() const;
69 void setChecked(bool checked);
70
71 bool isCheckable() const;
72 void setCheckable(bool checkable);
73
74 bool autoExclusive() const;
75 void setAutoExclusive(bool exclusive);
76
77 bool autoRepeat() const;
78 void setAutoRepeat(bool repeat);
79
80 QQuickItem *indicator() const;
81 void setIndicator(QQuickItem *indicator);
82
83 // 2.3 (Qt 5.10)
84 QQuickIcon icon() const;
85 void setIcon(const QQuickIcon &icon);
86
87 enum Display {
91 TextUnderIcon
92 };
94
95 Display display() const;
96 void setDisplay(Display display);
97
98 QQuickAction *action() const;
99 void setAction(QQuickAction *action);
100
101#if QT_CONFIG(shortcut)
102 QKeySequence shortcut() const;
103 void setShortcut(const QKeySequence &shortcut);
104#endif
105
106 // 2.4 (Qt 5.11)
107 int autoRepeatDelay() const;
108 void setAutoRepeatDelay(int delay);
109
110 int autoRepeatInterval() const;
111 void setAutoRepeatInterval(int interval);
112
113 qreal pressX() const;
114 qreal pressY() const;
115
116 // 2.5 (Qt 5.12)
117 qreal implicitIndicatorWidth() const;
118 qreal implicitIndicatorHeight() const;
119
120public Q_SLOTS:
121 void toggle();
122
124 void pressed();
125 void released();
126 void canceled();
127 void clicked();
138 // 2.2 (Qt 5.9)
139 Q_REVISION(2, 2) void toggled();
140 // 2.3 (Qt 5.10)
141 Q_REVISION(2, 3) void iconChanged();
142 Q_REVISION(2, 3) void displayChanged();
143 Q_REVISION(2, 3) void actionChanged();
144 // 2.4 (Qt 5.11)
145 Q_REVISION(2, 4) void autoRepeatDelayChanged();
146 Q_REVISION(2, 4) void autoRepeatIntervalChanged();
147 Q_REVISION(2, 4) void pressXChanged();
148 Q_REVISION(2, 4) void pressYChanged();
149 // 2.5 (Qt 5.12)
150 Q_REVISION(2, 5) void implicitIndicatorWidthChanged();
151 Q_REVISION(2, 5) void implicitIndicatorHeightChanged();
152
153protected:
155
156 void componentComplete() override;
157
158 bool event(QEvent *event) override;
159 void focusOutEvent(QFocusEvent *event) override;
160 void keyPressEvent(QKeyEvent *event) override;
161 void keyReleaseEvent(QKeyEvent *event) override;
162 void mousePressEvent(QMouseEvent *event) override;
163 void mouseDoubleClickEvent(QMouseEvent *event) override;
164 void timerEvent(QTimerEvent *event) override;
165
166 void itemChange(ItemChange change, const ItemChangeData &value) override;
167
174 virtual void buttonChange(ButtonChange change);
175
176 virtual void nextCheckState();
177
178#if QT_CONFIG(accessibility)
179 void accessibilityActiveChanged(bool active) override;
180 QAccessible::Role accessibleRole() const override;
181 Q_INVOKABLE void accessiblePressAction();
182#endif
183
184private:
185 Q_DISABLE_COPY(QQuickAbstractButton)
186 Q_DECLARE_PRIVATE(QQuickAbstractButton)
187};
188
190
191#endif // QQUICKABSTRACTBUTTON_P_H
\inmodule QtCore
Definition qcoreevent.h:45
The QFocusEvent class contains event parameters for widget focus events.
Definition qevent.h:470
The QKeyEvent class describes a key event.
Definition qevent.h:424
The QKeySequence class encapsulates a key sequence as used by shortcuts.
\inmodule QtGui
Definition qevent.h:196
Q_REVISION(2, 2) void toggled()
The QQuickItem class provides the most basic of all visual items in \l {Qt Quick}.
Definition qquickitem.h:63
ItemChange
Used in conjunction with QQuickItem::itemChange() to notify the item about certain types of changes.
Definition qquickitem.h:144
\macro QT_RESTRICTED_CAST_FROM_ASCII
Definition qstring.h:129
\inmodule QtCore
Definition qcoreevent.h:366
QString text
button setDown(true)
void textChanged(const QString &newText)
struct wl_display * display
Definition linuxdmabuf.h:41
Combined button and popup list for selecting options.
DBusConnection const char DBusError DBusBusType DBusError return DBusConnection DBusHandleMessageFunction void DBusFreeFunction return DBusConnection return DBusConnection return const char DBusError return DBusConnection DBusMessage dbus_uint32_t return DBusConnection dbus_bool_t DBusConnection DBusAddWatchFunction DBusRemoveWatchFunction DBusWatchToggledFunction void DBusFreeFunction return DBusConnection DBusDispatchStatusFunction void DBusFreeFunction DBusTimeout return DBusTimeout return DBusWatch return DBusWatch unsigned int return DBusError const DBusError return const DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessageIter int const void return DBusMessageIter DBusMessageIter return DBusMessageIter void DBusMessageIter void int return DBusMessage DBusMessageIter return DBusMessageIter return DBusMessageIter DBusMessageIter const char const char const char const char return DBusMessage return DBusMessage const char return DBusMessage dbus_bool_t return DBusMessage dbus_uint32_t return DBusMessage void
EGLOutputLayerEXT EGLint EGLAttrib value
[5]
struct _cl_event * event
#define QML_NAMED_ELEMENT(NAME)
#define QML_ADDED_IN_VERSION(MAJOR, MINOR)
#define Q_ENUM(x)
#define Q_PROPERTY(...)
#define Q_OBJECT
#define Q_REVISION(...)
#define Q_CLASSINFO(name, value)
#define Q_INVOKABLE
#define Q_SLOTS
#define Q_SIGNALS
struct _XDisplay Display
double qreal
Definition qtypes.h:187
#define explicit
myAction setIcon(SomeIcon)
insertRed setText("insert red text")
button setShortcut(tr("Alt+F7"))
radio1 setChecked(true)
\inmodule QtQuick
Definition qquickitem.h:159