-
Notifications
You must be signed in to change notification settings - Fork 5
/
main.qml
118 lines (101 loc) · 2.8 KB
/
main.qml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
import QtQuick 2.14
import QtQuick.Controls 2.14
import "Pages"
import "Pages/Welcome"
import "Pages/Settings"
import "Pages/Recorder"
import "Components"
import "Components/FontAwesome"
ApplicationWindow {
id: appWindow
visible: true
minimumWidth: 640
width: 640
minimumHeight: 800
height: 800
title: qsTr("SpeechRateMeter+")
StackView {
id: stackView
anchors.fill: parent
}
Bus {
id: bus
stackView: stackView
}
Component.onCompleted: {
bus.openWelcomePage()
}
header: ToolBar {
contentHeight: toolButton.implicitHeight
FontAwesomeToolButton {
id: menuButton
type: FontAwesome.solid
icon: FontAwesome.icons.faBars
anchors.left: parent.left
anchors.leftMargin: 10
button.onClicked: drawer.open()
}
FontAwesomeToolButton {
id: toolButton
type: FontAwesome.solid
icon: FontAwesome.icons.faArrowLeft
anchors.right: parent.right
anchors.rightMargin: 10
visible: stackView.depth > 1
button.onClicked: stackView.pop()
}
// Label {
// text: stackView.currentItem.title
// anchors.centerIn: parent
// }
}
Drawer {
id: drawer
width: appWindow.width * 0.66
height: appWindow.height
Column {
spacing: 10
anchors.fill: parent
ItemDelegate {
id: itemDelegate
width: parent.width
onClicked: {
bus.openWelcomePage()
drawer.close()
}
FontAwesomeIconText {
icon: FontAwesome.icons.faHouseUser
text: qsTr("Home")
anchors.fill: parent
color: "black"
}
}
ItemDelegate {
width: parent.width
onClicked: {
bus.openResultsPage()
drawer.close()
}
FontAwesomeIconText {
icon: FontAwesome.icons.faHistory
text: qsTr("Results History")
anchors.fill: parent
color: "black"
}
}
ItemDelegate {
width: parent.width
onClicked: {
bus.openSettingsPage()
drawer.close()
}
FontAwesomeIconText {
icon: FontAwesome.icons.faSlidersH
text: qsTr("Settings")
anchors.fill: parent
color: "black"
}
}
}
}
}