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
qquickflexboxlayoutitem_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
QQUICKFLEXBOXLAYOUTITEM_P_H
6
#
define
QQUICKFLEXBOXLAYOUTITEM_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
<
QtQuick
/
private
/
qquickitem_p
.
h
>
20
#
include
<
QtQuickLayouts
/
private
/
qquickflexboxlayout_p
.
h
>
21
#
include
<
yoga
/
Yoga
.
h
>
22
23
QT_BEGIN_NAMESPACE
24
25
struct
SizeHints {
26
inline
QSizeF &min() {
return
array[Qt::MinimumSize]; }
27
inline
QSizeF &pref() {
return
array[Qt::PreferredSize]; }
28
inline
QSizeF &max() {
return
array[Qt::MaximumSize]; }
29
QSizeF array[Qt::NSizeHints];
30
QSizeF margins{0,0};
31
};
32
33
class
QQuickFlexboxLayoutItem
34
{
35
public
:
36
explicit
QQuickFlexboxLayoutItem
(QQuickItem *item);
37
~
QQuickFlexboxLayoutItem
();
38
39
void
resetDefault
();
40
void
resetMargins
();
41
void
resetPaddings
();
42
void
resetSize
();
43
44
QQuickItem
*
quickItem
()
const
{
return
m_item; }
45
YGNodeRef
yogaItem
()
const
{
return
m_yogaNode; }
46
47
void
insertChild
(
QQuickFlexboxLayoutItem
*item,
int
index);
48
49
// Adapter APIs to the yoga library
50
void
setMinSize
(
const
QSizeF &size);
51
void
setSize
(
const
QSizeF &size);
52
void
setWidth
(
const
qreal &width);
53
void
setHeight
(
const
qreal &height);
54
void
setMaxSize
(
const
QSizeF &size);
55
void
setFlexBasis
(qreal value,
bool
reset =
false
);
56
void
setFlexDirection
(QQuickFlexboxLayout::FlexboxDirection direction);
57
void
setFlexWrap
(QQuickFlexboxLayout::FlexboxWrap wrap);
58
void
setFlexAlignItemsProperty
(QQuickFlexboxLayout::FlexboxAlignment align);
59
void
setFlexAlignSelfProperty
(QQuickFlexboxLayout::FlexboxAlignment align);
60
void
setFlexAlignContentProperty
(QQuickFlexboxLayout::FlexboxAlignment align);
61
void
setFlexJustifyContentProperty
(QQuickFlexboxLayout::FlexboxJustify justify);
62
void
setItemGrowAlongMainAxis
(qreal value);
63
void
setItemShrinkAlongMainAxis
(qreal value);
64
void
setFlexMargin
(QQuickFlexboxLayout::FlexboxEdge edge, qreal value);
65
void
setFlexPadding
(QQuickFlexboxLayout::FlexboxEdge edge, qreal value);
66
void
setItemStretchAlongCrossSection
();
67
void
setFlexGap
(QQuickFlexboxLayout::FlexboxGap gap, qreal value);
68
void
inheritItemStretchAlongCrossSection
();
69
70
bool
hasMeasureFunc
()
const
;
71
void
resetMeasureFunc
();
72
QPoint
position
()
const
;
73
QSizeF
size
()
const
;
74
bool
isFlexBasisUndefined
()
const
;
75
bool
isItemStreched
()
const
;
76
QSizeF
computedLayoutSize
() {
return
m_computedLayoutSize; }
77
SizeHints &
cachedItemSizeHints
()
const
;
78
void
computeLayout
(
const
QSizeF &size = QSizeF());
79
80
private
:
81
QQuickItem *m_item;
82
YGNodeRef m_yogaNode;
83
QSizeF m_computedLayoutSize;
84
mutable
SizeHints m_cachedSizeHint;
85
};
86
87
QT_END_NAMESPACE
88
89
#
endif
// QQUICKFLEXBOXLAYOUTITEM_P_H
QQuickFlexboxLayoutItem
Definition
qquickflexboxlayoutitem_p.h:34
QQuickFlexboxLayoutItem::insertChild
void insertChild(QQuickFlexboxLayoutItem *item, int index)
Definition
qquickflexboxlayoutitem.cpp:252
QQuickFlexboxLayoutItem::setFlexWrap
void setFlexWrap(QQuickFlexboxLayout::FlexboxWrap wrap)
Definition
qquickflexboxlayoutitem.cpp:171
QQuickFlexboxLayoutItem::resetPaddings
void resetPaddings()
Definition
qquickflexboxlayoutitem.cpp:231
QQuickFlexboxLayoutItem::setItemStretchAlongCrossSection
void setItemStretchAlongCrossSection()
Definition
qquickflexboxlayoutitem.cpp:161
QQuickFlexboxLayoutItem::setItemGrowAlongMainAxis
void setItemGrowAlongMainAxis(qreal value)
Definition
qquickflexboxlayoutitem.cpp:151
QQuickFlexboxLayoutItem::setMaxSize
void setMaxSize(const QSizeF &size)
Definition
qquickflexboxlayoutitem.cpp:134
QQuickFlexboxLayoutItem::setFlexAlignContentProperty
void setFlexAlignContentProperty(QQuickFlexboxLayout::FlexboxAlignment align)
Definition
qquickflexboxlayoutitem.cpp:181
QQuickFlexboxLayoutItem::setWidth
void setWidth(const qreal &width)
Definition
qquickflexboxlayoutitem.cpp:124
QQuickFlexboxLayoutItem::hasMeasureFunc
bool hasMeasureFunc() const
Definition
qquickflexboxlayoutitem.cpp:270
QQuickFlexboxLayoutItem::QQuickFlexboxLayoutItem
QQuickFlexboxLayoutItem(QQuickItem *item)
Definition
qquickflexboxlayoutitem.cpp:99
QQuickFlexboxLayoutItem::setFlexMargin
void setFlexMargin(QQuickFlexboxLayout::FlexboxEdge edge, qreal value)
Definition
qquickflexboxlayoutitem.cpp:196
QQuickFlexboxLayoutItem::setFlexGap
void setFlexGap(QQuickFlexboxLayout::FlexboxGap gap, qreal value)
Definition
qquickflexboxlayoutitem.cpp:206
QQuickFlexboxLayoutItem::setFlexAlignItemsProperty
void setFlexAlignItemsProperty(QQuickFlexboxLayout::FlexboxAlignment align)
Definition
qquickflexboxlayoutitem.cpp:176
QQuickFlexboxLayoutItem::size
QSizeF size() const
Definition
qquickflexboxlayoutitem.cpp:247
QQuickFlexboxLayoutItem::resetMeasureFunc
void resetMeasureFunc()
Definition
qquickflexboxlayoutitem.cpp:275
QQuickFlexboxLayoutItem::isItemStreched
bool isItemStreched() const
Definition
qquickflexboxlayoutitem.cpp:211
QQuickFlexboxLayoutItem::isFlexBasisUndefined
bool isFlexBasisUndefined() const
Definition
qquickflexboxlayoutitem.cpp:145
QQuickFlexboxLayoutItem::quickItem
QQuickItem * quickItem() const
Definition
qquickflexboxlayoutitem_p.h:44
QQuickFlexboxLayoutItem::cachedItemSizeHints
SizeHints & cachedItemSizeHints() const
Definition
qquickflexboxlayoutitem.cpp:280
QQuickFlexboxLayoutItem::position
QPoint position() const
Definition
qquickflexboxlayoutitem.cpp:242
QQuickFlexboxLayoutItem::computedLayoutSize
QSizeF computedLayoutSize()
Definition
qquickflexboxlayoutitem_p.h:76
QQuickFlexboxLayoutItem::~QQuickFlexboxLayoutItem
~QQuickFlexboxLayoutItem()
Definition
qquickflexboxlayoutitem.cpp:107
QQuickFlexboxLayoutItem::setFlexPadding
void setFlexPadding(QQuickFlexboxLayout::FlexboxEdge edge, qreal value)
Definition
qquickflexboxlayoutitem.cpp:201
QQuickFlexboxLayoutItem::setFlexJustifyContentProperty
void setFlexJustifyContentProperty(QQuickFlexboxLayout::FlexboxJustify justify)
Definition
qquickflexboxlayoutitem.cpp:186
QQuickFlexboxLayoutItem::setFlexDirection
void setFlexDirection(QQuickFlexboxLayout::FlexboxDirection direction)
Definition
qquickflexboxlayoutitem.cpp:166
QQuickFlexboxLayoutItem::setFlexBasis
void setFlexBasis(qreal value, bool reset=false)
Definition
qquickflexboxlayoutitem.cpp:140
QQuickFlexboxLayoutItem::setMinSize
void setMinSize(const QSizeF &size)
Definition
qquickflexboxlayoutitem.cpp:112
QQuickFlexboxLayoutItem::resetMargins
void resetMargins()
Definition
qquickflexboxlayoutitem.cpp:223
QQuickFlexboxLayoutItem::yogaItem
YGNodeRef yogaItem() const
Definition
qquickflexboxlayoutitem_p.h:45
QQuickFlexboxLayoutItem::setFlexAlignSelfProperty
void setFlexAlignSelfProperty(QQuickFlexboxLayout::FlexboxAlignment align)
Definition
qquickflexboxlayoutitem.cpp:191
QQuickFlexboxLayoutItem::resetSize
void resetSize()
Definition
qquickflexboxlayoutitem.cpp:236
QQuickFlexboxLayoutItem::setHeight
void setHeight(const qreal &height)
Definition
qquickflexboxlayoutitem.cpp:129
QQuickFlexboxLayoutItem::resetDefault
void resetDefault()
Definition
qquickflexboxlayoutitem.cpp:259
QQuickFlexboxLayoutItem::setItemShrinkAlongMainAxis
void setItemShrinkAlongMainAxis(qreal value)
Definition
qquickflexboxlayoutitem.cpp:156
QQuickFlexboxLayoutItem::computeLayout
void computeLayout(const QSizeF &size=QSizeF())
Definition
qquickflexboxlayoutitem.cpp:285
QQuickFlexboxLayoutItem::inheritItemStretchAlongCrossSection
void inheritItemStretchAlongCrossSection()
Definition
qquickflexboxlayoutitem.cpp:218
QQuickFlexboxLayoutItem::setSize
void setSize(const QSizeF &size)
Definition
qquickflexboxlayoutitem.cpp:118
qtdeclarative
src
quicklayouts
qquickflexboxlayoutitem_p.h
Generated on
for Qt by
1.18.0