summaryrefslogtreecommitdiff
path: root/prototype_2016/third_party/qml-material/demo
diff options
context:
space:
mode:
Diffstat (limited to 'prototype_2016/third_party/qml-material/demo')
-rw-r--r--prototype_2016/third_party/qml-material/demo/BottomSheetDemo.qml81
-rw-r--r--prototype_2016/third_party/qml-material/demo/ButtonDemo.qml89
-rw-r--r--prototype_2016/third_party/qml-material/demo/CheckBoxDemo.qml74
-rw-r--r--prototype_2016/third_party/qml-material/demo/ColorPaletteDemo.qml159
-rw-r--r--prototype_2016/third_party/qml-material/demo/CustomIconsDemo.qml132
-rw-r--r--prototype_2016/third_party/qml-material/demo/DatePickerDemo.qml67
-rw-r--r--prototype_2016/third_party/qml-material/demo/DialogDemo.qml134
-rw-r--r--prototype_2016/third_party/qml-material/demo/FormsDemo.qml142
-rw-r--r--prototype_2016/third_party/qml-material/demo/ListItemsDemo.qml62
-rw-r--r--prototype_2016/third_party/qml-material/demo/PageStackDemo.qml91
-rw-r--r--prototype_2016/third_party/qml-material/demo/ProgressBarDemo.qml165
-rw-r--r--prototype_2016/third_party/qml-material/demo/RadioButtonDemo.qml70
-rw-r--r--prototype_2016/third_party/qml-material/demo/SidebarPage.qml51
-rw-r--r--prototype_2016/third_party/qml-material/demo/SliderDemo.qml120
-rw-r--r--prototype_2016/third_party/qml-material/demo/SubPage.qml77
-rw-r--r--prototype_2016/third_party/qml-material/demo/SwitchDemo.qml70
-rw-r--r--prototype_2016/third_party/qml-material/demo/TextFieldDemo.qml54
-rw-r--r--prototype_2016/third_party/qml-material/demo/TimePickerDemo.qml58
-rw-r--r--prototype_2016/third_party/qml-material/demo/TypographyDemo.qml121
-rw-r--r--prototype_2016/third_party/qml-material/demo/demo.pro6
-rw-r--r--prototype_2016/third_party/qml-material/demo/demo.qmlproject20
-rw-r--r--prototype_2016/third_party/qml-material/demo/demo.qrc48
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons.yml19
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons/action_account_circle.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons/action_autorenew.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons/action_delete.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons/action_language.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons/action_settings.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons/alert_warning.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons/communication_email.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons/content_add.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons/content_create.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons/content_forward.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons/device_access_alarm.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons/file_file_download.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons/icons.qrc51
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons/image_color_lens.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons/image_edit.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons/maps_place.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons/navigation_arrow_drop_down.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/icons/social_share.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/images/balloon.jpgbin1805527 -> 0 bytes
-rw-r--r--prototype_2016/third_party/qml-material/demo/images/go-last.color.svg157
-rw-r--r--prototype_2016/third_party/qml-material/demo/images/list-add.color.svg180
-rw-r--r--prototype_2016/third_party/qml-material/demo/images/weather-pouring.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/images/weather-sunset.svg1
-rw-r--r--prototype_2016/third_party/qml-material/demo/main.cpp11
-rw-r--r--prototype_2016/third_party/qml-material/demo/main.qml268
48 files changed, 0 insertions, 2596 deletions
diff --git a/prototype_2016/third_party/qml-material/demo/BottomSheetDemo.qml b/prototype_2016/third_party/qml-material/demo/BottomSheetDemo.qml
deleted file mode 100644
index e73344c..0000000
--- a/prototype_2016/third_party/qml-material/demo/BottomSheetDemo.qml
+++ /dev/null
@@ -1,81 +0,0 @@
1/*
2 * QML Material - An application framework implementing Material Design.
3 * Copyright (C) 2015 Steve Coffey <scoffey@barracuda.com>
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU Lesser General Public License as
7 * published by the Free Software Foundation, either version 2.1 of the
8 * License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18import QtQuick 2.4
19import Material 0.2
20import Material.ListItems 0.1
21
22Item {
23 anchors.fill: parent
24 id: bottomSheetDemo
25
26 Button {
27 anchors.centerIn: parent
28 elevation: 1
29 text: "Open Bottom Sheet"
30 onClicked: {
31 actionSheet.open()
32 }
33 }
34
35 BottomActionSheet {
36 id: actionSheet
37
38 title: "Demo!"
39
40 actions: [
41 Action {
42 iconName: "social/share"
43 name: "Share"
44 },
45
46 Action {
47 iconName: "file/file_download"
48 name: "Download (Disabled)"
49 enabled: false
50 },
51
52 Action {
53 iconName: "action/autorenew"
54 name: "THIS SHOULD BE HIDDEN"
55 visible: false
56 },
57
58 Action {
59 iconName: "action/settings"
60 name: "Details"
61 hasDividerAfter: true
62 },
63
64 Action {
65 iconName: "content/forward"
66 name: "Move"
67 },
68
69 Action {
70 iconName: "action/delete"
71 name: "Delete"
72 },
73
74 Action {
75 iconName: "content/create"
76 name: "Rename"
77 }
78 ]
79 }
80}
81
diff --git a/prototype_2016/third_party/qml-material/demo/ButtonDemo.qml b/prototype_2016/third_party/qml-material/demo/ButtonDemo.qml
deleted file mode 100644
index df74e45..0000000
--- a/prototype_2016/third_party/qml-material/demo/ButtonDemo.qml
+++ /dev/null
@@ -1,89 +0,0 @@
1import QtQuick 2.4
2import Material 0.2
3import QtQuick.Controls 1.3 as Controls
4
5Item {
6
7 Column {
8 anchors.centerIn: parent
9 spacing: dp(20)
10
11 Button {
12 text: "Simple Button"
13 anchors.horizontalCenter: parent.horizontalCenter
14 onClicked: snackbar.open("Simple, isn't it?")
15 }
16
17 Button {
18 text: "Raised Button"
19 elevation: 1
20 anchors.horizontalCenter: parent.horizontalCenter
21 onClicked: snackbar.open("This is a snackbar")
22 }
23
24 Button {
25 text: "Disabled Raised Button"
26 elevation: 1
27 enabled: false
28 anchors.horizontalCenter: parent.horizontalCenter
29 }
30
31 Button {
32 text: "Wide Button"
33
34 width: dp(200)
35 elevation: 1
36 anchors.horizontalCenter: parent.horizontalCenter
37
38 onClicked: snackbar.open("That button is wide, and so is this snackbar!")
39 }
40
41 Button {
42 id: focusableButton
43 text: "Focusable with really long text"
44 elevation: 1
45 activeFocusOnPress: true
46 anchors.horizontalCenter: parent.horizontalCenter
47
48 onClicked: snackbar.open("The text is really very very very very very long and now it needs to wrap, so this should show as two lines!")
49 }
50
51 Button {
52 text: "Colored button"
53 textColor: Theme.accentColor
54 anchors.horizontalCenter: parent.horizontalCenter
55
56 onClicked: snackbar.open("That button is colored!")
57 }
58
59 Button {
60 text: "Focusable button #2"
61 elevation: 1
62 activeFocusOnPress: true
63 backgroundColor: Theme.primaryColor
64 anchors.horizontalCenter: parent.horizontalCenter
65
66 onClicked: snackbar.open("That button is colored!")
67 }
68 }
69
70 ActionButton {
71 anchors {
72 right: parent.right
73 bottom: snackbar.top
74 margins: dp(32)
75 }
76
77 action: Action {
78 id: addContent
79 text: "&Copy"
80 shortcut: "Ctrl+C"
81 onTriggered: snackbar.open("We do actions too!")
82 }
83 iconName: "content/add"
84 }
85
86 Snackbar {
87 id: snackbar
88 }
89}
diff --git a/prototype_2016/third_party/qml-material/demo/CheckBoxDemo.qml b/prototype_2016/third_party/qml-material/demo/CheckBoxDemo.qml
deleted file mode 100644
index 27f626e..0000000
--- a/prototype_2016/third_party/qml-material/demo/CheckBoxDemo.qml
+++ /dev/null
@@ -1,74 +0,0 @@
1import QtQuick 2.4
2import QtQuick.Layouts 1.1
3import Material 0.2
4
5ColumnLayout {
6 spacing: 0
7
8 Repeater {
9 model: 2
10
11 Rectangle {
12 Layout.fillHeight: true
13 Layout.fillWidth: true
14 Layout.minimumHeight: grid.height + dp(80)
15 Layout.minimumWidth: grid.width + dp(80)
16 color: index == 0 ? "#EEE" : "#333"
17
18 GridLayout {
19 id: grid
20 anchors.centerIn: parent
21 columns: 3
22
23 // Empty filler
24 Item { width: 1; height: 1 }
25
26 Label {
27 Layout.alignment : Qt.AlignHCenter
28 text: "Normal"
29 color: index == 0 ? Theme.light.textColor : Theme.dark.textColor
30 }
31
32 Label {
33 Layout.alignment : Qt.AlignHCenter
34 text: "Disabled"
35 color: index == 0 ? Theme.light.textColor : Theme.dark.textColor
36 }
37
38 Label {
39 text: "On"
40 color: index == 0 ? Theme.light.textColor : Theme.dark.textColor
41 }
42
43 CheckBox {
44 checked: true
45 text: "On"
46 darkBackground: index == 1
47 }
48
49 CheckBox {
50 checked: true
51 enabled: false
52 text: "Disabled"
53 darkBackground: index == 1
54 }
55
56 Label {
57 text: "Off"
58 color: index == 0 ? Theme.light.textColor : Theme.dark.textColor
59 }
60
61 CheckBox {
62 text: "Off"
63 darkBackground: index == 1
64 }
65
66 CheckBox {
67 text: "Disabled"
68 enabled: false
69 darkBackground: index == 1
70 }
71 }
72 }
73 }
74}
diff --git a/prototype_2016/third_party/qml-material/demo/ColorPaletteDemo.qml b/prototype_2016/third_party/qml-material/demo/ColorPaletteDemo.qml
deleted file mode 100644
index 0f8a748..0000000
--- a/prototype_2016/third_party/qml-material/demo/ColorPaletteDemo.qml
+++ /dev/null
@@ -1,159 +0,0 @@
1/*
2 * QML Material - An application framework implementing Material Design.
3 * Copyright (C) 2015 Ricardo Vieira <ricardo.vieira@tecnico.ulisboa.pt>
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU Lesser General Public License as
7 * published by the Free Software Foundation, either version 2.1 of the
8 * License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19import QtQuick 2.4
20import QtQuick.Layouts 1.1
21import Material 0.2
22
23Item {
24 implicitHeight: palette.height
25
26 GridLayout {
27 id: palette
28 anchors.centerIn: parent
29 width: parent.width
30 columns: parseInt(parent.width / dp(300)) || 1
31 rowSpacing: dp(20)
32
33 Repeater {
34 model: [ "Red", "Pink", "Purple", "Deep Purple", "Indigo",
35 "Blue", "Light Blue", "Cyan", "Teal", "Green",
36 "Light Green", "Lime", "Yellow", "Amber", "Orange",
37 "Deep Orange", "Grey", "Blue Grey", "Brown" ]
38
39 ColumnLayout {
40 Layout.alignment: Qt.AlignCenter
41 spacing: dp(5)
42 property var currentColor: modelData.charAt(0).toLowerCase() +
43 modelData.slice(1).replace(" ", "")
44
45 Rectangle {
46 width: dp(300)
47 height: dp(126)
48 color: Palette.colors[currentColor]["500"]
49
50 Label {
51 anchors.top: parent.top
52 anchors.left: parent.left
53 anchors.margins: dp(16)
54 text: modelData
55 style: "body2"
56 color: Theme.lightDark(parent.color,
57 Theme.light.textColor,
58 Theme.dark.textColor)
59 }
60
61 Label {
62 anchors.left: parent.left
63 anchors.bottom: parent.bottom
64 anchors.margins: dp(16)
65 text: "500"
66 style: "body2"
67 color: Theme.lightDark(parent.color,
68 Theme.light.textColor,
69 Theme.dark.textColor)
70 }
71
72 Label {
73 anchors.right: parent.right
74 anchors.bottom: parent.bottom
75 anchors.margins: dp(16)
76 text: Palette.colors[currentColor]["500"]
77 style: "body2"
78 color: Theme.lightDark(parent.color,
79 Theme.light.textColor,
80 Theme.dark.textColor)
81 }
82 }
83
84 ColumnLayout {
85 spacing: 0
86
87 Repeater {
88 model: ["100", "200", "300", "400", "600", "700", "800", "900"]
89
90 Rectangle {
91 width: dp(300)
92 height: dp(46)
93 color: Palette.colors[currentColor][modelData]
94
95 Label {
96 anchors.left: parent.left
97 anchors.margins: dp(16)
98 anchors.verticalCenter: parent.verticalCenter
99 text: modelData
100 style: "body2"
101 color: Theme.lightDark(parent.color,
102 Theme.light.textColor,
103 Theme.dark.textColor)
104 }
105
106 Label {
107 anchors.right: parent.right
108 anchors.margins: dp(16)
109 anchors.verticalCenter: parent.verticalCenter
110 text: Palette.colors[currentColor][modelData]
111 style: "body2"
112 color: Theme.lightDark(parent.color,
113 Theme.light.textColor,
114 Theme.dark.textColor)
115 }
116 }
117 }
118 }
119
120 ColumnLayout {
121 spacing: 0
122 visible: typeof Palette.colors[currentColor]["A100"] != 'undefined'
123
124 Repeater {
125 model: visible ? ["A100", "A200", "A400", "A700"] : 0
126
127 Rectangle {
128 width: dp(300)
129 height: dp(46)
130 color: Palette.colors[currentColor][modelData]
131
132 Label {
133 anchors.left: parent.left
134 anchors.margins: dp(16)
135 anchors.verticalCenter: parent.verticalCenter
136 text: modelData
137 style: "body2"
138 color: Theme.lightDark(parent.color,
139 Theme.light.textColor,
140 Theme.dark.textColor)
141 }
142
143 Label {
144 anchors.right: parent.right
145 anchors.margins: dp(16)
146 anchors.verticalCenter: parent.verticalCenter
147 text: Palette.colors[currentColor][modelData]
148 style: "body2"
149 color: Theme.lightDark(parent.color,
150 Theme.light.textColor,
151 Theme.dark.textColor)
152 }
153 }
154 }
155 }
156 }
157 }
158 }
159}
diff --git a/prototype_2016/third_party/qml-material/demo/CustomIconsDemo.qml b/prototype_2016/third_party/qml-material/demo/CustomIconsDemo.qml
deleted file mode 100644
index 06355d9..0000000
--- a/prototype_2016/third_party/qml-material/demo/CustomIconsDemo.qml
+++ /dev/null
@@ -1,132 +0,0 @@
1/*
2 * QML Material - An application framework implementing Material Design.
3 * Copyright (C) 2015 Michael Spencer <sonrisesoftware@gmail.com>
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU Lesser General Public License as
7 * published by the Free Software Foundation, either version 2.1 of the
8 * License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18import QtQuick 2.4
19import Material 0.2
20import Material.ListItems 0.1 as ListItem
21
22Column {
23 id: column
24
25 anchors.fill: parent
26
27 ListItem.Subheader {
28 text: "Custom icons with different colors"
29 }
30
31 Row {
32 Item {
33 width: dp(56)
34 height: dp(56)
35
36 Icon {
37 anchors.centerIn: parent
38 source: Qt.resolvedUrl("images/weather-sunset.svg")
39 color: Theme.light.iconColor
40 }
41 }
42
43 Item {
44 width: dp(56)
45 height: dp(56)
46
47 Icon {
48 anchors.centerIn: parent
49 source: Qt.resolvedUrl("images/weather-pouring.svg")
50 color: Theme.light.iconColor
51 }
52 }
53
54 Rectangle {
55 width: dp(56)
56 height: dp(56)
57 color: "#333"
58 Icon {
59 anchors.centerIn: parent
60 source: Qt.resolvedUrl("images/weather-sunset.svg")
61 color: Theme.dark.iconColor
62 }
63 }
64
65 Rectangle {
66 width: dp(56)
67 height: dp(56)
68 color: "#333"
69 Icon {
70 anchors.centerIn: parent
71 source: Qt.resolvedUrl("images/weather-pouring.svg")
72 color: Theme.dark.iconColor
73 }
74 }
75 }
76
77 ListItem.Subheader {
78 text: "Non-colorized custom icons"
79 }
80
81 Row {
82 Item {
83 width: dp(56)
84 height: dp(40)
85
86 Icon {
87 anchors.centerIn: parent
88 source: Qt.resolvedUrl("images/go-last.color.svg")
89 color: Theme.light.iconColor
90 }
91 }
92
93 Item {
94 width: dp(56)
95 height: dp(40)
96
97 Icon {
98 anchors.centerIn: parent
99 source: Qt.resolvedUrl("images/list-add.color.svg")
100 color: Theme.light.iconColor
101 }
102 }
103 }
104
105 ListItem.Subheader {
106 text: "Custom icons in IconButtons"
107 }
108
109 Row {
110 Item {
111 width: dp(56)
112 height: dp(40)
113
114 IconButton {
115 anchors.centerIn: parent
116 iconSource: Qt.resolvedUrl("images/weather-sunset.svg")
117 color: Theme.light.iconColor
118 }
119 }
120
121 Item {
122 width: dp(56)
123 height: dp(40)
124
125 IconButton {
126 anchors.centerIn: parent
127 iconSource: Qt.resolvedUrl("images/list-add.color.svg")
128 color: Theme.light.iconColor
129 }
130 }
131 }
132}
diff --git a/prototype_2016/third_party/qml-material/demo/DatePickerDemo.qml b/prototype_2016/third_party/qml-material/demo/DatePickerDemo.qml
deleted file mode 100644
index 20509be..0000000
--- a/prototype_2016/third_party/qml-material/demo/DatePickerDemo.qml
+++ /dev/null
@@ -1,67 +0,0 @@
1import QtQuick 2.4
2import QtQuick.Layouts 1.1
3import Material 0.2
4import Material.ListItems 0.1 as ListItem
5import Material.Extras 0.1
6
7ColumnLayout {
8
9 Dialog {
10 id: datePickerDialog
11 hasActions: true
12 contentMargins: 0
13 floatingActions: true
14
15 DatePicker {
16 frameVisible: false
17 dayAreaBottomMargin : dp(48)
18 }
19
20 }
21
22 Dialog {
23 id: landscapeDatePickerDialog
24 hasActions: true
25 contentMargins: 0
26 floatingActions: true
27
28 DatePicker {
29 frameVisible: false
30 dayAreaBottomMargin : dp(48)
31 isLandscape: true
32 }
33
34 }
35
36 ColumnLayout {
37 anchors.centerIn: parent
38 spacing: dp(16)
39
40 Button {
41 Layout.alignment: Qt.AlignCenter
42 text: "Show DatePicker Dialog"
43 elevation: 1
44 onClicked: {
45 datePickerDialog.show()
46 }
47 }
48
49 Button {
50 Layout.alignment: Qt.AlignCenter
51 text: "Show Landscape DatePicker Dialog"
52 elevation: 1
53 onClicked: {
54 landscapeDatePickerDialog.show()
55 }
56 }
57
58 DatePicker {
59 Layout.alignment: Qt.AlignCenter
60 }
61
62 DatePicker {
63 Layout.alignment: Qt.AlignCenter
64 isLandscape: true
65 }
66 }
67}
diff --git a/prototype_2016/third_party/qml-material/demo/DialogDemo.qml b/prototype_2016/third_party/qml-material/demo/DialogDemo.qml
deleted file mode 100644
index 7c909d4..0000000
--- a/prototype_2016/third_party/qml-material/demo/DialogDemo.qml
+++ /dev/null
@@ -1,134 +0,0 @@
1import QtQuick 2.4
2import QtQuick.Controls 1.3 as QuickControls
3import Material 0.2
4import Material.Extras 0.1
5
6Item {
7
8 Dialog {
9 id: alertNoTitleBar
10 width: dp(300)
11 text: "Discard draft?"
12 hasActions: true
13 positiveButtonText: "discard"
14 negativeButtonText: "cancel"
15 }
16
17 Dialog {
18 id: alertWithTitleBar
19 width: dp(300)
20 title: "Use Google's location service?"
21 text: "Let Google help apps determine location. This means sending anonymous location data to Google, even when no apps are running."
22 hasActions: true
23 positiveButtonText: "agree"
24 negativeButtonText: "disagree"
25 }
26
27 Dialog {
28 id: textFieldDialog
29 title: "Change Text"
30 hasActions: true
31
32 TextField {
33 id: optionText
34 width: parent.width
35 placeholderText: "New Option to Confirm"
36 }
37
38 onAccepted: {
39 dialogSnackBar.open("You entered: %1".arg(optionText.text))
40 }
41 }
42
43 Dialog {
44 id: scrollingDialog
45 title: "Phone ringtone"
46
47 QuickControls.ExclusiveGroup {
48 id: optionGroup
49 }
50
51 RadioButton {
52 text: "None"
53 checked: true
54 exclusiveGroup: optionGroup
55 }
56 RadioButton {
57 text: "Callisto"
58 exclusiveGroup: optionGroup
59 }
60 RadioButton {
61 text: "Dione"
62 exclusiveGroup: optionGroup
63 }
64 RadioButton {
65 text: "Ganymede"
66 exclusiveGroup: optionGroup
67 }
68 RadioButton {
69 text: "Hangouts Call"
70 exclusiveGroup: optionGroup
71 }
72 RadioButton {
73 text: "Luna"
74 exclusiveGroup: optionGroup
75 }
76 RadioButton {
77 text: "Oberon"
78 exclusiveGroup: optionGroup
79 }
80 RadioButton {
81 text: "Phobos"
82 exclusiveGroup: optionGroup
83 }
84 RadioButton {
85 text: "Pyxis"
86 exclusiveGroup: optionGroup
87 }
88 }
89
90 Column {
91 anchors.centerIn: parent
92 spacing: dp(20)
93
94 Button {
95 text: "Show alert without title bar"
96 anchors.horizontalCenter: parent.horizontalCenter
97 elevation: 1
98 onClicked: {
99 alertNoTitleBar.show()
100 }
101 }
102
103 Button {
104 text: "Show alert with title bar"
105 anchors.horizontalCenter: parent.horizontalCenter
106 elevation: 1
107 onClicked: {
108 alertWithTitleBar.show()
109 }
110 }
111
112 Button {
113 text: "Show text field dialog"
114 anchors.horizontalCenter: parent.horizontalCenter
115 elevation: 1
116 onClicked: {
117 textFieldDialog.show()
118 }
119 }
120
121 Button {
122 text: "Show scrolling dialog"
123 anchors.horizontalCenter: parent.horizontalCenter
124 elevation: 1
125 onClicked: {
126 scrollingDialog.show()
127 }
128 }
129 }
130
131 Snackbar {
132 id: dialogSnackBar
133 }
134}
diff --git a/prototype_2016/third_party/qml-material/demo/FormsDemo.qml b/prototype_2016/third_party/qml-material/demo/FormsDemo.qml
deleted file mode 100644
index 4a764c8..0000000
--- a/prototype_2016/third_party/qml-material/demo/FormsDemo.qml
+++ /dev/null
@@ -1,142 +0,0 @@
1import QtQuick 2.4
2import QtQuick.Layouts 1.1
3import Material 0.2
4import Material.ListItems 0.1 as ListItem
5import Material.Extras 0.1
6
7Item {
8 View {
9 anchors.centerIn: parent
10
11 width: dp(350)
12 height: column.implicitHeight + dp(32)
13
14 elevation: 1
15 radius: dp(2)
16
17 ColumnLayout {
18 id: column
19
20 anchors {
21 fill: parent
22 topMargin: dp(16)
23 bottomMargin: dp(16)
24 }
25
26 Label {
27 id: titleLabel
28
29 anchors {
30 left: parent.left
31 right: parent.right
32 margins: dp(16)
33 }
34
35 style: "title"
36 text: "Edit shipping info"
37 }
38
39 Item {
40 Layout.fillWidth: true
41 Layout.preferredHeight: dp(8)
42 }
43
44 ListItem.Standard {
45 action: Icon {
46 anchors.centerIn: parent
47 name: "action/account_circle"
48 }
49
50 content: TextField {
51 anchors.centerIn: parent
52 width: parent.width
53
54 text: "Alex Nelson"
55 }
56 }
57
58 ListItem.Standard {
59 action: Icon {
60 anchors.centerIn: parent
61 name: "maps/place"
62 }
63
64 content: TextField {
65 anchors.centerIn: parent
66 width: parent.width
67
68 text: "100 Main Street"
69 }
70 }
71
72 ListItem.Standard {
73 action: Item {}
74
75 content: RowLayout {
76 anchors.centerIn: parent
77 width: parent.width
78
79 TextField {
80 Layout.alignment: Qt.AlignVCenter
81 Layout.preferredWidth: 0.4 * parent.width
82
83 text: "New York"
84 }
85
86 MenuField {
87 Layout.alignment: Qt.AlignVCenter
88 Layout.preferredWidth: 0.2 * parent.width
89
90 model: ["NY", "NC", "ND"]
91 }
92
93 TextField {
94 Layout.alignment: Qt.AlignVCenter
95 Layout.preferredWidth: 0.3 * parent.width
96
97 text: "10011"
98 }
99 }
100 }
101
102 ListItem.Standard {
103 action: Icon {
104 anchors.centerIn: parent
105 name: "communication/email"
106 }
107
108 content: TextField {
109 anchors.centerIn: parent
110 width: parent.width
111
112 placeholderText: "Email"
113 }
114 }
115
116 Item {
117 Layout.fillWidth: true
118 Layout.preferredHeight: dp(8)
119 }
120
121 RowLayout {
122 Layout.alignment: Qt.AlignRight
123 spacing: dp(8)
124
125 anchors {
126 right: parent.right
127 margins: dp(16)
128 }
129
130 Button {
131 text: "Cancel"
132 textColor: Theme.primaryColor
133 }
134
135 Button {
136 text: "Done"
137 textColor: Theme.primaryColor
138 }
139 }
140 }
141 }
142}
diff --git a/prototype_2016/third_party/qml-material/demo/ListItemsDemo.qml b/prototype_2016/third_party/qml-material/demo/ListItemsDemo.qml
deleted file mode 100644
index 7061b40..0000000
--- a/prototype_2016/third_party/qml-material/demo/ListItemsDemo.qml
+++ /dev/null
@@ -1,62 +0,0 @@
1import QtQuick 2.4
2import Material 0.2
3import Material.ListItems 0.1 as ListItem
4import Material.Extras 0.1
5
6Item {
7 View {
8 anchors {
9 fill: parent
10 margins: dp(32)
11 }
12
13 elevation: 1
14
15 Column {
16 anchors.fill: parent
17
18 ListItem.Subheader {
19 text: "Section Subheader"
20 }
21
22 ListItem.Standard {
23 text: "Standard list item"
24 }
25
26 ListItem.Subtitled {
27 text: "Subtitled list item"
28 subText: "With some subtext!"
29 }
30
31 ListItem.Subtitled {
32 text: "Subtitled list item"
33 subText: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer nec eleifend arcu, eu convallis nisi."
34 valueText: "2h ago"
35
36 maximumLineCount: 3
37 }
38
39 ListItem.Subtitled {
40 text: "Subtitled list item"
41 subText: "With some subtext, icon, and secondary item!"
42 secondaryItem: Switch {
43 id: enablingSwitch
44 anchors.verticalCenter: parent.verticalCenter
45 }
46
47 onClicked: enablingSwitch.checked = !enablingSwitch.checked
48
49 action: Icon {
50 anchors.centerIn: parent
51 name: "device/access_alarm"
52 size: dp(32)
53 }
54 }
55
56 ListItem.SimpleMenu {
57 text: "Subtitled list item"
58 model: ["A", "B and some long text that should not clip", "C"]
59 }
60 }
61 }
62}
diff --git a/prototype_2016/third_party/qml-material/demo/PageStackDemo.qml b/prototype_2016/third_party/qml-material/demo/PageStackDemo.qml
deleted file mode 100644
index cc5f446..0000000
--- a/prototype_2016/third_party/qml-material/demo/PageStackDemo.qml
+++ /dev/null
@@ -1,91 +0,0 @@
1import QtQuick 2.4
2import Material 0.2
3import Material.Extras 0.1
4
5Item {
6
7 Column {
8 anchors.centerIn: parent
9 spacing: dp(20)
10
11 Button {
12 anchors.horizontalCenter: parent.horizontalCenter
13
14 text: "Push subpage"
15 elevation: 1
16 onClicked: pageStack.push(Qt.resolvedUrl("SubPage.qml"))
17 }
18
19 Button {
20 anchors.horizontalCenter: parent.horizontalCenter
21
22 text: "Push subpage with sidebar"
23 elevation: 1
24 onClicked: pageStack.push(Qt.resolvedUrl("SidebarPage.qml"))
25 }
26
27 Image {
28 id: image
29
30 anchors.horizontalCenter: parent.horizontalCenter
31
32 source: Qt.resolvedUrl("images/balloon.jpg")
33 width: dp(400)
34 height: dp(250)
35
36 Ink {
37 anchors.fill: parent
38
39 onClicked: overlayView.open(image)
40 }
41 }
42
43 Label {
44 anchors.horizontalCenter: parent.horizontalCenter
45
46 style: "subheading"
47 color: Theme.light.subTextColor
48 text: "Tap to edit picture"
49 font.italic: true
50 }
51 }
52
53 OverlayView {
54 id: overlayView
55
56 width: dp(800)
57 height: dp(500)
58
59 Image {
60 id: contentImage
61 source: Qt.resolvedUrl("images/balloon.jpg")
62 anchors.fill: parent
63 }
64
65 Row {
66 anchors {
67 top: parent.top
68 right: parent.right
69 rightMargin: dp(16)
70 }
71 height: dp(48)
72 opacity: overlayView.transitionOpacity
73
74 spacing: dp(24)
75
76 Repeater {
77 model: ["content/add", "image/edit", "action/delete"]
78
79 delegate: IconButton {
80 id: iconAction
81
82 iconName: modelData
83
84 color: Theme.dark.iconColor
85 size: iconName == "content/add" ? dp(27) : dp(24)
86 anchors.verticalCenter: parent.verticalCenter
87 }
88 }
89 }
90 }
91}
diff --git a/prototype_2016/third_party/qml-material/demo/ProgressBarDemo.qml b/prototype_2016/third_party/qml-material/demo/ProgressBarDemo.qml
deleted file mode 100644
index 6c03054..0000000
--- a/prototype_2016/third_party/qml-material/demo/ProgressBarDemo.qml
+++ /dev/null
@@ -1,165 +0,0 @@
1import QtQuick 2.4
2import QtQuick.Layouts 1.1
3import Material 0.2
4
5Item {
6 implicitHeight: grid.implicitHeight + dp(40)
7 GridLayout {
8 id: grid
9 anchors.centerIn: parent
10 columns: 2
11 columnSpacing: dp(20)
12 rowSpacing: dp(20)
13
14 Label {
15 text: "Determinate"
16 }
17
18 ProgressBar {
19 Layout.fillWidth: true
20 color: theme.accentColor
21
22 SequentialAnimation on value {
23 running: true
24 loops: NumberAnimation.Infinite
25
26 NumberAnimation {
27 duration: 3000
28 from: 0
29 to: 1
30 }
31
32 PauseAnimation { duration: 1000 } // This puts a bit of time between the loop
33 }
34 }
35
36 Label {
37 text: "Indeterminate"
38 }
39
40 ProgressBar {
41 Layout.fillWidth: true
42 color: theme.accentColor
43 indeterminate: true
44 }
45
46 Label {
47 text: "Default"
48 }
49
50 ProgressCircle {
51 Layout.alignment: Qt.AlignCenter
52 }
53
54 Label {
55 text: "Custom Color"
56 }
57
58 ProgressCircle {
59 Layout.alignment: Qt.AlignCenter
60 color: "#E91E63"
61 }
62
63 Label {
64 text: "Cyclic Colors"
65 }
66
67 ProgressCircle {
68 id: cyclicColorProgress
69 Layout.alignment: Qt.AlignCenter
70 SequentialAnimation {
71 running: true
72 loops: Animation.Infinite
73
74 ColorAnimation {
75 from: "red"
76 to: "blue"
77 target: cyclicColorProgress
78 properties: "color"
79 easing.type: Easing.InOutQuad
80 duration: 2400
81 }
82
83 ColorAnimation {
84 from: "blue"
85 to: "green"
86 target: cyclicColorProgress
87 properties: "color"
88 easing.type: Easing.InOutQuad
89 duration: 1560
90 }
91
92 ColorAnimation {
93 from: "green"
94 to: "#FFCC00"
95 target: cyclicColorProgress
96 properties: "color"
97 easing.type: Easing.InOutQuad
98 duration: 840
99 }
100
101 ColorAnimation {
102 from: "#FFCC00"
103 to: "red"
104 target: cyclicColorProgress
105 properties: "color"
106 easing.type: Easing.InOutQuad
107 duration: 1200
108 }
109 }
110 }
111
112 Label {
113 text: "Custom Size"
114 }
115
116 ProgressCircle {
117 Layout.alignment: Qt.AlignCenter
118 width: dp(64)
119 height: dp(64)
120 }
121
122 Label {
123 text: "Custom Size + Thickness"
124 }
125
126 ProgressCircle {
127 Layout.alignment: Qt.AlignCenter
128 width: dp(64)
129 height: dp(64)
130 dashThickness: dp(8)
131 }
132
133 Label {
134 text: "Determinate Value"
135 }
136
137 ProgressCircle {
138 id: determinateProgress
139 Layout.alignment: Qt.AlignCenter
140 width: dp(64)
141 height: dp(64)
142 indeterminate: false
143 minimumValue: 0
144 maximumValue: 100
145
146 SequentialAnimation on value {
147 running: true
148 loops: NumberAnimation.Infinite
149
150 NumberAnimation {
151 duration: 3000
152 from: determinateProgress.minimumValue
153 to: determinateProgress.maximumValue
154 }
155
156 PauseAnimation { duration: 1000 }
157 }
158
159 Label {
160 anchors.centerIn: parent
161 text: Math.round(determinateProgress.value) + "%"
162 }
163 }
164 }
165}
diff --git a/prototype_2016/third_party/qml-material/demo/RadioButtonDemo.qml b/prototype_2016/third_party/qml-material/demo/RadioButtonDemo.qml
deleted file mode 100644
index de08ac1..0000000
--- a/prototype_2016/third_party/qml-material/demo/RadioButtonDemo.qml
+++ /dev/null
@@ -1,70 +0,0 @@
1import QtQuick 2.4
2import QtQuick.Layouts 1.1
3import QtQuick.Controls 1.3 as QuickControls
4import Material 0.2
5
6ColumnLayout {
7 spacing: 0
8
9 Repeater {
10 model: 2
11
12 Rectangle {
13 Layout.fillHeight: true
14 Layout.fillWidth: true
15 Layout.minimumHeight: grid.height + dp(80)
16 Layout.minimumWidth: grid.width + dp(80)
17 color: index == 0 ? "#EEE" : "#333"
18
19 GridLayout {
20 id: grid
21 anchors.centerIn: parent
22 rowSpacing: dp(20)
23 columnSpacing: dp(20)
24 columns: 2
25
26 QuickControls.ExclusiveGroup { id: optionGroup }
27
28 Label {
29 Layout.alignment : Qt.AlignHCenter
30 text: "Normal"
31 color: index == 0 ? Theme.light.textColor : Theme.dark.textColor
32 }
33
34 Label {
35 Layout.alignment : Qt.AlignHCenter
36 text: "Disabled"
37 color: index == 0 ? Theme.light.textColor : Theme.dark.textColor
38 }
39
40 RadioButton {
41 checked: true
42 text: "Option 1"
43 darkBackground: index == 1
44 canToggle: true
45 exclusiveGroup: optionGroup
46 }
47
48 RadioButton {
49 checked: true
50 enabled: false
51 text: "Disabled"
52 darkBackground: index == 1
53 }
54
55 RadioButton {
56 text: "Option 2"
57 darkBackground: index == 1
58 canToggle: true
59 exclusiveGroup: optionGroup
60 }
61
62 RadioButton {
63 enabled: false
64 text: "Disabled"
65 darkBackground: index == 1
66 }
67 }
68 }
69 }
70}
diff --git a/prototype_2016/third_party/qml-material/demo/SidebarPage.qml b/prototype_2016/third_party/qml-material/demo/SidebarPage.qml
deleted file mode 100644
index 9c94135..0000000
--- a/prototype_2016/third_party/qml-material/demo/SidebarPage.qml
+++ /dev/null
@@ -1,51 +0,0 @@
1/*
2 * QML Material - An application framework implementing Material Design.
3 * Copyright (C) 2015 Michael Spencer <sonrisesoftware@gmail.com>
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU Lesser General Public License as
7 * published by the Free Software Foundation, either version 2.1 of the
8 * License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18import QtQuick 2.4
19import Material 0.2
20import Material.ListItems 0.1 as ListItem
21
22Page {
23 id: page
24 title: "Page with right sidebar"
25
26 actions: [
27 Action {
28 iconName: "action/search"
29 text: "Search"
30 }
31 ]
32
33 Button {
34 anchors.centerIn: parent
35 text: "Sub page"
36 onClicked: pageStack.push(Qt.resolvedUrl("SubPage.qml"))
37 }
38
39 rightSidebar: PageSidebar {
40 title: "Sidebar"
41
42 width: dp(320)
43
44 actions: [
45 Action {
46 iconName: "action/delete"
47 text: "Delete"
48 }
49 ]
50 }
51}
diff --git a/prototype_2016/third_party/qml-material/demo/SliderDemo.qml b/prototype_2016/third_party/qml-material/demo/SliderDemo.qml
deleted file mode 100644
index 88a2abb..0000000
--- a/prototype_2016/third_party/qml-material/demo/SliderDemo.qml
+++ /dev/null
@@ -1,120 +0,0 @@
1import QtQuick 2.4
2import QtQuick.Layouts 1.1
3import Material 0.2
4
5ColumnLayout {
6 spacing: 0
7
8 Repeater {
9 model: 2
10
11 Rectangle {
12 Layout.fillHeight: true
13 Layout.fillWidth: true
14 Layout.minimumHeight: grid.height + dp(80)
15 Layout.minimumWidth: grid.width + dp(80)
16 color: index == 0 ? "#EEE" : "#333"
17
18 GridLayout {
19 id: grid
20 anchors.centerIn: parent
21 rowSpacing: dp(20)
22 columnSpacing: dp(10)
23 columns: 2
24
25 Label {
26 text: "Normal"
27 color: index == 0 ? Theme.light.textColor : Theme.dark.textColor
28 }
29
30 Slider {
31 Layout.alignment: Qt.AlignCenter
32 value: 0.2
33 darkBackground: index == 1
34 }
35
36 Label {
37 text: "Tickmarks"
38 color: index == 0 ? Theme.light.textColor : Theme.dark.textColor
39 }
40
41 Slider {
42 Layout.alignment: Qt.AlignCenter
43 value: 40
44 tickmarksEnabled: true
45 stepSize: 20
46 minimumValue: 0
47 maximumValue: 100
48 darkBackground: index == 1
49 }
50
51 Label {
52 text: "Numeric Value Label"
53 Layout.alignment: Qt.AlignBottom
54 color: index == 0 ? Theme.light.textColor : Theme.dark.textColor
55 }
56
57 Slider {
58 Layout.alignment: Qt.AlignCenter
59 value: 60
60 tickmarksEnabled: true
61 numericValueLabel: true
62 stepSize: 20
63 minimumValue: 0
64 maximumValue: 100
65 darkBackground: index == 1
66 }
67
68 Label {
69 text: "Numeric Value Label + Active Focus on Press"
70 wrapMode: Text.WordWrap
71 Layout.alignment: Qt.AlignBottom
72 color: index == 0 ? Theme.light.textColor : Theme.dark.textColor
73 }
74
75 Slider {
76 Layout.alignment: Qt.AlignCenter
77 value: 80
78 focus: true
79 tickmarksEnabled: true
80 numericValueLabel: true
81 stepSize: 20
82 minimumValue: 0
83 maximumValue: 100
84 activeFocusOnPress: true
85 darkBackground: index == 1
86 }
87
88 Label {
89 text: "Customized Numeric Value Label"
90 wrapMode: Text.WordWrap
91 Layout.alignment: Qt.AlignBottom
92 color: index == 0 ? Theme.light.textColor : Theme.dark.textColor
93 }
94
95 Slider {
96 Layout.alignment: Qt.AlignCenter
97 numericValueLabel: true
98 stepSize: 1
99 minimumValue: 0
100 maximumValue: 100
101 alwaysShowValueLabel: true
102 knobLabel: value + "%"
103 knobDiameter: dp(42)
104 darkBackground: index == 1
105 }
106
107 Label {
108 text: "Disabled"
109 color: index == 0 ? Theme.light.textColor : Theme.dark.textColor
110 }
111
112 Slider {
113 enabled: false
114 Layout.alignment: Qt.AlignCenter
115 darkBackground: index == 1
116 }
117 }
118 }
119 }
120}
diff --git a/prototype_2016/third_party/qml-material/demo/SubPage.qml b/prototype_2016/third_party/qml-material/demo/SubPage.qml
deleted file mode 100644
index 0f43d4f..0000000
--- a/prototype_2016/third_party/qml-material/demo/SubPage.qml
+++ /dev/null
@@ -1,77 +0,0 @@
1/*
2 * QML Material - An application framework implementing Material Design.
3 * Copyright (C) 2015 Michael Spencer <sonrisesoftware@gmail.com>
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU Lesser General Public License as
7 * published by the Free Software Foundation, either version 2.1 of the
8 * License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18import QtQuick 2.4
19import Material 0.2
20import Material.ListItems 0.1 as ListItem
21
22TabbedPage {
23 id: page
24 title: "Page Title that is very long to demonstrate eliding titles in ActionBar"
25
26 actionBar.backgroundColor: Palette.colors.grey['200']
27 actionBar.decorationColor: Palette.colors.grey['300']
28
29 onGoBack: {
30 confirmationDialog.show()
31 event.accepted = true
32 }
33
34 Tab {
35 title: "Overview"
36 iconName: "action/home"
37
38 Rectangle {
39 color: Palette.colors.red["200"]
40
41 Button {
42 anchors.centerIn: parent
43 darkBackground: true
44 text: "Go to tab 3"
45 onClicked: page.selectedTab = 2
46 }
47 }
48 }
49
50 Tab {
51 title: "Projects"
52
53 Rectangle { color: Palette.colors.purple["200"] }
54 }
55
56 Tab {
57 title: "Inbox"
58
59 Rectangle { color: Palette.colors.orange["200"] }
60 }
61
62 Tab {
63 title: "Disabled Tab"
64 enabled: false
65 Rectangle { color: Palette.colors.purple["200"] }
66 }
67
68 Dialog {
69 id: confirmationDialog
70
71 title: "Do you want to go back?"
72 positiveButtonText: "Go Back"
73 negativeButtonText: "Cancel"
74
75 onAccepted: page.forcePop()
76 }
77}
diff --git a/prototype_2016/third_party/qml-material/demo/SwitchDemo.qml b/prototype_2016/third_party/qml-material/demo/SwitchDemo.qml
deleted file mode 100644
index fb7cc21..0000000
--- a/prototype_2016/third_party/qml-material/demo/SwitchDemo.qml
+++ /dev/null
@@ -1,70 +0,0 @@
1import QtQuick 2.4
2import QtQuick.Layouts 1.1
3import Material 0.2
4
5ColumnLayout {
6 spacing: 0
7
8 Repeater {
9 model: 2
10
11 Rectangle {
12 Layout.fillHeight: true
13 Layout.fillWidth: true
14 Layout.minimumHeight: grid.height + dp(80)
15 Layout.minimumWidth: grid.width + dp(80)
16 color: index == 0 ? "#EEE" : "#333"
17
18 GridLayout {
19 id: grid
20 anchors.centerIn: parent
21 rowSpacing: dp(40)
22 columnSpacing: dp(40)
23 columns: 3
24
25 // Empty filler
26 Item { width: 1; height: 1 }
27
28 Label {
29 text: "Normal"
30 color: index == 0 ? Theme.light.textColor : Theme.dark.textColor
31 }
32
33 Label {
34 text: "Disabled"
35 color: index == 0 ? Theme.light.textColor : Theme.dark.textColor
36 }
37
38 Label {
39 text: "On"
40 color: index == 0 ? Theme.light.textColor : Theme.dark.textColor
41 }
42
43 Switch {
44 checked: true
45 darkBackground: index == 1
46 }
47
48 Switch {
49 checked: true
50 enabled: false
51 darkBackground: index == 1
52 }
53
54 Label {
55 text: "Off"
56 color: index == 0 ? Theme.light.textColor : Theme.dark.textColor
57 }
58
59 Switch {
60 darkBackground: index == 1
61 }
62
63 Switch {
64 enabled: false
65 darkBackground: index == 1
66 }
67 }
68 }
69 }
70}
diff --git a/prototype_2016/third_party/qml-material/demo/TextFieldDemo.qml b/prototype_2016/third_party/qml-material/demo/TextFieldDemo.qml
deleted file mode 100644
index d0dad27..0000000
--- a/prototype_2016/third_party/qml-material/demo/TextFieldDemo.qml
+++ /dev/null
@@ -1,54 +0,0 @@
1import QtQuick 2.4
2import QtQuick.Layouts 1.1
3import Material 0.2
4
5Item {
6 implicitHeight: column.height
7
8 ColumnLayout {
9 id: column
10 anchors.centerIn: parent
11 spacing: dp(32)
12
13 TextField {
14 text: "Big Field with text"
15 font.pixelSize: dp(32)
16 anchors.horizontalCenter: parent.horizontalCenter
17 }
18
19 TextField {
20 placeholderText: "Search..."
21 anchors.horizontalCenter: parent.horizontalCenter
22 }
23
24 TextField {
25 text: "Text under label"
26 placeholderText: "Floating label"
27 floatingLabel: true
28 anchors.horizontalCenter: parent.horizontalCenter
29 }
30
31 TextField {
32 placeholderText: "Character limit"
33 floatingLabel: true
34 characterLimit: 10
35 anchors.horizontalCenter: parent.horizontalCenter
36 }
37
38 TextField {
39 id: passwordField
40 placeholderText: "Password"
41 floatingLabel: true
42 echoMode: TextInput.Password
43 helperText: "Hint: It's not password."
44 anchors.horizontalCenter: parent.horizontalCenter
45
46 onAccepted: {
47 if (passwordField.text === "password") {
48 passwordField.helperText = "Told ya."
49 passwordField.hasError = true
50 }
51 }
52 }
53 }
54}
diff --git a/prototype_2016/third_party/qml-material/demo/TimePickerDemo.qml b/prototype_2016/third_party/qml-material/demo/TimePickerDemo.qml
deleted file mode 100644
index 743944f..0000000
--- a/prototype_2016/third_party/qml-material/demo/TimePickerDemo.qml
+++ /dev/null
@@ -1,58 +0,0 @@
1import QtQuick 2.4
2import Material 0.2
3
4
5Item {
6
7 TimePickerDialog {
8 id: timePicker
9 onTimePicked: {
10 updateLabelForDate(timePicked)
11 }
12 prefer24Hour: twentyFourHourSwitch.checked
13 }
14
15 Column {
16 anchors.centerIn: parent
17 spacing: dp(20)
18
19 Button {
20 text: "Show Time Picker Dialog"
21 anchors.horizontalCenter: parent.horizontalCenter
22 elevation: 1
23 onClicked: {
24 timePicker.show()
25 }
26 }
27
28 Label {
29 id: timeLabel
30 style: "display1"
31 anchors.horizontalCenter: parent.horizontalCenter
32 }
33
34 Row {
35 anchors.horizontalCenter: parent.horizontalCenter
36 spacing: dp(16)
37
38 Label {
39 text: "24 hour clock:"
40 style: "dialog"
41 }
42
43 Switch {
44 id: twentyFourHourSwitch
45 checked: false
46 }
47 }
48 }
49
50 Component.onCompleted: {
51 var date = new Date(Date.now())
52 updateLabelForDate(new Date(Date.now()))
53 }
54
55 function updateLabelForDate(date) {
56 timeLabel.text = date.toLocaleTimeString(Qt.locale(), "hh:mm ap")
57 }
58}
diff --git a/prototype_2016/third_party/qml-material/demo/TypographyDemo.qml b/prototype_2016/third_party/qml-material/demo/TypographyDemo.qml
deleted file mode 100644
index 8bf5f27..0000000
--- a/prototype_2016/third_party/qml-material/demo/TypographyDemo.qml
+++ /dev/null
@@ -1,121 +0,0 @@
1import QtQuick 2.4
2import QtQuick.Layouts 1.1
3import Material 0.2
4import Material.ListItems 0.1 as ListItem
5
6Item {
7
8 implicitHeight: column.height
9
10 property var styles: [
11 "display4",
12 "display3",
13 "display2",
14 "display1",
15 "headline",
16 "title",
17 "subheading",
18 "body2",
19 "body1",
20 "caption",
21 "button"
22 ]
23
24 ColumnLayout {
25 id: column
26 spacing: dp(16)
27
28 ListItem.Subheader {
29 text: "Font Weights"
30 }
31
32 Label {
33 font.family: "Roboto"
34 font.weight: Font.Light
35 text: "Roboto Light"
36 font.pixelSize: dp(34)
37
38 anchors {
39 left: parent.left
40 margins: dp(16)
41 }
42 }
43
44 Label {
45 font.family: "Roboto"
46 text: "Roboto Regular"
47 font.pixelSize: dp(34)
48
49 anchors {
50 left: parent.left
51 margins: dp(16)
52 }
53 }
54
55 Label {
56 font.family: "Roboto"
57 font.weight: Font.DemiBold
58 text: "Roboto Medium"
59 font.pixelSize: dp(34)
60
61 anchors {
62 left: parent.left
63 margins: dp(16)
64 }
65 }
66
67 Label {
68 font.family: "Roboto"
69 font.weight: Font.Bold
70 text: "Roboto Bold"
71 font.pixelSize: dp(34)
72
73 anchors {
74 left: parent.left
75 margins: dp(16)
76 }
77 }
78
79 ListItem.Subheader {
80 text: "Label Styles"
81 }
82
83 Repeater {
84 model: styles
85 delegate: Row {
86 anchors {
87 left: parent.left
88 margins: dp(16)
89 }
90
91 Label {
92 text: modelData
93 width: dp(100)
94 }
95
96 Label {
97 style: modelData
98 text: {
99 var text = fontInfo["font"].substring(0,1).toUpperCase() + fontInfo["font"].substring(1)
100
101 if (style == "button")
102 text += " (ALL CAPS)"
103
104 text += " " + fontInfo["size"] + "sp"
105
106 if (fontInfo.size_desktop) {
107 text += " (Device), " + fontInfo["font"].substring(0,1).toUpperCase() + fontInfo["font"].substring(1)
108
109 if (style == "button")
110 text += " (ALL CAPS)"
111
112 text += " " + fontInfo["size_desktop"] + "sp (Desktop)"
113 }
114
115 return text
116 }
117 }
118 }
119 }
120 }
121}
diff --git a/prototype_2016/third_party/qml-material/demo/demo.pro b/prototype_2016/third_party/qml-material/demo/demo.pro
deleted file mode 100644
index dae5240..0000000
--- a/prototype_2016/third_party/qml-material/demo/demo.pro
+++ /dev/null
@@ -1,6 +0,0 @@
1TEMPLATE = app
2
3QT += qml quick
4
5SOURCES += main.cpp
6RESOURCES += demo.qrc icons/icons.qrc
diff --git a/prototype_2016/third_party/qml-material/demo/demo.qmlproject b/prototype_2016/third_party/qml-material/demo/demo.qmlproject
deleted file mode 100644
index d55cf9b..0000000
--- a/prototype_2016/third_party/qml-material/demo/demo.qmlproject
+++ /dev/null
@@ -1,20 +0,0 @@
1/* File generated by Qt Creator */
2
3import QmlProject 1.1
4
5Project {
6 mainFile: "main.qml"
7
8 /* Include .qml, .js, and image files from current directory and subdirectories */
9 QmlFiles {
10 directory: "."
11 }
12 JavaScriptFiles {
13 directory: "."
14 }
15 ImageFiles {
16 directory: "."
17 }
18
19 importPaths: [ "../modules"]
20}
diff --git a/prototype_2016/third_party/qml-material/demo/demo.qrc b/prototype_2016/third_party/qml-material/demo/demo.qrc
deleted file mode 100644
index 47ed947..0000000
--- a/prototype_2016/third_party/qml-material/demo/demo.qrc
+++ /dev/null
@@ -1,48 +0,0 @@
1<!DOCTYPE RCC>
2<RCC version="1.0">
3
4<qresource>
5 <file>BottomSheetDemo.qml</file>
6 <file>ButtonDemo.qml</file>
7 <file>CheckBoxDemo.qml</file>
8 <file>ColorPaletteDemo.qml</file>
9 <file>CustomIconsDemo.qml</file>
10 <file>DatePickerDemo.qml</file>
11 <file>DialogDemo.qml</file>
12 <file>FormsDemo.qml</file>
13 <file>ListItemsDemo.qml</file>
14 <file>PageStackDemo.qml</file>
15 <file>ProgressBarDemo.qml</file>
16 <file>RadioButtonDemo.qml</file>
17 <file>SidebarPage.qml</file>
18 <file>SliderDemo.qml</file>
19 <file>SubPage.qml</file>
20 <file>SwitchDemo.qml</file>
21 <file>TextFieldDemo.qml</file>
22 <file>TimePickerDemo.qml</file>
23 <file>TypographyDemo.qml</file>
24 <file>icons/action_account_circle.svg</file>
25 <file>icons/action_autorenew.svg</file>
26 <file>icons/action_delete.svg</file>
27 <file>icons/action_language.svg</file>
28 <file>icons/action_settings.svg</file>
29 <file>icons/alert_warning.svg</file>
30 <file>icons/communication_email.svg</file>
31 <file>icons/content_add.svg</file>
32 <file>icons/content_create.svg</file>
33 <file>icons/content_forward.svg</file>
34 <file>icons/device_access_alarm.svg</file>
35 <file>icons/file_file_download.svg</file>
36 <file>icons/image_color_lens.svg</file>
37 <file>icons/maps_place.svg</file>
38 <file>icons/navigation_arrow_drop_down.svg</file>
39 <file>icons/social_share.svg</file>
40 <file>images/balloon.jpg</file>
41 <file>images/go-last.color.svg</file>
42 <file>images/list-add.color.svg</file>
43 <file>images/weather-pouring.svg</file>
44 <file>images/weather-sunset.svg</file>
45 <file>main.qml</file>
46</qresource>
47
48</RCC>
diff --git a/prototype_2016/third_party/qml-material/demo/icons.yml b/prototype_2016/third_party/qml-material/demo/icons.yml
deleted file mode 100644
index 85c523c..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons.yml
+++ /dev/null
@@ -1,19 +0,0 @@
1out: icons
2icons:
3 - action/account_circle
4 - action/autorenew
5 - action/delete
6 - action/language
7 - action/settings
8 - alert/warning
9 - communication/email
10 - content/add
11 - content/create
12 - content/forward
13 - device/access_alarm
14 - file/file_download
15 - image/color_lens
16 - image/edit
17 - maps/place
18 - navigation/arrow_drop_down
19 - social/share
diff --git a/prototype_2016/third_party/qml-material/demo/icons/action_account_circle.svg b/prototype_2016/third_party/qml-material/demo/icons/action_account_circle.svg
deleted file mode 100644
index 3cfbe0c..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons/action_account_circle.svg
+++ /dev/null
@@ -1 +0,0 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path d="M24 4C12.95 4 4 12.95 4 24s8.95 20 20 20 20-8.95 20-20S35.05 4 24 4zm0 6c3.31 0 6 2.69 6 6 0 3.32-2.69 6-6 6s-6-2.68-6-6c0-3.31 2.69-6 6-6zm0 28.4c-5.01 0-9.41-2.56-12-6.44.05-3.97 8.01-6.16 12-6.16s11.94 2.19 12 6.16c-2.59 3.88-6.99 6.44-12 6.44z"/></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/icons/action_autorenew.svg b/prototype_2016/third_party/qml-material/demo/icons/action_autorenew.svg
deleted file mode 100644
index 27b0d39..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons/action_autorenew.svg
+++ /dev/null
@@ -1 +0,0 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path d="M24 12v6l8-8-8-8v6C15.16 8 8 15.16 8 24c0 3.14.92 6.05 2.48 8.52l2.92-2.92c-.89-1.67-1.4-3.57-1.4-5.6 0-6.63 5.37-12 12-12zm13.52 3.48L34.6 18.4c.89 1.67 1.4 3.57 1.4 5.6 0 6.63-5.37 12-12 12v-6l-8 8 8 8v-6c8.84 0 16-7.16 16-16 0-3.14-.92-6.05-2.48-8.52z"/></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/icons/action_delete.svg b/prototype_2016/third_party/qml-material/demo/icons/action_delete.svg
deleted file mode 100644
index 3051156..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons/action_delete.svg
+++ /dev/null
@@ -1 +0,0 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path d="M12 38c0 2.21 1.79 4 4 4h16c2.21 0 4-1.79 4-4V14H12v24zM38 8h-7l-2-2H19l-2 2h-7v4h28V8z"/></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/icons/action_language.svg b/prototype_2016/third_party/qml-material/demo/icons/action_language.svg
deleted file mode 100644
index 8eba04c..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons/action_language.svg
+++ /dev/null
@@ -1 +0,0 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path d="M23.99 4C12.94 4 4 12.95 4 24s8.94 20 19.99 20C35.04 44 44 35.05 44 24S35.04 4 23.99 4zm13.85 12h-5.9c-.65-2.5-1.56-4.9-2.76-7.12 3.68 1.26 6.74 3.81 8.66 7.12zM24 8.07c1.67 2.4 2.97 5.07 3.82 7.93h-7.64c.85-2.86 2.15-5.53 3.82-7.93zM8.52 28C8.19 26.72 8 25.38 8 24s.19-2.72.52-4h6.75c-.16 1.31-.27 2.64-.27 4 0 1.36.11 2.69.28 4H8.52zm1.63 4h5.9c.65 2.5 1.56 4.9 2.76 7.13-3.68-1.26-6.74-3.82-8.66-7.13zm5.9-16h-5.9c1.92-3.31 4.98-5.87 8.66-7.13-1.2 2.23-2.11 4.63-2.76 7.13zM24 39.93c-1.66-2.4-2.96-5.07-3.82-7.93h7.64c-.86 2.86-2.16 5.53-3.82 7.93zM28.68 28h-9.36c-.19-1.31-.32-2.64-.32-4 0-1.36.13-2.69.32-4h9.36c.19 1.31.32 2.64.32 4 0 1.36-.13 2.69-.32 4zm.51 11.12c1.2-2.23 2.11-4.62 2.76-7.12h5.9c-1.93 3.31-4.99 5.86-8.66 7.12zM32.72 28c.16-1.31.28-2.64.28-4 0-1.36-.11-2.69-.28-4h6.75c.33 1.28.53 2.62.53 4s-.19 2.72-.53 4h-6.75z"/></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/icons/action_settings.svg b/prototype_2016/third_party/qml-material/demo/icons/action_settings.svg
deleted file mode 100644
index 7a01c33..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons/action_settings.svg
+++ /dev/null
@@ -1 +0,0 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path d="M38.86 25.95c.08-.64.14-1.29.14-1.95s-.06-1.31-.14-1.95l4.23-3.31c.38-.3.49-.84.24-1.28l-4-6.93c-.25-.43-.77-.61-1.22-.43l-4.98 2.01c-1.03-.79-2.16-1.46-3.38-1.97L29 4.84c-.09-.47-.5-.84-1-.84h-8c-.5 0-.91.37-.99.84l-.75 5.3c-1.22.51-2.35 1.17-3.38 1.97L9.9 10.1c-.45-.17-.97 0-1.22.43l-4 6.93c-.25.43-.14.97.24 1.28l4.22 3.31C9.06 22.69 9 23.34 9 24s.06 1.31.14 1.95l-4.22 3.31c-.38.3-.49.84-.24 1.28l4 6.93c.25.43.77.61 1.22.43l4.98-2.01c1.03.79 2.16 1.46 3.38 1.97l.75 5.3c.08.47.49.84.99.84h8c.5 0 .91-.37.99-.84l.75-5.3c1.22-.51 2.35-1.17 3.38-1.97l4.98 2.01c.45.17.97 0 1.22-.43l4-6.93c.25-.43.14-.97-.24-1.28l-4.22-3.31zM24 31c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7z"/></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/icons/alert_warning.svg b/prototype_2016/third_party/qml-material/demo/icons/alert_warning.svg
deleted file mode 100644
index 31ef9ab..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons/alert_warning.svg
+++ /dev/null
@@ -1 +0,0 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path d="M2 42h44L24 4 2 42zm24-6h-4v-4h4v4zm0-8h-4v-8h4v8z"/></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/icons/communication_email.svg b/prototype_2016/third_party/qml-material/demo/icons/communication_email.svg
deleted file mode 100644
index 533da60..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons/communication_email.svg
+++ /dev/null
@@ -1 +0,0 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path d="M40 8H8c-2.21 0-3.98 1.79-3.98 4L4 36c0 2.21 1.79 4 4 4h32c2.21 0 4-1.79 4-4V12c0-2.21-1.79-4-4-4zm0 8L24 26 8 16v-4l16 10 16-10v4z"/></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/icons/content_add.svg b/prototype_2016/third_party/qml-material/demo/icons/content_add.svg
deleted file mode 100644
index 2b3a796..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons/content_add.svg
+++ /dev/null
@@ -1 +0,0 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path d="M38 26H26v12h-4V26H10v-4h12V10h4v12h12v4z"/></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/icons/content_create.svg b/prototype_2016/third_party/qml-material/demo/icons/content_create.svg
deleted file mode 100644
index 7bc2969..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons/content_create.svg
+++ /dev/null
@@ -1 +0,0 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path d="M6 34.5V42h7.5l22.13-22.13-7.5-7.5L6 34.5zm35.41-20.41c.78-.78.78-2.05 0-2.83l-4.67-4.67c-.78-.78-2.05-.78-2.83 0l-3.66 3.66 7.5 7.5 3.66-3.66z"/></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/icons/content_forward.svg b/prototype_2016/third_party/qml-material/demo/icons/content_forward.svg
deleted file mode 100644
index 62bae42..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons/content_forward.svg
+++ /dev/null
@@ -1 +0,0 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path d="M24 16V8l16 16-16 16v-8H8V16z"/></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/icons/device_access_alarm.svg b/prototype_2016/third_party/qml-material/demo/icons/device_access_alarm.svg
deleted file mode 100644
index 1a5c539..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons/device_access_alarm.svg
+++ /dev/null
@@ -1 +0,0 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path d="M44 11.44l-9.19-7.71-2.57 3.06 9.19 7.71L44 11.44zM15.76 6.78l-2.57-3.06L4 11.43l2.57 3.06 9.19-7.71zM25 16h-3v12l9.49 5.71L33 31.24l-8-4.74V16zm-1.01-8C14.04 8 6 16.06 6 26s8.04 18 17.99 18S42 35.94 42 26 33.94 8 23.99 8zM24 40c-7.73 0-14-6.27-14-14s6.27-14 14-14 14 6.27 14 14-6.26 14-14 14z"/></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/icons/file_file_download.svg b/prototype_2016/third_party/qml-material/demo/icons/file_file_download.svg
deleted file mode 100644
index b14aa39..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons/file_file_download.svg
+++ /dev/null
@@ -1 +0,0 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path d="M38 18h-8V6H18v12h-8l14 14 14-14zM10 36v4h28v-4H10z"/></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/icons/icons.qrc b/prototype_2016/third_party/qml-material/demo/icons/icons.qrc
deleted file mode 100644
index 09383aa..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons/icons.qrc
+++ /dev/null
@@ -1,51 +0,0 @@
1<!DOCTYPE RCC>
2<RCC version="1.0">
3
4<qresource prefix="/icons/maps">
5 <file alias="place.svg">maps_place.svg</file>
6</qresource>
7
8<qresource prefix="/icons/communication">
9 <file alias="email.svg">communication_email.svg</file>
10</qresource>
11
12<qresource prefix="/icons/image">
13 <file alias="color_lens.svg">image_color_lens.svg</file>
14 <file alias="edit.svg">image_edit.svg</file>
15</qresource>
16
17<qresource prefix="/icons/alert">
18 <file alias="warning.svg">alert_warning.svg</file>
19</qresource>
20
21<qresource prefix="/icons/content">
22 <file alias="add.svg">content_add.svg</file>
23 <file alias="create.svg">content_create.svg</file>
24 <file alias="forward.svg">content_forward.svg</file>
25</qresource>
26
27<qresource prefix="/icons/device">
28 <file alias="access_alarm.svg">device_access_alarm.svg</file>
29</qresource>
30
31<qresource prefix="/icons/file">
32 <file alias="file_download.svg">file_file_download.svg</file>
33</qresource>
34
35<qresource prefix="/icons/social">
36 <file alias="share.svg">social_share.svg</file>
37</qresource>
38
39<qresource prefix="/icons/action">
40 <file alias="account_circle.svg">action_account_circle.svg</file>
41 <file alias="autorenew.svg">action_autorenew.svg</file>
42 <file alias="delete.svg">action_delete.svg</file>
43 <file alias="language.svg">action_language.svg</file>
44 <file alias="settings.svg">action_settings.svg</file>
45</qresource>
46
47<qresource prefix="/icons/navigation">
48 <file alias="arrow_drop_down.svg">navigation_arrow_drop_down.svg</file>
49</qresource>
50
51</RCC>
diff --git a/prototype_2016/third_party/qml-material/demo/icons/image_color_lens.svg b/prototype_2016/third_party/qml-material/demo/icons/image_color_lens.svg
deleted file mode 100644
index d1b14e9..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons/image_color_lens.svg
+++ /dev/null
@@ -1 +0,0 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path d="M24 6C14.06 6 6 14.06 6 24s8.06 18 18 18c1.66 0 3-1.34 3-3 0-.78-.29-1.48-.78-2.01-.47-.53-.75-1.22-.75-1.99 0-1.66 1.34-3 3-3H32c5.52 0 10-4.48 10-10 0-8.84-8.06-16-18-16zM13 24c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3-3 3zm6-8c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3-3 3zm10 0c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3-3 3zm6 8c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3-3 3z"/></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/icons/image_edit.svg b/prototype_2016/third_party/qml-material/demo/icons/image_edit.svg
deleted file mode 100644
index 7bc2969..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons/image_edit.svg
+++ /dev/null
@@ -1 +0,0 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path d="M6 34.5V42h7.5l22.13-22.13-7.5-7.5L6 34.5zm35.41-20.41c.78-.78.78-2.05 0-2.83l-4.67-4.67c-.78-.78-2.05-.78-2.83 0l-3.66 3.66 7.5 7.5 3.66-3.66z"/></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/icons/maps_place.svg b/prototype_2016/third_party/qml-material/demo/icons/maps_place.svg
deleted file mode 100644
index b17fb9d..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons/maps_place.svg
+++ /dev/null
@@ -1 +0,0 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path d="M24 4c-7.73 0-14 6.27-14 14 0 10.5 14 26 14 26s14-15.5 14-26c0-7.73-6.27-14-14-14zm0 19c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5z"/></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/icons/navigation_arrow_drop_down.svg b/prototype_2016/third_party/qml-material/demo/icons/navigation_arrow_drop_down.svg
deleted file mode 100644
index 16f5422..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons/navigation_arrow_drop_down.svg
+++ /dev/null
@@ -1 +0,0 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path d="M14 20l10 10 10-10z"/></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/icons/social_share.svg b/prototype_2016/third_party/qml-material/demo/icons/social_share.svg
deleted file mode 100644
index 2896a1b..0000000
--- a/prototype_2016/third_party/qml-material/demo/icons/social_share.svg
+++ /dev/null
@@ -1 +0,0 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path d="M36 32.17c-1.52 0-2.89.59-3.93 1.54L17.82 25.4c.11-.45.18-.92.18-1.4s-.07-.95-.18-1.4l14.1-8.23c1.07 1 2.5 1.62 4.08 1.62 3.31 0 6-2.69 6-6s-2.69-6-6-6-6 2.69-6 6c0 .48.07.95.18 1.4l-14.1 8.23c-1.07-1-2.5-1.62-4.08-1.62-3.31 0-6 2.69-6 6s2.69 6 6 6c1.58 0 3.01-.62 4.08-1.62l14.25 8.31c-.1.42-.16.86-.16 1.31 0 3.22 2.61 5.83 5.83 5.83s5.83-2.61 5.83-5.83-2.61-5.83-5.83-5.83z"/></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/images/balloon.jpg b/prototype_2016/third_party/qml-material/demo/images/balloon.jpg
deleted file mode 100644
index 9f8b281..0000000
--- a/prototype_2016/third_party/qml-material/demo/images/balloon.jpg
+++ /dev/null
Binary files differ
diff --git a/prototype_2016/third_party/qml-material/demo/images/go-last.color.svg b/prototype_2016/third_party/qml-material/demo/images/go-last.color.svg
deleted file mode 100644
index 861e81a..0000000
--- a/prototype_2016/third_party/qml-material/demo/images/go-last.color.svg
+++ /dev/null
@@ -1,157 +0,0 @@
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<!-- Created with Inkscape (http://www.inkscape.org/) -->
3
4<svg
5 xmlns:dc="http://purl.org/dc/elements/1.1/"
6 xmlns:cc="http://creativecommons.org/ns#"
7 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
8 xmlns:svg="http://www.w3.org/2000/svg"
9 xmlns="http://www.w3.org/2000/svg"
10 xmlns:xlink="http://www.w3.org/1999/xlink"
11 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12 version="1.1"
13 width="48"
14 height="48"
15 id="svg2491">
16 <defs
17 id="defs2493">
18 <linearGradient
19 x1="11.767765"
20 y1="-4.4393449"
21 x2="41.116112"
22 y2="-7.0000062"
23 id="linearGradient6723"
24 xlink:href="#linearGradient5113"
25 gradientUnits="userSpaceOnUse"
26 gradientTransform="translate(0,47.00001)" />
27 <linearGradient
28 id="linearGradient3166">
29 <stop
30 id="stop3168"
31 style="stop-color:#a7cc5c;stop-opacity:1"
32 offset="0" />
33 <stop
34 id="stop3170"
35 style="stop-color:#789e2d;stop-opacity:1"
36 offset="1" />
37 </linearGradient>
38 <linearGradient
39 x1="9.9999981"
40 y1="41.5"
41 x2="41.999996"
42 y2="41.5"
43 id="linearGradient3173"
44 xlink:href="#linearGradient3166"
45 gradientUnits="userSpaceOnUse" />
46 <linearGradient
47 id="linearGradient5113">
48 <stop
49 id="stop5115"
50 style="stop-color:#ffffff;stop-opacity:1"
51 offset="0" />
52 <stop
53 id="stop5117"
54 style="stop-color:#ffffff;stop-opacity:0"
55 offset="1" />
56 </linearGradient>
57 <linearGradient
58 x1="16.067961"
59 y1="11.133182"
60 x2="37.73064"
61 y2="42.793934"
62 id="linearGradient5315"
63 xlink:href="#linearGradient5113"
64 gradientUnits="userSpaceOnUse"
65 gradientTransform="matrix(1.004639,0,0,1,-4.037671,-0.05462481)" />
66 <linearGradient
67 id="linearGradient2264">
68 <stop
69 id="stop2266"
70 style="stop-color:#d7e866;stop-opacity:1"
71 offset="0" />
72 <stop
73 id="stop2268"
74 style="stop-color:#8cab2a;stop-opacity:1"
75 offset="1" />
76 </linearGradient>
77 <linearGradient
78 x1="21.131361"
79 y1="13.152157"
80 x2="21.131361"
81 y2="38.714657"
82 id="linearGradient3172"
83 xlink:href="#linearGradient2264"
84 gradientUnits="userSpaceOnUse" />
85 <linearGradient
86 id="linearGradient5105">
87 <stop
88 id="stop5107"
89 style="stop-color:#000000;stop-opacity:1"
90 offset="0" />
91 <stop
92 id="stop5109"
93 style="stop-color:#000000;stop-opacity:0"
94 offset="1" />
95 </linearGradient>
96 <radialGradient
97 cx="11.25"
98 cy="19.03125"
99 r="8.0625"
100 fx="11.25"
101 fy="19.03125"
102 id="radialGradient4354"
103 xlink:href="#linearGradient5105"
104 gradientUnits="userSpaceOnUse"
105 gradientTransform="matrix(1,0,0,0.282946,0,13.64644)" />
106 </defs>
107 <metadata
108 id="metadata2496">
109 <rdf:RDF>
110 <cc:Work
111 rdf:about="">
112 <dc:format>image/svg+xml</dc:format>
113 <dc:type
114 rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
115 </cc:Work>
116 </rdf:RDF>
117 </metadata>
118 <g
119 id="layer1">
120 <g
121 transform="translate(0.9999938,-2.9999963)"
122 id="g2571"
123 style="display:inline">
124 <path
125 d="m 19.3125,19.03125 a 8.0625,2.28125 0 1 1 -16.125,0 8.0625,2.28125 0 1 1 16.125,0 z"
126 transform="matrix(-2.48062,0,0,2.410961,50.90698,-5.38361)"
127 id="path4346"
128 style="opacity:0.16292138;fill:url(#radialGradient4354);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible" />
129 <path
130 d="m 19.502209,9.4374998 19.004144,16.5060242 -19.004144,16.423291 0,-7.869835 -14.9958391,0 0,-17.055132 14.9958391,0 0,-8.0043482 z"
131 inkscape:connector-curvature="0"
132 id="path4348"
133 style="fill:url(#linearGradient3172);fill-opacity:1;fill-rule:nonzero;stroke:#548820;stroke-width:0.99999958;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible" />
134 <path
135 d="m 20.573058,11.578557 16.516638,14.386273 -16.516638,14.199301 0,-6.738369 -15.0666831,0 0,-14.978334 15.0666831,0 0,-6.868871 z"
136 inkscape:connector-curvature="0"
137 id="path4360"
138 style="opacity:0.35400008;fill:none;stroke:url(#linearGradient5315);stroke-width:0.99999958;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible" />
139 <rect
140 width="33.000008"
141 height="4.0000119"
142 x="9.5"
143 y="39.500008"
144 transform="matrix(0,1,1,0,0,0)"
145 id="rect4242"
146 style="fill:#b3c360;fill-opacity:1;fill-rule:nonzero;stroke:#548820;stroke-width:0.99999982;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible" />
147 <rect
148 width="31"
149 height="2.0000019"
150 x="10.499998"
151 y="40.5"
152 transform="matrix(0,1,1,0,0,0)"
153 id="rect6697"
154 style="opacity:0.35400008;fill:url(#linearGradient3173);fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient6723);stroke-width:0.99999988;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible" />
155 </g>
156 </g>
157</svg>
diff --git a/prototype_2016/third_party/qml-material/demo/images/list-add.color.svg b/prototype_2016/third_party/qml-material/demo/images/list-add.color.svg
deleted file mode 100644
index 1e80aef..0000000
--- a/prototype_2016/third_party/qml-material/demo/images/list-add.color.svg
+++ /dev/null
@@ -1,180 +0,0 @@
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<!-- Created with Inkscape (http://www.inkscape.org/) -->
3
4<svg
5 xmlns:dc="http://purl.org/dc/elements/1.1/"
6 xmlns:cc="http://creativecommons.org/ns#"
7 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
8 xmlns:svg="http://www.w3.org/2000/svg"
9 xmlns="http://www.w3.org/2000/svg"
10 xmlns:xlink="http://www.w3.org/1999/xlink"
11 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12 version="1.1"
13 width="48"
14 height="48"
15 id="svg3941">
16 <defs
17 id="defs3943">
18 <linearGradient
19 x1="25"
20 y1="15"
21 x2="25"
22 y2="35"
23 id="linearGradient3897"
24 xlink:href="#linearGradient3891"
25 gradientUnits="userSpaceOnUse" />
26 <linearGradient
27 id="linearGradient3891">
28 <stop
29 id="stop3893"
30 style="stop-color:#000000;stop-opacity:1"
31 offset="0" />
32 <stop
33 id="stop3895"
34 style="stop-color:#000000;stop-opacity:0"
35 offset="1" />
36 </linearGradient>
37 <linearGradient
38 x1="71.204407"
39 y1="6.2375584"
40 x2="71.204407"
41 y2="44.340794"
42 id="linearGradient3403-4"
43 xlink:href="#linearGradient4011-3"
44 gradientUnits="userSpaceOnUse"
45 gradientTransform="translate(-47.733516,-0.3572398)" />
46 <linearGradient
47 id="linearGradient4011-3">
48 <stop
49 id="stop4013-5"
50 style="stop-color:#ffffff;stop-opacity:1"
51 offset="0" />
52 <stop
53 id="stop4015-1"
54 style="stop-color:#ffffff;stop-opacity:0.23529412"
55 offset="0.507761" />
56 <stop
57 id="stop4017-7"
58 style="stop-color:#ffffff;stop-opacity:0.15686275"
59 offset="0.83456558" />
60 <stop
61 id="stop4019-4"
62 style="stop-color:#ffffff;stop-opacity:0.39215687"
63 offset="1" />
64 </linearGradient>
65 <radialGradient
66 cx="23.895569"
67 cy="3.9900031"
68 r="20.397499"
69 fx="23.895569"
70 fy="3.9900031"
71 id="radialGradient3013-3"
72 xlink:href="#linearGradient3242-7"
73 gradientUnits="userSpaceOnUse"
74 gradientTransform="matrix(0,2.2874593,-3.0194057,0,36.047438,-50.630156)" />
75 <linearGradient
76 id="linearGradient3242-7">
77 <stop
78 id="stop3244-5"
79 style="stop-color:#eef87e;stop-opacity:1"
80 offset="0" />
81 <stop
82 id="stop3246-9"
83 style="stop-color:#cde34f;stop-opacity:1"
84 offset="0.26238" />
85 <stop
86 id="stop3248-7"
87 style="stop-color:#93b723;stop-opacity:1"
88 offset="0.66093999" />
89 <stop
90 id="stop3250-8"
91 style="stop-color:#5a7e0d;stop-opacity:1"
92 offset="1" />
93 </linearGradient>
94 <linearGradient
95 x1="18.379412"
96 y1="44.980297"
97 x2="18.379412"
98 y2="3.0816143"
99 id="linearGradient3015-2"
100 xlink:href="#linearGradient2490-3"
101 gradientUnits="userSpaceOnUse"
102 gradientTransform="matrix(0.9584364,0,0,0.9584366,0.9975247,1.9975255)" />
103 <linearGradient
104 id="linearGradient2490-3">
105 <stop
106 id="stop2492-3"
107 style="stop-color:#3f7010;stop-opacity:1"
108 offset="0" />
109 <stop
110 id="stop2494-8"
111 style="stop-color:#84a718;stop-opacity:1"
112 offset="1" />
113 </linearGradient>
114 <linearGradient
115 id="linearGradient8838-2">
116 <stop
117 id="stop8840-8"
118 style="stop-color:#000000;stop-opacity:1"
119 offset="0" />
120 <stop
121 id="stop8842-8"
122 style="stop-color:#000000;stop-opacity:0"
123 offset="1" />
124 </linearGradient>
125 <radialGradient
126 cx="62.625"
127 cy="4.625"
128 r="10.625"
129 fx="62.625"
130 fy="4.625"
131 id="radialGradient3939"
132 xlink:href="#linearGradient8838-2"
133 gradientUnits="userSpaceOnUse"
134 gradientTransform="matrix(2.1647059,0,0,0.7529402,-111.5647,36.517647)" />
135 </defs>
136 <metadata
137 id="metadata3946">
138 <rdf:RDF>
139 <cc:Work
140 rdf:about="">
141 <dc:format>image/svg+xml</dc:format>
142 <dc:type
143 rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
144 <dc:title />
145 </cc:Work>
146 </rdf:RDF>
147 </metadata>
148 <g
149 id="layer1">
150 <path
151 d="m 47,40 c 0,4.418278 -10.297451,8 -22.999999,8 -12.702548,0 -23.0000013,-3.581722 -23.0000013,-8 0,-4.418278 10.2974533,-8 23.0000013,-8 C 36.702549,32 47,35.581722 47,40 l 0,0 z"
152 inkscape:connector-curvature="0"
153 id="path8836-9"
154 style="opacity:0.3;fill:url(#radialGradient3939);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999988;marker:none;visibility:visible;display:inline;overflow:visible" />
155 <path
156 d="M 24.000003,5.501809 C 13.241574,5.501809 4.5018087,14.24157 4.5018087,25 c 0,10.75843 8.7397653,19.498195 19.4981943,19.498192 10.758425,0 19.498198,-8.739762 19.498188,-19.498192 0,-10.75843 -8.739763,-19.498191 -19.498188,-19.498191 z"
157 inkscape:connector-curvature="0"
158 id="path2555-2"
159 style="fill:url(#radialGradient3013-3);fill-opacity:1;stroke:url(#linearGradient3015-2);stroke-width:1.003654;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
160 <path
161 d="M 42.500001,24.999344 C 42.500001,35.216942 34.216659,43.5 24.000234,43.5 13.782874,43.5 5.4999992,35.216848 5.4999992,24.999344 c 0,-10.217125 8.2828748,-18.4993438 18.5002348,-18.4993438 10.216425,0 18.499767,8.2822188 18.499767,18.4993438 l 0,0 z"
162 inkscape:connector-curvature="0"
163 id="path8655-8"
164 style="opacity:0.7;color:#000000;fill:none;stroke:url(#linearGradient3403-4);stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
165 <path
166 d="m 21,14 0,7 -7,0 0,6 7,0 0,7 6,0 0,-7 7,0 0,-6 -7,0 0,-7 z"
167 inkscape:connector-curvature="0"
168 id="rect3007-9"
169 style="color:#000000;fill:#638d14;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
170 <path
171 d="m 21,15 0,7 -7,0 0,6 7,0 0,7 6,0 0,-7 7,0 0,-6 -7,0 0,-7 z"
172 inkscape:connector-curvature="0"
173 id="rect3007"
174 style="color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
175 <path
176 d="m 21.53125,15.53125 0,6.46875 A 0.52273827,0.52273827 0 0 1 21,22.53125 l -6.46875,0 0,4.9375 6.46875,0 A 0.52273827,0.52273827 0 0 1 21.53125,28 l 0,6.46875 4.9375,0 0,-6.46875 A 0.52273827,0.52273827 0 0 1 27,27.46875 l 6.46875,0 0,-4.9375 -6.46875,0 A 0.52273827,0.52273827 0 0 1 26.46875,22 l 0,-6.46875 -4.9375,0 z"
177 id="path3889"
178 style="opacity:0.1;color:#000000;fill:none;stroke:url(#linearGradient3897);stroke-width:1;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
179 </g>
180</svg>
diff --git a/prototype_2016/third_party/qml-material/demo/images/weather-pouring.svg b/prototype_2016/third_party/qml-material/demo/images/weather-pouring.svg
deleted file mode 100644
index bf20e9b..0000000
--- a/prototype_2016/third_party/qml-material/demo/images/weather-pouring.svg
+++ /dev/null
@@ -1 +0,0 @@
1<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="24" height="24" viewBox="0 0 24 24"><path d="M9,12C9.53,12.14 9.85,12.69 9.71,13.22L8.41,18.05C8.27,18.59 7.72,18.9 7.19,18.76C6.65,18.62 6.34,18.07 6.5,17.54L7.78,12.71C7.92,12.17 8.47,11.86 9,12M13,12C13.53,12.14 13.85,12.69 13.71,13.22L11.64,20.95C11.5,21.5 10.95,21.8 10.41,21.66C9.88,21.5 9.56,20.97 9.7,20.43L11.78,12.71C11.92,12.17 12.47,11.86 13,12M17,12C17.53,12.14 17.85,12.69 17.71,13.22L16.41,18.05C16.27,18.59 15.72,18.9 15.19,18.76C14.65,18.62 14.34,18.07 14.5,17.54L15.78,12.71C15.92,12.17 16.47,11.86 17,12M17,10V9A5,5 0 0,0 12,4C9.5,4 7.45,5.82 7.06,8.19C6.73,8.07 6.37,8 6,8A3,3 0 0,0 3,11C3,12.11 3.6,13.08 4.5,13.6V13.59C5,13.87 5.14,14.5 4.87,14.96C4.59,15.43 4,15.6 3.5,15.32V15.33C2,14.47 1,12.85 1,11A5,5 0 0,1 6,6C7,3.65 9.3,2 12,2C15.43,2 18.24,4.66 18.5,8.03L19,8A4,4 0 0,1 23,12C23,13.5 22.2,14.77 21,15.46V15.46C20.5,15.73 19.91,15.57 19.63,15.09C19.36,14.61 19.5,14 20,13.72V13.73C20.6,13.39 21,12.74 21,12A2,2 0 0,0 19,10H17Z" /></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/images/weather-sunset.svg b/prototype_2016/third_party/qml-material/demo/images/weather-sunset.svg
deleted file mode 100644
index 1a3babd..0000000
--- a/prototype_2016/third_party/qml-material/demo/images/weather-sunset.svg
+++ /dev/null
@@ -1 +0,0 @@
1<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="24" height="24" viewBox="0 0 24 24"><path d="M3,12H7A5,5 0 0,1 12,7A5,5 0 0,1 17,12H21A1,1 0 0,1 22,13A1,1 0 0,1 21,14H3A1,1 0 0,1 2,13A1,1 0 0,1 3,12M5,16H19A1,1 0 0,1 20,17A1,1 0 0,1 19,18H5A1,1 0 0,1 4,17A1,1 0 0,1 5,16M17,20A1,1 0 0,1 18,21A1,1 0 0,1 17,22H7A1,1 0 0,1 6,21A1,1 0 0,1 7,20H17M15,12A3,3 0 0,0 12,9A3,3 0 0,0 9,12H15M12,2L14.39,5.42C13.65,5.15 12.84,5 12,5C11.16,5 10.35,5.15 9.61,5.42L12,2M3.34,7L7.5,6.65C6.9,7.16 6.36,7.78 5.94,8.5C5.5,9.24 5.25,10 5.11,10.79L3.34,7M20.65,7L18.88,10.79C18.74,10 18.47,9.23 18.05,8.5C17.63,7.78 17.1,7.15 16.5,6.64L20.65,7Z" /></svg> \ No newline at end of file
diff --git a/prototype_2016/third_party/qml-material/demo/main.cpp b/prototype_2016/third_party/qml-material/demo/main.cpp
deleted file mode 100644
index d1e6dc0..0000000
--- a/prototype_2016/third_party/qml-material/demo/main.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
1#include <QGuiApplication>
2#include <QQmlApplicationEngine>
3
4int main(int argc, char *argv[])
5{
6 QGuiApplication app(argc, argv);
7
8 QQmlApplicationEngine engine(QUrl(QStringLiteral("qrc:/main.qml")));
9
10 return app.exec();
11}
diff --git a/prototype_2016/third_party/qml-material/demo/main.qml b/prototype_2016/third_party/qml-material/demo/main.qml
deleted file mode 100644
index f628cb8..0000000
--- a/prototype_2016/third_party/qml-material/demo/main.qml
+++ /dev/null
@@ -1,268 +0,0 @@
1import QtQuick 2.4
2import Material 0.2
3import Material.ListItems 0.1 as ListItem
4
5ApplicationWindow {
6 id: demo
7
8 title: "Material for QtQuick Demo"
9
10 // Necessary when loading the window from C++
11 visible: true
12
13 theme {
14 primaryColor: "blue"
15 accentColor: "red"
16 tabHighlightColor: "white"
17 }
18
19 property var styles: [
20 "Custom Icons", "Color Palette", "Typography"
21 ]
22
23 property var basicComponents: [
24 "Button", "CheckBox", "Progress Bar", "Radio Button",
25 "Slider", "Switch", "TextField"
26 ]
27
28 property var compoundComponents: [
29 "Bottom Sheet", "Dialog", "Forms", "List Items", "Page Stack", "Time Picker", "Date Picker"
30 ]
31
32 property var sections: [ basicComponents, styles, compoundComponents ]
33
34 property var sectionTitles: [ "Basic Components", "Style", "Compound Components" ]
35
36 property string selectedComponent: sections[0][0]
37
38 initialPage: TabbedPage {
39 id: page
40
41 title: "Demo"
42
43 actionBar.maxActionCount: navDrawer.enabled ? 3 : 4
44
45 actions: [
46 Action {
47 iconName: "alert/warning"
48 name: "Dummy error"
49 onTriggered: demo.showError("Something went wrong", "Do you want to retry?", "Close", true)
50 },
51
52 Action {
53 iconName: "image/color_lens"
54 name: "Colors"
55 onTriggered: colorPicker.show()
56 },
57
58 Action {
59 iconName: "action/settings"
60 name: "Settings"
61 hoverAnimation: true
62 },
63
64 Action {
65 iconName: "alert/warning"
66 name: "THIS SHOULD BE HIDDEN!"
67 visible: false
68 },
69
70 Action {
71 iconName: "action/language"
72 name: "Language"
73 enabled: false
74 },
75
76 Action {
77 iconName: "action/account_circle"
78 name: "Accounts"
79 }
80 ]
81
82 backAction: navDrawer.action
83
84 NavigationDrawer {
85 id: navDrawer
86
87 enabled: page.width < dp(500)
88
89 onEnabledChanged: smallLoader.active = enabled
90
91 Flickable {
92 anchors.fill: parent
93
94 contentHeight: Math.max(content.implicitHeight, height)
95
96 Column {
97 id: content
98 anchors.fill: parent
99
100 Repeater {
101 model: sections
102
103 delegate: Column {
104 width: parent.width
105
106 ListItem.Subheader {
107 text: sectionTitles[index]
108 }
109
110 Repeater {
111 model: modelData
112 delegate: ListItem.Standard {
113 text: modelData
114 selected: modelData == demo.selectedComponent
115 onClicked: {
116 demo.selectedComponent = modelData
117 navDrawer.close()
118 }
119 }
120 }
121 }
122 }
123 }
124 }
125 }
126
127 Repeater {
128 model: !navDrawer.enabled ? sections : 0
129
130 delegate: Tab {
131 title: sectionTitles[index]
132
133 property string selectedComponent: modelData[0]
134 property var section: modelData
135
136 sourceComponent: tabDelegate
137 }
138 }
139
140 Loader {
141 id: smallLoader
142 anchors.fill: parent
143 sourceComponent: tabDelegate
144
145 property var section: []
146 visible: active
147 active: false
148 }
149 }
150
151 Dialog {
152 id: colorPicker
153 title: "Pick color"
154
155 positiveButtonText: "Done"
156
157 MenuField {
158 id: selection
159 model: ["Primary color", "Accent color", "Background color"]
160 width: dp(160)
161 }
162
163 Grid {
164 columns: 7
165 spacing: dp(8)
166
167 Repeater {
168 model: [
169 "red", "pink", "purple", "deepPurple", "indigo",
170 "blue", "lightBlue", "cyan", "teal", "green",
171 "lightGreen", "lime", "yellow", "amber", "orange",
172 "deepOrange", "grey", "blueGrey", "brown", "black",
173 "white"
174 ]
175
176 Rectangle {
177 width: dp(30)
178 height: dp(30)
179 radius: dp(2)
180 color: Palette.colors[modelData]["500"]
181 border.width: modelData === "white" ? dp(2) : 0
182 border.color: Theme.alpha("#000", 0.26)
183
184 Ink {
185 anchors.fill: parent
186
187 onPressed: {
188 switch(selection.selectedIndex) {
189 case 0:
190 theme.primaryColor = parent.color
191 break;
192 case 1:
193 theme.accentColor = parent.color
194 break;
195 case 2:
196 theme.backgroundColor = parent.color
197 break;
198 }
199 }
200 }
201 }
202 }
203 }
204
205 onRejected: {
206 // TODO set default colors again but we currently don't know what that is
207 }
208 }
209
210 Component {
211 id: tabDelegate
212
213 Item {
214
215 Sidebar {
216 id: sidebar
217
218 expanded: !navDrawer.enabled
219
220 Column {
221 width: parent.width
222
223 Repeater {
224 model: section
225 delegate: ListItem.Standard {
226 text: modelData
227 selected: modelData == selectedComponent
228 onClicked: selectedComponent = modelData
229 }
230 }
231 }
232 }
233 Flickable {
234 id: flickable
235 anchors {
236 left: sidebar.right
237 right: parent.right
238 top: parent.top
239 bottom: parent.bottom
240 }
241 clip: true
242 contentHeight: Math.max(example.implicitHeight + 40, height)
243 Loader {
244 id: example
245 anchors.fill: parent
246 asynchronous: true
247 visible: status == Loader.Ready
248 // selectedComponent will always be valid, as it defaults to the first component
249 source: {
250 if (navDrawer.enabled) {
251 return Qt.resolvedUrl("%1Demo.qml").arg(demo.selectedComponent.replace(" ", ""))
252 } else {
253 return Qt.resolvedUrl("%1Demo.qml").arg(selectedComponent.replace(" ", ""))
254 }
255 }
256 }
257
258 ProgressCircle {
259 anchors.centerIn: parent
260 visible: example.status == Loader.Loading
261 }
262 }
263 Scrollbar {
264 flickableItem: flickable
265 }
266 }
267 }
268}