Files
metabuilder/qml/components/layout/FlexRow.qml
johndoe6345789 6e394d7846 style(qt6): 80-char margin enforced — 737 violations → 29 remaining
191 files reformatted across views, components, widgets, hybrid, contexts.
New components: CCreateSchemaDialog, CAddFieldDialog, CAdminContentPanel.
JS helpers: connBadgeStatus/Text, adminStats, exampleLabels, onLevelClicked.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 15:48:39 +00:00

54 lines
1.5 KiB
QML

import QtQuick
import QtQuick.Layouts
import QmlComponents 1.0
/**
* FlexRow.qml - Horizontal flex container (mirrors SCSS .flex, .flex-row
// utilities)
* Simplified RowLayout with common flex patterns
*
* Usage:
* FlexRow {
* Text { text: "Left" }
* Text { text: "Right" }
* }
*
* FlexRow {
* justify: "space-between"
* align: "center"
* gap: "md"
* ...
* }
*/
RowLayout {
id: root
// Public properties
// start, center, end, space-between, space-around
property string justify: "start"
property string align: "stretch" // start, center, end, stretch
property string gap: "sm" // none, xs, sm, md, lg, xl, or number
property bool wrap: false
property bool fill: true // Fill parent width
// Apply gap
spacing: {
switch (gap) {
case "none": return 0
case "xs": return StyleVariables.spacingXs
case "sm": return StyleVariables.spacingSm
case "md": return StyleVariables.spacingMd
case "lg": return StyleVariables.spacingLg
case "xl": return StyleVariables.spacingXl
default: return parseInt(gap) || StyleVariables.spacingSm
}
}
// Fill width
Layout.fillWidth: fill
// Note: QML RowLayout doesn't support justify-content directly
// For space-between, use Spacer {} between items
// For centering, wrap in Item with anchors.centerIn
}