Compare commits

...

3 commits

Author SHA1 Message Date
Benjamin Palko
a10c2f0254 use pane on items 2025-09-08 10:56:07 -04:00
Benjamin Palko
162f8f6b6f tab button padding 2025-09-08 10:13:13 -04:00
Benjamin Palko
e180fee2a9 styled pane 2025-09-08 08:23:57 -04:00
4 changed files with 66 additions and 19 deletions

19
components/StyledPane.qml Normal file
View file

@ -0,0 +1,19 @@
import qs.config
import QtQuick
import QtQuick.Controls
Pane {
padding: 24
background: Rectangle {
color: "transparent"
border.width: Styling.theme.border
border.color: Styling.theme.basecontent
opacity: 0.33
Behavior on border.color {
ColorAnimation {
duration: Styling.animations.speed.fast
}
}
radius: Styling.theme.radiusBox
}
}

View file

@ -12,6 +12,7 @@ TabButton {
text: control.text text: control.text
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignVCenter
horizontalAlignment: Text.AlignHCenter horizontalAlignment: Text.AlignHCenter
padding: 6
color: control.hovered ? Styling.theme.primarycontent : Styling.theme.basecontent color: control.hovered ? Styling.theme.primarycontent : Styling.theme.basecontent
Behavior on color { Behavior on color {
ColorAnimation { ColorAnimation {

View file

@ -1,29 +1,42 @@
import qs.components import qs.components
import qs.config import qs.config
import QtQuick import QtQuick
import QtQuick.Controls
import QtQuick.Layouts import QtQuick.Layouts
GridLayout { ColumnLayout {
flow: GridLayout.TopToBottom
columns: 2 spacing: Styling.layout.spacing.xl
rows: 10
ColumnLayout {
StyledText {
text: "Button"
font.pixelSize: 18
}
StyledPane {
StyledButton {
text: "Button"
}
}
}
ColumnLayout { ColumnLayout {
StyledText { StyledText {
text: "Icon Button" text: "Icon Button"
font.pixelSize: 18 font.pixelSize: 18
} }
StyledPane {
StyledIconButton { StyledIconButton {
text: Styling.lucide.icons.square text: Styling.lucide.icons.square
} }
} }
}
ColumnLayout { ColumnLayout {
StyledText { StyledText {
text: "Slider" text: "Slider"
font.pixelSize: 18 font.pixelSize: 18
} }
StyledPane {
StyledSlider { StyledSlider {
id: slider id: slider
from: 0 from: 0
@ -31,4 +44,10 @@ GridLayout {
value: 50 value: 50
} }
} }
}
component FieldElement: QtObject {
property string title
property Component component
}
} }

View file

@ -27,15 +27,17 @@ StyledPanelWindow {
} }
} }
ColumnLayout { Item {
id: layout id: layout
anchors.fill: parent anchors.fill: parent
spacing: 0
StyledTabBar { StyledTabBar {
id: tabs id: tabs
Layout.fillWidth: true anchors.top: parent.top
anchors.left: parent.left
anchors.right: parent.right
anchors.bottom: stack.top
StyledTabButton { StyledTabButton {
text: "Fields" text: "Fields"
} }
@ -48,20 +50,26 @@ StyledPanelWindow {
} }
StackLayout { StackLayout {
id: stack
anchors.top: tabs.bottom
anchors.left: parent.left
anchors.right: parent.right
anchors.bottom: parent.bottom
currentIndex: tabs.currentIndex currentIndex: tabs.currentIndex
ScrollView { ScrollView {
Layout.maximumHeight: 400 Layout.fillWidth: true
padding: 36 padding: 36
Fields {} Fields {}
} }
ScrollView { ScrollView {
Layout.maximumHeight: 400
padding: 36 padding: 36
Selectors {} Selectors {}
} }
ScrollView { ScrollView {
Layout.maximumHeight: 400 Layout.fillWidth: true
padding: 36 padding: 36
Components {} Components {}
} }