Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
qqstylekitlayout_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
4
#
ifndef
QQUICKUNIFIEDLAYOUT_H
5
#
define
QQUICKUNIFIEDLAYOUT_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
19
#
include
<
QtQml
/
QtQml
>
20
#
include
<
QtCore
/
qtimer
.
h
>
21
#
include
<
QtQuickTemplates2
/
private
/
qquickcontrol_p
.
h
>
22
#
include
<
QtQuick
/
qquickitem
.
h
>
23
24
QT_BEGIN_NAMESPACE
25
26
class
QQStyleKitLayoutItem :
public
QObject
27
{
28
Q_OBJECT
29
Q_PROPERTY(QQuickItem *item READ item WRITE setItem NOTIFY itemChanged FINAL)
30
Q_PROPERTY(qreal x READ x NOTIFY xChanged FINAL)
31
Q_PROPERTY(qreal y READ y NOTIFY yChanged FINAL)
32
Q_PROPERTY(qreal width READ width NOTIFY widthChanged FINAL)
33
Q_PROPERTY(qreal height READ height NOTIFY heightChanged FINAL)
34
Q_PROPERTY(Qt::Alignment alignment READ alignment WRITE setAlignment NOTIFY alignmentChanged FINAL)
35
Q_PROPERTY(QMarginsF margins READ margins WRITE setMargins NOTIFY marginsChanged FINAL)
36
Q_PROPERTY(
bool
fillWidth READ fillWidth WRITE setFillWidth NOTIFY fillWidthChanged FINAL)
37
Q_PROPERTY(
bool
fillHeight READ fillHeight WRITE setFillHeight NOTIFY fillHeightChanged FINAL)
38
QML_NAMED_ELEMENT(StyleKitLayoutItem)
39
40
public
:
41
QQStyleKitLayoutItem(QObject *parent =
nullptr
);
42
QQuickItem *item()
const
;
43
void
setItem(QQuickItem *item);
44
45
qreal x()
const
;
46
void
setX(qreal x);
47
qreal y()
const
;
48
void
setY(qreal y);
49
qreal width()
const
;
50
void
setWidth(qreal width);
51
qreal height()
const
;
52
void
setHeight(qreal height);
53
54
Qt::Alignment alignment()
const
;
55
void
setAlignment(Qt::Alignment alignment);
56
57
QMarginsF margins()
const
;
58
void
setMargins(
const
QMarginsF &margins);
59
60
bool
fillWidth()
const
;
61
void
setFillWidth(
bool
fill);
62
63
bool
fillHeight()
const
;
64
void
setFillHeight(
bool
fill);
65
66
signals:
67
void
itemChanged();
68
void
xChanged();
69
void
yChanged();
70
void
widthChanged();
71
void
heightChanged();
72
void
alignmentChanged();
73
void
marginsChanged();
74
void
fillWidthChanged();
75
void
fillHeightChanged();
76
77
private
:
78
QPointer<QQuickItem> m_item;
79
Qt::Alignment m_alignment = Qt::AlignLeft | Qt::AlignVCenter;
80
QMarginsF m_margins;
81
bool
m_fillWidth =
false
;
82
bool
m_fillHeight =
false
;
83
qreal m_x = 0;
84
qreal m_y = 0;
85
qreal m_width = 0;
86
qreal m_height = 0;
87
};
88
89
class
QQStyleKitLayout
:
public
QQuickItem
90
{
91
Q_OBJECT
92
Q_PROPERTY(QQuickItem *container READ container WRITE setContainer NOTIFY containerChanged FINAL)
93
Q_PROPERTY
(
QQmlListProperty
<
QQStyleKitLayoutItem
>
layoutItems
READ
layoutItems
NOTIFY
layoutItemsChanged
FINAL
)
94
Q_PROPERTY
(
QMarginsF
padding
READ
padding
NOTIFY
paddingChanged
FINAL
)
95
Q_PROPERTY
(
QMarginsF
contentMargins
READ
contentMargins
WRITE
setContentMargins
NOTIFY
contentMarginsChanged
FINAL
)
96
Q_PROPERTY
(
qreal
spacing
READ
spacing
WRITE
setSpacing
NOTIFY
spacingChanged
FINAL
)
97
Q_PROPERTY
(
bool
mirrored
READ
isMirrored
WRITE
setMirrored
NOTIFY
mirroredChanged
FINAL
)
98
Q_PROPERTY
(
qreal
implicitWidth
READ
implicitWidth
NOTIFY
implicitWidthChanged
FINAL
)
99
Q_PROPERTY
(
qreal
implicitHeight
READ
implicitHeight
NOTIFY
implicitHeightChanged
FINAL
)
100
Q_PROPERTY
(
bool
enabled
READ
isEnabled
WRITE
setEnabled
NOTIFY
enabledChanged
FINAL
)
101
Q_CLASSINFO
(
"DefaultProperty"
,
"layoutItems"
)
102
QML_NAMED_ELEMENT
(
StyleKitLayout
)
103
104
public
:
105
QQStyleKitLayout
(
QQuickItem
*
parent
=
nullptr
);
106
107
QQuickItem
*
container
()
const
;
108
void
setContainer
(QQuickItem *item);
109
110
QQmlListProperty
<
QQStyleKitLayoutItem
>
layoutItems
();
111
112
QMarginsF
padding
()
const
;
113
114
QMarginsF
contentMargins
()
const
;
115
void
setContentMargins
(
const
QMarginsF &margins);
116
117
qreal
spacing
()
const
;
118
void
setSpacing
(qreal spacing);
119
120
bool
isMirrored
()
const
;
121
void
setMirrored
(
bool
mirrored);
122
123
qreal
implicitWidth
()
const
;
124
qreal
implicitHeight
()
const
;
125
126
void
setImplicitWidth
(qreal width);
127
void
setImplicitHeight
(qreal height);
128
129
bool
isEnabled
()
const
;
130
void
setEnabled
(
bool
enabled);
131
132
signals
:
133
void
containerChanged
();
134
void
layoutItemsChanged
();
135
void
layoutChanged
();
136
void
paddingChanged
();
137
void
contentMarginsChanged
();
138
void
spacingChanged
();
139
void
mirroredChanged
();
140
void
implicitWidthChanged
();
141
void
implicitHeightChanged
();
142
void
enabledChanged
();
143
144
private
:
145
void
updatePolish
()
override
;
146
147
static
void
layoutItem_append(QQmlListProperty<QQStyleKitLayoutItem> *list, QQStyleKitLayoutItem *item);
148
static
qsizetype layoutItem_count(QQmlListProperty<QQStyleKitLayoutItem> *list);
149
static
QQStyleKitLayoutItem *layoutItem_at(QQmlListProperty<QQStyleKitLayoutItem> *list, qsizetype index);
150
static
void
layoutItem_clear(QQmlListProperty<QQStyleKitLayoutItem> *list);
151
152
QPointer<QQuickItem> m_container;
153
QList<QQStyleKitLayoutItem *> m_layoutItems;
154
QMarginsF m_contentMargins;
155
QMarginsF m_padding;
156
qreal m_spacing = 0;
157
qreal m_implicitWidth = 0;;
158
qreal m_implicitHeight = 0;
159
160
bool
m_mirrored: 1;
161
bool
m_enabled: 1;
162
};
163
164
QT_END_NAMESPACE
165
#
endif
// QQUICKUNIFIEDLAYOUT_H
QQStyleKitLayout
Definition
qqstylekitlayout_p.h:90
QQStyleKitLayout::setImplicitHeight
void setImplicitHeight(qreal height)
Definition
qqstylekitlayout.cpp:355
QQStyleKitLayout::mirroredChanged
void mirroredChanged()
QQStyleKitLayout::padding
QMarginsF padding() const
Definition
qqstylekitlayout.cpp:285
QQStyleKitLayout::setSpacing
void setSpacing(qreal spacing)
Definition
qqstylekitlayout.cpp:310
QQStyleKitLayout::contentMarginsChanged
void contentMarginsChanged()
QQStyleKitLayout::implicitHeight
qreal implicitHeight() const
Definition
qqstylekitlayout.cpp:340
QQStyleKitLayout::isMirrored
bool isMirrored() const
Definition
qqstylekitlayout.cpp:320
QQStyleKitLayout::paddingChanged
void paddingChanged()
QQStyleKitLayout::implicitWidth
qreal implicitWidth() const
Definition
qqstylekitlayout.cpp:335
QQStyleKitLayout::contentMargins
QMarginsF contentMargins() const
Definition
qqstylekitlayout.cpp:290
QQStyleKitLayout::setContentMargins
void setContentMargins(const QMarginsF &margins)
Definition
qqstylekitlayout.cpp:295
QQStyleKitLayout::setEnabled
void setEnabled(bool enabled)
Definition
qqstylekitlayout.cpp:370
QQStyleKitLayout::setImplicitWidth
void setImplicitWidth(qreal width)
Definition
qqstylekitlayout.cpp:345
QQStyleKitLayout::setContainer
void setContainer(QQuickItem *item)
Definition
qqstylekitlayout.cpp:221
QQStyleKitLayout::updatePolish
void updatePolish() override
This function should perform any layout as required for this item.
Definition
qqstylekitlayout.cpp:382
QQStyleKitLayout::spacingChanged
void spacingChanged()
QQStyleKitLayout::implicitWidthChanged
void implicitWidthChanged()
QQStyleKitLayout::container
QQuickItem * container() const
Definition
qqstylekitlayout.cpp:216
QQStyleKitLayout::spacing
qreal spacing() const
Definition
qqstylekitlayout.cpp:305
QQStyleKitLayout::layoutChanged
void layoutChanged()
QQStyleKitLayout::isEnabled
bool isEnabled() const
Definition
qqstylekitlayout.cpp:365
QQStyleKitLayout::enabledChanged
void enabledChanged()
QQStyleKitLayout::layoutItems
QQmlListProperty< QQStyleKitLayoutItem > layoutItems()
QQStyleKitLayout::setMirrored
void setMirrored(bool mirrored)
Definition
qqstylekitlayout.cpp:325
QQStyleKitLayout::layoutItemsChanged
void layoutItemsChanged()
QQStyleKitLayout::implicitHeightChanged
void implicitHeightChanged()
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qsequentialanimationgroup.cpp:47
layoutWidth
static QT_BEGIN_NAMESPACE qreal layoutWidth(QQStyleKitLayoutItem *li, qreal availableWidth=.0)
Definition
qqstylekitlayout.cpp:8
vAlignY
static qreal vAlignY(QQStyleKitLayoutItem *li, qreal containerY, qreal containerHeight)
Definition
qqstylekitlayout.cpp:53
totalWidth
static qreal totalWidth(const QList< QQStyleKitLayoutItem * > &items, qreal spacing)
Definition
qqstylekitlayout.cpp:30
totalHeight
static qreal totalHeight(const QList< QQStyleKitLayoutItem * > &items)
Definition
qqstylekitlayout.cpp:40
layoutHeight
static qreal layoutHeight(QQStyleKitLayoutItem *li, qreal availableHeight=.0)
Definition
qqstylekitlayout.cpp:19
qtdeclarative
src
labs
stylekit
impl
qqstylekitlayout_p.h
Generated on
for Qt by
1.18.0