blob: 44911c1b290743f4c10d3cf99f81f3d6dafd1bd0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
// Copyright (C) 2026 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
// A Flow layout that centers its children horizontally
// Note that the implementation adds unnecessary spacing in rows that are not full
Flow {
property int customMargin: (children.length && (children[0].width + spacing <= parentWidth))
? (parentWidth - rowWidth) / 2 + padding
: padding
property int parentWidth: parent.width - 2 * padding
property int rowCount: children.length ? parentWidth / (children[0].width + spacing) : 0
property int rowWidth: children.length
? rowCount * children[0].width + (rowCount - 1) * spacing + 2 * padding
: 0
anchors {
leftMargin: customMargin
rightMargin: customMargin
}
}
|