diff options
author | ꦌ ꦫꦶ ꦏ꧀ꦦꦿ ꦧ ꦮ ꦑ ꦩ ꦭ꧀ <erik@darapsa.co.id> | 2019-09-21 09:04:26 +0800 |
---|---|---|
committer | ꦌ ꦫꦶ ꦏ꧀ꦦꦿ ꦧ ꦮ ꦑ ꦩ ꦭ꧀ <erik@darapsa.co.id> | 2019-09-21 09:04:26 +0800 |
commit | 1c2e0bdae47d142111abe96eabf39dceb8ea3051 (patch) | |
tree | c1a929b333f07be111ea31d3d7cc89ebef84fd06 /Home.qml | |
parent | 90bff8fb6e3e3b1715c76a28ad27686243e3b307 (diff) |
Separate logics from presentation on Home
Note: Inner stack view pushes (instead of pops) day forms,
and there needs to be some button that pops them back,
like in Qt gallery example.
Diffstat (limited to 'Home.qml')
-rw-r--r-- | Home.qml | 145 |
1 files changed, 41 insertions, 104 deletions
@@ -1,107 +1,44 @@ import QtQuick 2.12 import QtQuick.Controls 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Layouts 1.12 -import "pages" - -Page { - header: ToolBar { - background: Rectangle { - color: "#FAFFFFFF" - } - RowLayout { - anchors.fill: parent - spacing: 0 - ToolButton { - id: menuButton - icon.name: "menu-button" - icon.source: "assets/menu-24px.svg" - highlighted: true - onClicked: { - drawer.open() - } - } - Label { - text: contentView.currentItem.title - Layout.leftMargin: 16 - verticalAlignment: Text.AlignVCenter - horizontalAlignment: Text.AlignLeft - wrapMode: Text.WordWrap - font.family: "Work Sans" - font.weight: Font.Medium - font.pointSize: 20 - color: "#000000" - Layout.fillWidth: true - } - ToolButton { - id: profileButton - icon.name: "profile-button" - icon.source: "assets/profile-24px.svg" - highlighted: true - onClicked: { - pageView.push("Profile.qml") - } - } - } - } - footer: RowLayout { - RoundButton { - id: roundButton - width: 64 - height: 64 - Layout.alignment: Qt.AlignRight | Qt.AlignVCenter - Layout.minimumHeight: 64 - Layout.minimumWidth: 64 - display: AbstractButton.IconOnly - spacing: 8 - - padding: 16 - highlighted: true - - icon.name: "add-icon" - icon.source: "/assets/add-24px.svg" - } - } - - Drawer { - id: drawer - width: window.width * 0.8 - height: window.height - visible: false - - Column { - anchors.fill: parent - ItemDelegate { - text: qsTr("Today") - width: parent.width - onClicked: { - contentView.pop("HomeForm.ui.qml") - drawer.close() - } - } - - ItemDelegate { - text:qsTr("Future") - width: parent.width - onClicked: { - contentView.push("FutureForm.ui.qml") - drawer.close() - } - - } - } - } - - StackView { - id: contentView - anchors.fill: parent - initialItem: HomeForm {} - } -} - - -/*##^## -Designer { - D{i:0;autoSize:true;height:480;width:640} +import "forms" + +HomeForm { + menuButton { + icon.source: "assets/menu-24px.svg" + onClicked: drawer.open() + } + + titleLabel.text: contentView.currentItem.title + + profileButton { + icon.source: "assets/profile-24px.svg" + onClicked: pageView.push("Profile.qml") + } + + roundButton.icon.source: "/assets/add-24px.svg" + + Drawer { + id: drawer + width: window.width * 0.8 + height: window.height + visible: false + + DayListForm { + todayItemDelegate { + text: qsTr("Today") + onClicked: { + contentView.push("Today.qml") + drawer.close() + } + } + + futureItemDelegate { + text:qsTr("Future") + onClicked: { + contentView.push("Future.qml") + drawer.close() + } + } + } + } } -##^##*/ |