diff --git a/storybook/pages/SlippageSelectorPage.qml b/storybook/pages/SlippageSelectorPage.qml new file mode 100644 index 0000000000..7a6f029082 --- /dev/null +++ b/storybook/pages/SlippageSelectorPage.qml @@ -0,0 +1,68 @@ +import QtQuick 2.15 +import QtQuick.Layouts 1.15 +import QtQuick.Controls 2.15 + +import StatusQ.Core 0.1 +import StatusQ.Core.Theme 0.1 + +import shared.controls 1.0 +import utils 1.0 + +import Storybook 1.0 + +SplitView { + orientation: Qt.Horizontal + + Logs { id: logs } + + Pane { + SplitView.fillWidth: true + SplitView.fillHeight: true + + SlippageSelector { + id: buttonRow + + anchors.centerIn: parent + } + } + + LogsAndControlsPanel { + SplitView.fillHeight: true + SplitView.preferredWidth: 300 + + logsView.logText: logs.logText + + ColumnLayout { + anchors.fill: parent + + Label { + Layout.fillWidth: true + font.weight: Font.Medium + text: "Value: %1".arg(buttonRow.value) + } + Label { + Layout.fillWidth: true + font.weight: Font.Medium + text: "Valid: " + buttonRow.valid//"%1".arg(buttonRow.valid ? "true" : "false") + } + + ColumnLayout { + Repeater { + model: [0.1, 0.5, 0.24, 0.8, 120.84] + + Button { + text: "set " + modelData + onClicked: buttonRow.value = modelData + } + } + } + + Item { Layout.fillHeight: true } + } + } +} + +// category: Controls + +// https://www.figma.com/design/TS0eQX9dAZXqZtELiwKIoK/Swap---Milestone-1?node-id=3409-257346&t=ENK93cK7GyTqEV8S-0 +// https://www.figma.com/design/TS0eQX9dAZXqZtELiwKIoK/Swap---Milestone-1?node-id=3410-262441&t=ENK93cK7GyTqEV8S-0 diff --git a/storybook/pages/StatusButtonRowPage.qml b/storybook/pages/StatusButtonRowPage.qml index 7a6f029082..72a57e6df7 100644 --- a/storybook/pages/StatusButtonRowPage.qml +++ b/storybook/pages/StatusButtonRowPage.qml @@ -4,8 +4,8 @@ import QtQuick.Controls 2.15 import StatusQ.Core 0.1 import StatusQ.Core.Theme 0.1 +import StatusQ.Controls 0.1 -import shared.controls 1.0 import utils 1.0 import Storybook 1.0 @@ -15,14 +15,27 @@ SplitView { Logs { id: logs } + QtObject { + id: d + readonly property var values: [0.1, 0.5, 0.7, 1] // predefined values + } + + ListModel { + id: valuesModel + } + + Component.onCompleted: { + valuesModel.append(d.values.map(i => ({ text: "%L1".arg(i), value: i }))) + } + Pane { SplitView.fillWidth: true SplitView.fillHeight: true - SlippageSelector { + StatusButtonRow { id: buttonRow - anchors.centerIn: parent + model: valuesModel } } @@ -38,23 +51,13 @@ SplitView { Label { Layout.fillWidth: true font.weight: Font.Medium - text: "Value: %1".arg(buttonRow.value) + text: "Raw model: %1".arg(d.values) } + Label { Layout.fillWidth: true font.weight: Font.Medium - text: "Valid: " + buttonRow.valid//"%1".arg(buttonRow.valid ? "true" : "false") - } - - ColumnLayout { - Repeater { - model: [0.1, 0.5, 0.24, 0.8, 120.84] - - Button { - text: "set " + modelData - onClicked: buttonRow.value = modelData - } - } + text: "Value: %1".arg(buttonRow.value) } Item { Layout.fillHeight: true } diff --git a/ui/imports/shared/controls/StatusButtonRow.qml b/ui/StatusQ/src/StatusQ/Controls/StatusButtonRow.qml similarity index 93% rename from ui/imports/shared/controls/StatusButtonRow.qml rename to ui/StatusQ/src/StatusQ/Controls/StatusButtonRow.qml index 602909fb78..1f7d1c94f8 100644 --- a/ui/imports/shared/controls/StatusButtonRow.qml +++ b/ui/StatusQ/src/StatusQ/Controls/StatusButtonRow.qml @@ -5,8 +5,6 @@ import QtQuick.Layouts 1.15 import StatusQ.Core 0.1 import StatusQ.Controls 0.1 -import utils 1.0 - RowLayout { id: root @@ -16,7 +14,7 @@ RowLayout { property alias model: repeater.model property var value: null - spacing: Style.current.halfPadding + spacing: 8 Repeater { id: repeater diff --git a/ui/StatusQ/src/StatusQ/Controls/qmldir b/ui/StatusQ/src/StatusQ/Controls/qmldir index 4b6fba584a..d388f76fb7 100644 --- a/ui/StatusQ/src/StatusQ/Controls/qmldir +++ b/ui/StatusQ/src/StatusQ/Controls/qmldir @@ -15,6 +15,7 @@ StatusTabBarIconButton 0.1 StatusTabBarIconButton.qml StatusToolTip 0.1 StatusToolTip.qml StatusBaseButton 0.1 StatusBaseButton.qml StatusButton 0.1 StatusButton.qml +StatusButtonRow 0.1 StatusButtonRow.qml StatusFlatButton 0.1 StatusFlatButton.qml StatusRoundButton 0.1 StatusRoundButton.qml StatusFlatRoundButton 0.1 StatusFlatRoundButton.qml diff --git a/ui/StatusQ/src/statusq.qrc b/ui/StatusQ/src/statusq.qrc index 26041a3a7f..c1089218ad 100644 --- a/ui/StatusQ/src/statusq.qrc +++ b/ui/StatusQ/src/statusq.qrc @@ -93,6 +93,7 @@ StatusQ/Controls/StatusBaseInput.qml StatusQ/Controls/StatusBlockProgressBar.qml StatusQ/Controls/StatusButton.qml + StatusQ/Controls/StatusButtonRow.qml StatusQ/Controls/StatusChatCommandButton.qml StatusQ/Controls/StatusChatInfoButton.qml StatusQ/Controls/StatusChatListCategoryItemButton.qml diff --git a/ui/imports/shared/controls/qmldir b/ui/imports/shared/controls/qmldir index da1f5f9085..3df8219596 100644 --- a/ui/imports/shared/controls/qmldir +++ b/ui/imports/shared/controls/qmldir @@ -33,7 +33,6 @@ SettingsRadioButton 1.0 SettingsRadioButton.qml ShapeRectangle 1.0 ShapeRectangle.qml SlippageSelector 1.0 SlippageSelector.qml SocialLinkPreview 1.0 SocialLinkPreview.qml -StatusButtonRow 1.0 StatusButtonRow.qml StatusSyncCodeInput 1.0 StatusSyncCodeInput.qml StatusSyncCodeScan 1.0 StatusSyncCodeScan.qml StatusSyncingInstructions 1.0 StatusSyncingInstructions.qml