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
qqstylekitcontrols_p.h
Go to the documentation of this file.
1// Copyright (C) 2025 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 QQSTYLEKITCONTROLS_P_H
6#define QQSTYLEKITCONTROLS_P_H
7
8//
9// W A R N I N G
10// -------------
11//
12// This file is not part of the Qt API. It exists purely as an
13// implementation detail. This header file may change from version to
14// version without notice, or even be removed.
15//
16// We mean it.
17//
18
19#include <QtQml/QtQml>
20
22
24
25class QQStyleKitStyle;
28
30{
31 Q_OBJECT
32 Q_INTERFACES(QQmlParserStatus)
33
64 QML_UNCREATABLE("This component is abstract, and cannot be instantiated")
66
68 Q_CLASSINFO("DefaultProperty", "data")
69
70public:
72
73#define IMPLEMENT_ACCESSORS(NAME)
74 QQStyleKitControl *NAME() const;
75 void set_ ## NAME(QQStyleKitControl *control);
76
77 IMPLEMENT_ACCESSORS(applicationWindow)
78 IMPLEMENT_ACCESSORS(abstractButton)
79 IMPLEMENT_ACCESSORS(control)
81 IMPLEMENT_ACCESSORS(checkBox)
82 IMPLEMENT_ACCESSORS(comboBox)
83 IMPLEMENT_ACCESSORS(flatButton)
84 IMPLEMENT_ACCESSORS(progressBar)
85 IMPLEMENT_ACCESSORS(scrollBar)
86 IMPLEMENT_ACCESSORS(scrollIndicator)
87 IMPLEMENT_ACCESSORS(scrollView)
89 IMPLEMENT_ACCESSORS(spinBox)
91 IMPLEMENT_ACCESSORS(tabButton)
92 IMPLEMENT_ACCESSORS(textField)
93 IMPLEMENT_ACCESSORS(textInput)
94 IMPLEMENT_ACCESSORS(toolBar)
95 IMPLEMENT_ACCESSORS(toolButton)
96 IMPLEMENT_ACCESSORS(toolSeparator)
97 IMPLEMENT_ACCESSORS(switchControl)
98 IMPLEMENT_ACCESSORS(radioButton)
99 IMPLEMENT_ACCESSORS(itemDelegate)
105 IMPLEMENT_ACCESSORS(groupBox)
106 IMPLEMENT_ACCESSORS(textArea)
107
108#undef IMPLEMENT_ACCESSORS
109
110 Q_INVOKABLE QQStyleKitControl *getControl(QQStyleKitExtendableControlType controlType) const;
111
113 const QList<QObject *> children() const;
114
115signals:
147
148protected:
151
152private:
154
156 QHash<QQStyleKitExtendableControlType, QQStyleKitControl *> m_controls;
157 QHash<PropertyPathId_t, QQSK::State> m_writtenPropertyPaths;
158
160 friend class QQStyleKitControl;
161};
162
163QT_END_NAMESPACE
164
165#endif // QQSTYLEKITCONTROLS_P_H
Q_INVOKABLE bool styleLoaded() const
void setStyleUrl(const QString &styleUrl)
QQStyleKitStyle * style() const
void transitionsEnabledChanged()
void setStyle(QQStyleKitStyle *style)
void setTransitionsEnabled(bool enabled)
QQStyleKitDebug * debug() const
bool transitionsEnabled() const
QString styleUrl() const
void scrollIndicatorChanged()
void componentComplete() override
Invoked after the root component that caused this instantiation has completed construction.
const QList< QObject * > children() const
void abstractButtonChanged()
void itemDelegateChanged()
void classBegin() override
Invoked after class creation, but before any properties have been set.
void switchControlChanged()
QQmlListProperty< QObject > data()
void applicationWindowChanged()
void toolSeparatorChanged()
void filterChanged()
QString filter() const
void setFilter(const QString &filter)
void setControl(QQuickItem *item)
static Q_INVOKABLE bool insideControl(const QObject *child)
static QQStyleKitAttached * qmlAttachedProperties(QObject *obj=nullptr)
Combined button and popup list for selecting options.
#define IMPLEMENT_ACCESSORS(NAME, TYPE)