| 
									
										
										
										
											2017-04-27 20:30:36 +02:00
										 |  |  | // SPDX-License-Identifier: GPL-2.0
 | 
					
						
							| 
									
										
										
										
											2020-01-15 11:19:53 +01:00
										 |  |  | import QtQuick 2.12 | 
					
						
							|  |  |  | import QtQuick.Layouts 1.12 | 
					
						
							| 
									
										
										
										
											2020-01-22 20:20:14 +01:00
										 |  |  | import QtQuick.Controls 2.12 | 
					
						
							| 
									
										
										
										
											2018-09-27 22:09:26 +02:00
										 |  |  | import org.kde.kirigami 2.4 as Kirigami | 
					
						
							| 
									
										
										
										
											2015-07-10 10:48:28 +03:00
										 |  |  | import org.subsurfacedivelog.mobile 1.0 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-01-27 22:20:27 +01:00
										 |  |  | TemplatePage { | 
					
						
							| 
									
										
										
										
											2017-07-20 19:39:55 +02:00
										 |  |  | 	objectName: "Settings" | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 	title: qsTr("Settings") | 
					
						
							|  |  |  | 	width: rootItem.colWidth - Kirigami.Units.gridUnit | 
					
						
							| 
									
										
										
										
											2018-08-20 20:02:54 +02:00
										 |  |  | 	property alias defaultCylinderModel: defaultCylinderBox.model | 
					
						
							|  |  |  | 	property alias defaultCylinderIndex: defaultCylinderBox.currentIndex | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 	property real contentColumeWidth: width - 2 * Kirigami.Units.gridUnit | 
					
						
							| 
									
										
										
										
											2017-09-27 18:56:24 +02:00
										 |  |  | 	property var describe: [qsTr("Undefined"), | 
					
						
							|  |  |  | 		qsTr("Incorrect username/password combination"), | 
					
						
							|  |  |  | 		qsTr("Credentials need to be verified"), | 
					
						
							|  |  |  | 		qsTr("Credentials verified"), | 
					
						
							|  |  |  | 		qsTr("No cloud mode")] | 
					
						
							| 
									
										
										
										
											2020-01-15 19:08:40 +01:00
										 |  |  | 	Column { | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 		width: contentColumeWidth | 
					
						
							| 
									
										
										
										
											2020-01-15 19:08:40 +01:00
										 |  |  | 		TemplateSection { | 
					
						
							|  |  |  | 			id: sectionGeneral | 
					
						
							|  |  |  | 			title: qsTr("General settings") | 
					
						
							|  |  |  | 			isExpanded: true | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 			width: parent.width | 
					
						
							| 
									
										
										
										
											2020-01-15 19:08:40 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-01-15 19:26:56 +01:00
										 |  |  | 			GridLayout { | 
					
						
							|  |  |  | 				id: cloudSetting | 
					
						
							|  |  |  | 				visible: sectionGeneral.isExpanded | 
					
						
							|  |  |  | 				columns: 3 | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 				width: parent.width | 
					
						
							| 
									
										
										
										
											2020-01-15 19:26:56 +01:00
										 |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Cloud status") | 
					
						
							|  |  |  | 					font.pointSize: subsurfaceTheme.headingPointSize | 
					
						
							|  |  |  | 					font.weight: Font.Light | 
					
						
							|  |  |  | 					Layout.topMargin: Kirigami.Units.largeSpacing | 
					
						
							|  |  |  | 					Layout.bottomMargin: Kirigami.Units.largeSpacing / 2 | 
					
						
							|  |  |  | 					Layout.columnSpan: 3 | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Email") | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: Backend.cloud_verification_status === Enums.CS_NOCLOUD ? qsTr("Not applicable") : PrefCloudStorage.cloud_storage_email | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							| 
									
										
										
										
											2020-01-15 19:26:56 +01:00
										 |  |  | 				} | 
					
						
							| 
									
										
										
										
											2019-02-11 17:09:51 +01:00
										 |  |  | 				TemplateButton { | 
					
						
							| 
									
										
										
										
											2020-01-15 19:26:56 +01:00
										 |  |  | 					id: changeCloudSettings | 
					
						
							|  |  |  | 					text: qsTr("Change") | 
					
						
							|  |  |  | 					onClicked: { | 
					
						
							|  |  |  | 						Backend.cloud_verification_status = Enums.CS_UNKNOWN | 
					
						
							|  |  |  | 						manager.startPageText  = qsTr("Starting..."); | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Status") | 
					
						
							|  |  |  | 					Layout.preferredHeight: Kirigami.Units.gridUnit * 1.5 | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: describe[Backend.cloud_verification_status] | 
					
						
							|  |  |  | 					Layout.preferredHeight: Kirigami.Units.gridUnit * 1.5 | 
					
						
							| 
									
										
										
										
											2017-09-27 18:56:24 +02:00
										 |  |  | 				} | 
					
						
							|  |  |  | 			} | 
					
						
							| 
									
										
										
										
											2020-01-15 19:34:13 +01:00
										 |  |  | 			TemplateLine { | 
					
						
							|  |  |  | 				visible: sectionGeneral.isExpanded | 
					
						
							|  |  |  | 			} | 
					
						
							|  |  |  | 			GridLayout { | 
					
						
							|  |  |  | 				id: defaultCylinder | 
					
						
							|  |  |  | 				visible: sectionGeneral.isExpanded | 
					
						
							|  |  |  | 				columns: 2 | 
					
						
							| 
									
										
										
										
											2020-02-06 16:09:47 -08:00
										 |  |  | 				width: parent.width | 
					
						
							| 
									
										
										
										
											2020-01-15 19:34:13 +01:00
										 |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Default Cylinder") | 
					
						
							|  |  |  | 					font.pointSize: subsurfaceTheme.headingPointSize | 
					
						
							|  |  |  | 					font.weight: Font.Light | 
					
						
							|  |  |  | 					Layout.topMargin: Kirigami.Units.largeSpacing | 
					
						
							|  |  |  | 					Layout.bottomMargin: Kirigami.Units.largeSpacing / 2 | 
					
						
							|  |  |  | 					Layout.columnSpan: 2 | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Cylinder:") | 
					
						
							|  |  |  | 				} | 
					
						
							| 
									
										
										
										
											2021-01-11 09:59:43 -08:00
										 |  |  | 				TemplateSlimComboBox { | 
					
						
							| 
									
										
										
										
											2020-01-15 19:34:13 +01:00
										 |  |  | 					id: defaultCylinderBox | 
					
						
							| 
									
										
										
										
											2020-02-06 16:09:47 -08:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							| 
									
										
										
										
											2020-01-15 19:34:13 +01:00
										 |  |  | 					onActivated: { | 
					
						
							| 
									
										
										
										
											2020-01-20 09:29:05 -08:00
										 |  |  | 						// the entry for 'no default cylinder' is known to be the top, but its text
 | 
					
						
							|  |  |  | 						// is possibly translated so check against the index
 | 
					
						
							|  |  |  | 						if (currentIndex === 0) | 
					
						
							|  |  |  | 							PrefEquipment.default_cylinder = "" | 
					
						
							|  |  |  | 						else | 
					
						
							|  |  |  | 							PrefEquipment.default_cylinder = defaultCylinderBox.currentText | 
					
						
							| 
									
										
										
										
											2020-01-15 19:34:13 +01:00
										 |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 			} | 
					
						
							| 
									
										
										
										
											2020-01-15 19:36:38 +01:00
										 |  |  | 			TemplateLine { | 
					
						
							|  |  |  | 				visible: sectionGeneral.isExpanded | 
					
						
							|  |  |  | 			} | 
					
						
							|  |  |  | 			GridLayout { | 
					
						
							|  |  |  | 				id: divecomputers | 
					
						
							|  |  |  | 				visible: sectionGeneral.isExpanded | 
					
						
							|  |  |  | 				columns: 2 | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 				width: parent.width | 
					
						
							| 
									
										
										
										
											2020-01-15 19:36:38 +01:00
										 |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Dive computers") | 
					
						
							|  |  |  | 					font.pointSize: subsurfaceTheme.headingPointSize | 
					
						
							|  |  |  | 					font.weight: Font.Light | 
					
						
							|  |  |  | 					Layout.topMargin: Kirigami.Units.largeSpacing | 
					
						
							|  |  |  | 					Layout.bottomMargin: Kirigami.Units.largeSpacing | 
					
						
							|  |  |  | 					Layout.columnSpan: 2 | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Forget remembered dive computers") | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							| 
									
										
										
										
											2020-01-15 19:36:38 +01:00
										 |  |  | 				} | 
					
						
							| 
									
										
										
										
											2019-02-11 17:09:51 +01:00
										 |  |  | 				TemplateButton { | 
					
						
							| 
									
										
										
										
											2020-01-15 19:36:38 +01:00
										 |  |  | 					id: forgetDCButton | 
					
						
							|  |  |  | 					text: qsTr("Forget") | 
					
						
							|  |  |  | 					enabled: PrefDiveComputer.vendor1 !== "" | 
					
						
							|  |  |  | 					onClicked: { | 
					
						
							|  |  |  | 						PrefDiveComputer.vendor1 = PrefDiveComputer.product1 = PrefDiveComputer.device1 = "" | 
					
						
							|  |  |  | 						PrefDiveComputer.vendor2 = PrefDiveComputer.product2 = PrefDiveComputer.device2 = "" | 
					
						
							|  |  |  | 						PrefDiveComputer.vendor3 = PrefDiveComputer.product3 = PrefDiveComputer.device3 = "" | 
					
						
							|  |  |  | 						PrefDiveComputer.vendor4 = PrefDiveComputer.product4 = PrefDiveComputer.device4 = "" | 
					
						
							|  |  |  | 						PrefDiveComputer.vendor = PrefDiveComputer.product = PrefDiveComputer.device = "" | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 			} | 
					
						
							| 
									
										
										
										
											2017-09-27 18:56:24 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 		} | 
					
						
							| 
									
										
										
										
											2020-01-15 19:42:16 +01:00
										 |  |  | 		TemplateSection { | 
					
						
							|  |  |  | 			id: sectionTheme | 
					
						
							|  |  |  | 			title: qsTr("Theme") | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 			width: parent.width | 
					
						
							| 
									
										
										
										
											2020-01-15 19:42:16 +01:00
										 |  |  | 			GridLayout { | 
					
						
							|  |  |  | 				visible: sectionTheme.isExpanded | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 				columns: 2 | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 				width: parent.width | 
					
						
							|  |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Color theme") | 
					
						
							|  |  |  | 					font.pointSize: subsurfaceTheme.headingPointSize | 
					
						
							|  |  |  | 					font.weight: Font.Light | 
					
						
							|  |  |  | 					Layout.topMargin: Kirigami.Units.largeSpacing | 
					
						
							|  |  |  | 					Layout.bottomMargin: Kirigami.Units.largeSpacing / 2 | 
					
						
							|  |  |  | 					Layout.columnSpan: 2 | 
					
						
							|  |  |  | 				} | 
					
						
							| 
									
										
										
										
											2021-01-11 09:59:43 -08:00
										 |  |  | 				TemplateSlimComboBox { | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 					editable: false | 
					
						
							|  |  |  | 					Layout.columnSpan: 2 | 
					
						
							| 
									
										
										
										
											2020-01-15 09:40:54 +01:00
										 |  |  | 					currentIndex: (subsurfaceTheme.currentTheme === "Blue") ? 0 : | 
					
						
							|  |  |  | 								  (subsurfaceTheme.currentTheme === "Pink") ? 1 : 2 | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 					model: ListModel { | 
					
						
							|  |  |  | 						   ListElement {text: qsTr("Blue")} | 
					
						
							|  |  |  | 						   ListElement {text: qsTr("Pink")} | 
					
						
							|  |  |  | 						   ListElement {text: qsTr("Dark")} | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 					onActivated:  { | 
					
						
							| 
									
										
										
										
											2020-02-06 08:29:37 -08:00
										 |  |  | 						subsurfaceTheme.currentTheme = currentIndex === 0 ? "Blue" : currentIndex === 1 ? "Pink" : "Dark" | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 					} | 
					
						
							| 
									
										
										
										
											2020-01-15 19:42:16 +01:00
										 |  |  | 				} | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 				Rectangle { | 
					
						
							|  |  |  | 					color: 	subsurfaceTheme.backgroundColor | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							|  |  |  | 					Layout.preferredHeight: 2 * Kirigami.Units.gridUnit | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 					TemplateLabel { | 
					
						
							|  |  |  | 						text: qsTr("background") | 
					
						
							| 
									
										
										
										
											2020-02-06 08:28:27 -08:00
										 |  |  | 						color: subsurfaceTheme.textColor | 
					
						
							| 
									
										
										
										
											2020-02-06 08:17:54 -08:00
										 |  |  | 						colorBackground: parent.color | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 						anchors.horizontalCenter: parent.horizontalCenter | 
					
						
							|  |  |  | 						anchors.verticalCenter: parent.verticalCenter | 
					
						
							| 
									
										
										
										
											2017-07-09 20:53:16 -07:00
										 |  |  | 					} | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 				} | 
					
						
							|  |  |  | 				Rectangle { | 
					
						
							| 
									
										
										
										
											2020-02-06 08:28:27 -08:00
										 |  |  | 					color: subsurfaceTheme.backgroundColor | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							|  |  |  | 					Layout.preferredHeight: 2 * Kirigami.Units.gridUnit | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 					TemplateLabel { | 
					
						
							|  |  |  | 						text: qsTr("text") | 
					
						
							|  |  |  | 						color: subsurfaceTheme.textColor | 
					
						
							| 
									
										
										
										
											2020-02-06 08:17:54 -08:00
										 |  |  | 						colorBackground: parent.color | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 						anchors.horizontalCenter: parent.horizontalCenter | 
					
						
							|  |  |  | 						anchors.verticalCenter: parent.verticalCenter | 
					
						
							| 
									
										
										
										
											2017-06-23 18:08:47 -07:00
										 |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 				Rectangle { | 
					
						
							|  |  |  | 					border.width: 2 | 
					
						
							|  |  |  | 					border.color: "black" | 
					
						
							|  |  |  | 					color: 	subsurfaceTheme.primaryColor | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							|  |  |  | 					Layout.preferredHeight: 2 * Kirigami.Units.gridUnit | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 					TemplateLabel { | 
					
						
							|  |  |  | 						text: qsTr("primary") | 
					
						
							| 
									
										
										
										
											2020-02-06 08:28:27 -08:00
										 |  |  | 						color: subsurfaceTheme.primaryTextColor | 
					
						
							| 
									
										
										
										
											2020-02-06 08:17:54 -08:00
										 |  |  | 						colorBackground: parent.color | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 						anchors.horizontalCenter: parent.horizontalCenter | 
					
						
							|  |  |  | 						anchors.verticalCenter: parent.verticalCenter | 
					
						
							| 
									
										
										
										
											2020-01-15 19:42:16 +01:00
										 |  |  | 					} | 
					
						
							| 
									
										
										
										
											2017-07-09 20:53:16 -07:00
										 |  |  | 				} | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 				Rectangle { | 
					
						
							|  |  |  | 					border.width: 2 | 
					
						
							|  |  |  | 					border.color: "black" | 
					
						
							| 
									
										
										
										
											2020-02-06 08:28:27 -08:00
										 |  |  | 					color: subsurfaceTheme.primaryTextColor | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							|  |  |  | 					Layout.preferredHeight: 2 * Kirigami.Units.gridUnit | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 					TemplateLabel { | 
					
						
							| 
									
										
										
										
											2020-02-06 08:28:27 -08:00
										 |  |  | 						text: qsTr("primary text") | 
					
						
							|  |  |  | 						color: subsurfaceTheme.primaryColor | 
					
						
							| 
									
										
										
										
											2020-02-06 08:17:54 -08:00
										 |  |  | 						colorBackground: parent.color | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 						anchors.horizontalCenter: parent.horizontalCenter | 
					
						
							|  |  |  | 						anchors.verticalCenter: parent.verticalCenter | 
					
						
							|  |  |  | 					} | 
					
						
							| 
									
										
										
										
											2020-01-15 19:42:16 +01:00
										 |  |  | 				} | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 				Rectangle { | 
					
						
							|  |  |  | 					border.width: 2 | 
					
						
							|  |  |  | 					border.color: "black" | 
					
						
							|  |  |  | 					color: 	subsurfaceTheme.darkerPrimaryColor | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							|  |  |  | 					Layout.preferredHeight: 2 * Kirigami.Units.gridUnit | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 					TemplateLabel { | 
					
						
							|  |  |  | 						text: qsTr("darker primary") | 
					
						
							| 
									
										
										
										
											2020-02-06 08:28:27 -08:00
										 |  |  | 						color: subsurfaceTheme.darkerPrimaryTextColor | 
					
						
							| 
									
										
										
										
											2020-02-06 08:17:54 -08:00
										 |  |  | 						colorBackground: parent.color | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 						anchors.horizontalCenter: parent.horizontalCenter | 
					
						
							|  |  |  | 						anchors.verticalCenter: parent.verticalCenter | 
					
						
							| 
									
										
										
										
											2017-06-23 18:08:47 -07:00
										 |  |  | 					} | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 				} | 
					
						
							|  |  |  | 				Rectangle { | 
					
						
							|  |  |  | 					border.width: 2 | 
					
						
							|  |  |  | 					border.color: "black" | 
					
						
							| 
									
										
										
										
											2020-02-06 08:28:27 -08:00
										 |  |  | 					color: subsurfaceTheme.darkerPrimaryTextColor | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							|  |  |  | 					Layout.preferredHeight: 2 * Kirigami.Units.gridUnit | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 					TemplateLabel { | 
					
						
							| 
									
										
										
										
											2020-02-06 08:28:27 -08:00
										 |  |  | 						text: qsTr("darker primary text") | 
					
						
							|  |  |  | 						color: subsurfaceTheme.darkerPrimaryColor | 
					
						
							| 
									
										
										
										
											2020-02-06 08:17:54 -08:00
										 |  |  | 						colorBackground: parent.color | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 						anchors.horizontalCenter: parent.horizontalCenter | 
					
						
							|  |  |  | 						anchors.verticalCenter: parent.verticalCenter | 
					
						
							| 
									
										
										
										
											2017-06-23 18:08:47 -07:00
										 |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 				Rectangle { | 
					
						
							|  |  |  | 					border.width: 2 | 
					
						
							|  |  |  | 					border.color: "black" | 
					
						
							|  |  |  | 					color: 	subsurfaceTheme.lightPrimaryColor | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							|  |  |  | 					Layout.preferredHeight: 2 * Kirigami.Units.gridUnit | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 					TemplateLabel { | 
					
						
							|  |  |  | 						text: qsTr("light primary") | 
					
						
							| 
									
										
										
										
											2020-02-06 08:28:27 -08:00
										 |  |  | 						color: subsurfaceTheme.lightPrimaryTextColor | 
					
						
							| 
									
										
										
										
											2020-02-06 08:17:54 -08:00
										 |  |  | 						colorBackground: parent.color | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 						anchors.horizontalCenter: parent.horizontalCenter | 
					
						
							|  |  |  | 						anchors.verticalCenter: parent.verticalCenter | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				Rectangle { | 
					
						
							|  |  |  | 					border.width: 2 | 
					
						
							|  |  |  | 					border.color: "black" | 
					
						
							| 
									
										
										
										
											2020-02-06 08:28:27 -08:00
										 |  |  | 					color: subsurfaceTheme.lightPrimaryTextColor | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							|  |  |  | 					Layout.preferredHeight: 2 * Kirigami.Units.gridUnit | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 					TemplateLabel { | 
					
						
							| 
									
										
										
										
											2020-02-06 08:28:27 -08:00
										 |  |  | 						text: qsTr("light primary text") | 
					
						
							|  |  |  | 						color: subsurfaceTheme.lightPrimaryColor | 
					
						
							| 
									
										
										
										
											2020-02-06 08:17:54 -08:00
										 |  |  | 						colorBackground: parent.color | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 						anchors.horizontalCenter: parent.horizontalCenter | 
					
						
							|  |  |  | 						anchors.verticalCenter: parent.verticalCenter | 
					
						
							| 
									
										
										
										
											2020-01-15 19:42:16 +01:00
										 |  |  | 					} | 
					
						
							| 
									
										
										
										
											2017-07-09 20:53:16 -07:00
										 |  |  | 				} | 
					
						
							| 
									
										
										
										
											2020-01-15 19:42:16 +01:00
										 |  |  | 				TemplateLabel { | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 					text: "" | 
					
						
							| 
									
										
										
										
											2020-01-15 19:42:16 +01:00
										 |  |  | 				} | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 				Rectangle { | 
					
						
							|  |  |  | 					border.width: 2 | 
					
						
							|  |  |  | 					border.color: "black" | 
					
						
							| 
									
										
										
										
											2020-02-06 08:28:27 -08:00
										 |  |  | 					color: subsurfaceTheme.secondaryTextColor | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							|  |  |  | 					Layout.preferredHeight: 2 * Kirigami.Units.gridUnit | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 					TemplateLabel { | 
					
						
							|  |  |  | 						text: qsTr("secondary text") | 
					
						
							| 
									
										
										
										
											2020-02-06 08:28:27 -08:00
										 |  |  | 						color: subsurfaceTheme.primaryColor | 
					
						
							| 
									
										
										
										
											2020-02-06 08:17:54 -08:00
										 |  |  | 						colorBackground: parent.color | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 						anchors.horizontalCenter: parent.horizontalCenter | 
					
						
							|  |  |  | 						anchors.verticalCenter: parent.verticalCenter | 
					
						
							| 
									
										
										
										
											2017-06-23 18:08:47 -07:00
										 |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 				Rectangle { | 
					
						
							|  |  |  | 					border.width: 2 | 
					
						
							|  |  |  | 					border.color: "black" | 
					
						
							|  |  |  | 					color: 	subsurfaceTheme.drawerColor | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							|  |  |  | 					Layout.preferredHeight: 2 * Kirigami.Units.gridUnit | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 					TemplateLabel { | 
					
						
							|  |  |  | 						text: qsTr("drawer") | 
					
						
							| 
									
										
										
										
											2020-02-06 08:28:27 -08:00
										 |  |  | 						color: subsurfaceTheme.textColor | 
					
						
							| 
									
										
										
										
											2020-02-06 08:17:54 -08:00
										 |  |  | 						colorBackground: parent.color | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 						anchors.horizontalCenter: parent.horizontalCenter | 
					
						
							|  |  |  | 						anchors.verticalCenter: parent.verticalCenter | 
					
						
							| 
									
										
										
										
											2018-09-22 18:01:45 -07:00
										 |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							| 
									
										
										
										
											2020-01-15 19:42:16 +01:00
										 |  |  | 				TemplateLabel { | 
					
						
							| 
									
										
										
										
											2020-01-27 23:12:40 +01:00
										 |  |  | 					text: "" | 
					
						
							| 
									
										
										
										
											2018-09-22 18:01:45 -07:00
										 |  |  | 				} | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Font size") | 
					
						
							|  |  |  | 					font.pointSize: subsurfaceTheme.headingPointSize | 
					
						
							|  |  |  | 					font.weight: Font.Light | 
					
						
							|  |  |  | 					Layout.topMargin: Kirigami.Units.largeSpacing | 
					
						
							|  |  |  | 					Layout.bottomMargin: Kirigami.Units.largeSpacing / 2 | 
					
						
							|  |  |  | 					Layout.columnSpan: 2 | 
					
						
							|  |  |  | 				} | 
					
						
							| 
									
										
										
										
											2021-01-15 11:50:12 -08:00
										 |  |  | 				Flow { | 
					
						
							| 
									
										
										
										
											2020-02-06 08:31:23 -08:00
										 |  |  | 					Layout.columnSpan: 2 | 
					
						
							| 
									
										
										
										
											2020-01-15 19:42:16 +01:00
										 |  |  | 					spacing: Kirigami.Units.largeSpacing | 
					
						
							| 
									
										
										
										
											2019-02-11 17:09:51 +01:00
										 |  |  | 					TemplateButton { | 
					
						
							| 
									
										
										
										
											2021-01-15 11:50:12 -08:00
										 |  |  | 						text: qsTr("very small") | 
					
						
							|  |  |  | 						fontSize: subsurfaceTheme.regularPointSize / subsurfaceTheme.currentScale * 0.75 | 
					
						
							|  |  |  | 						enabled: subsurfaceTheme.currentScale !== 0.75 | 
					
						
							|  |  |  | 						onClicked: { | 
					
						
							|  |  |  | 							subsurfaceTheme.currentScale = 0.75 | 
					
						
							|  |  |  | 							rootItem.setupUnits() | 
					
						
							|  |  |  | 						} | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 					TemplateButton { | 
					
						
							|  |  |  | 						text: qsTr("small") | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 						Layout.fillWidth: true | 
					
						
							| 
									
										
										
										
											2021-01-15 11:50:12 -08:00
										 |  |  | 						fontSize: subsurfaceTheme.regularPointSize / subsurfaceTheme.currentScale * 0.85 | 
					
						
							| 
									
										
										
										
											2020-02-06 08:30:39 -08:00
										 |  |  | 						enabled: subsurfaceTheme.currentScale !== 0.85 | 
					
						
							| 
									
										
										
										
											2020-01-15 19:42:16 +01:00
										 |  |  | 						onClicked: { | 
					
						
							| 
									
										
										
										
											2020-02-06 08:30:39 -08:00
										 |  |  | 							subsurfaceTheme.currentScale = 0.85 | 
					
						
							| 
									
										
											  
											
												mobile/UI: correctly scale UI without restart
The fact that the rescaling in the settings gave different results from
what we got after a restart really should have been a dead giveaway that
the code was fundamentally flawed.
With this, if the user picks smaller, regular, or larger they now always
get the same, consistent values for gridUnit and font sizes.
This also gives up on the idea that we can just force the gridUnit to be
smaller to make things work if the font (which drives the gridUnit) is
too big for a screen. That fundamentally cannot work and gives a
horrible UI experience. So instead simply warn the user and continue
with matching font / gridUnit, which will still give a bad experience,
but at least we told the user about it and didn't pretend this was ok or
fixable.
Finally, this gets the factors right when switching from smaller to
larger or back, without stopping at regular on the way.
One odd side effect of this code is that under certain conditions
(number of columns changes) the display window when running mobile on
desktop will resize. That's kind of odd, but as that is not /really/ our
target platform, for now I'd consider it acceptable. But it does deserve
more investigation.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
											
										 
											2021-01-14 04:08:48 -08:00
										 |  |  | 							rootItem.setupUnits() | 
					
						
							| 
									
										
										
										
											2020-01-15 19:42:16 +01:00
										 |  |  | 						} | 
					
						
							|  |  |  | 					} | 
					
						
							| 
									
										
										
										
											2019-02-11 17:09:51 +01:00
										 |  |  | 					TemplateButton { | 
					
						
							| 
									
										
										
										
											2020-01-15 19:42:16 +01:00
										 |  |  | 						text: qsTr("regular") | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 						Layout.fillWidth: true | 
					
						
							| 
									
										
										
										
											2021-01-15 11:50:12 -08:00
										 |  |  | 						fontSize: subsurfaceTheme.regularPointSize / subsurfaceTheme.currentScale * 0.85 | 
					
						
							| 
									
										
										
										
											2020-02-06 08:30:39 -08:00
										 |  |  | 						enabled: subsurfaceTheme.currentScale !== 1.0 | 
					
						
							| 
									
										
										
										
											2020-01-15 19:42:16 +01:00
										 |  |  | 						onClicked: { | 
					
						
							| 
									
										
										
										
											2020-02-06 08:30:39 -08:00
										 |  |  | 							subsurfaceTheme.currentScale = 1.0 | 
					
						
							| 
									
										
											  
											
												mobile/UI: correctly scale UI without restart
The fact that the rescaling in the settings gave different results from
what we got after a restart really should have been a dead giveaway that
the code was fundamentally flawed.
With this, if the user picks smaller, regular, or larger they now always
get the same, consistent values for gridUnit and font sizes.
This also gives up on the idea that we can just force the gridUnit to be
smaller to make things work if the font (which drives the gridUnit) is
too big for a screen. That fundamentally cannot work and gives a
horrible UI experience. So instead simply warn the user and continue
with matching font / gridUnit, which will still give a bad experience,
but at least we told the user about it and didn't pretend this was ok or
fixable.
Finally, this gets the factors right when switching from smaller to
larger or back, without stopping at regular on the way.
One odd side effect of this code is that under certain conditions
(number of columns changes) the display window when running mobile on
desktop will resize. That's kind of odd, but as that is not /really/ our
target platform, for now I'd consider it acceptable. But it does deserve
more investigation.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
											
										 
											2021-01-14 04:08:48 -08:00
										 |  |  | 							rootItem.setupUnits() | 
					
						
							| 
									
										
										
										
											2020-01-15 19:42:16 +01:00
										 |  |  | 						} | 
					
						
							|  |  |  | 					} | 
					
						
							| 
									
										
										
										
											2019-02-11 17:09:51 +01:00
										 |  |  | 					TemplateButton { | 
					
						
							| 
									
										
										
										
											2021-01-15 11:50:12 -08:00
										 |  |  | 						text: qsTr("large") | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 						Layout.fillWidth: true | 
					
						
							| 
									
										
										
										
											2021-01-15 11:50:12 -08:00
										 |  |  | 						fontSize: subsurfaceTheme.regularPointSize / subsurfaceTheme.currentScale * 1.15 | 
					
						
							| 
									
										
										
										
											2020-02-06 08:30:39 -08:00
										 |  |  | 						enabled: subsurfaceTheme.currentScale !== 1.15 | 
					
						
							| 
									
										
										
										
											2020-01-15 19:42:16 +01:00
										 |  |  | 						onClicked: { | 
					
						
							| 
									
										
										
										
											2020-02-06 08:30:39 -08:00
										 |  |  | 							subsurfaceTheme.currentScale = 1.15 | 
					
						
							| 
									
										
											  
											
												mobile/UI: correctly scale UI without restart
The fact that the rescaling in the settings gave different results from
what we got after a restart really should have been a dead giveaway that
the code was fundamentally flawed.
With this, if the user picks smaller, regular, or larger they now always
get the same, consistent values for gridUnit and font sizes.
This also gives up on the idea that we can just force the gridUnit to be
smaller to make things work if the font (which drives the gridUnit) is
too big for a screen. That fundamentally cannot work and gives a
horrible UI experience. So instead simply warn the user and continue
with matching font / gridUnit, which will still give a bad experience,
but at least we told the user about it and didn't pretend this was ok or
fixable.
Finally, this gets the factors right when switching from smaller to
larger or back, without stopping at regular on the way.
One odd side effect of this code is that under certain conditions
(number of columns changes) the display window when running mobile on
desktop will resize. That's kind of odd, but as that is not /really/ our
target platform, for now I'd consider it acceptable. But it does deserve
more investigation.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
											
										 
											2021-01-14 04:08:48 -08:00
										 |  |  | 							rootItem.setupUnits() | 
					
						
							| 
									
										
										
										
											2020-01-15 19:42:16 +01:00
										 |  |  | 						} | 
					
						
							| 
									
										
										
										
											2018-09-22 18:01:45 -07:00
										 |  |  | 					} | 
					
						
							| 
									
										
										
										
											2021-01-15 11:50:12 -08:00
										 |  |  | 					TemplateButton { | 
					
						
							|  |  |  | 						text: qsTr("very large") | 
					
						
							|  |  |  | 						Layout.fillWidth: true | 
					
						
							|  |  |  | 						fontSize: subsurfaceTheme.regularPointSize / subsurfaceTheme.currentScale * 1.3 | 
					
						
							|  |  |  | 						enabled: subsurfaceTheme.currentScale !== 1.3 | 
					
						
							|  |  |  | 						onClicked: { | 
					
						
							|  |  |  | 							subsurfaceTheme.currentScale = 1.3 | 
					
						
							|  |  |  | 							rootItem.setupUnits() | 
					
						
							|  |  |  | 						} | 
					
						
							|  |  |  | 					} | 
					
						
							| 
									
										
										
										
											2018-09-22 18:01:45 -07:00
										 |  |  | 				} | 
					
						
							|  |  |  | 			} | 
					
						
							| 
									
										
										
										
											2017-06-23 18:08:47 -07:00
										 |  |  | 		} | 
					
						
							| 
									
										
										
										
											2020-01-15 19:46:48 +01:00
										 |  |  | 		TemplateSection { | 
					
						
							|  |  |  | 			id: sectionUnits | 
					
						
							|  |  |  | 			title: qsTr("Units") | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 			width: parent.width | 
					
						
							|  |  |  | 			RowLayout { | 
					
						
							| 
									
										
										
										
											2020-01-22 20:20:14 +01:00
										 |  |  | 				visible: sectionUnits.isExpanded | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 				width: parent.width | 
					
						
							| 
									
										
										
										
											2020-01-22 18:35:20 +01:00
										 |  |  | 				TemplateRadioButton { | 
					
						
							|  |  |  | 					text: qsTr("Metric") | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							| 
									
										
										
										
											2020-01-22 18:35:20 +01:00
										 |  |  | 					checked: (Backend.unit_system === Enums.METRIC) | 
					
						
							|  |  |  | 					onClicked: { | 
					
						
							|  |  |  | 						Backend.unit_system = Enums.METRIC | 
					
						
							|  |  |  | 						manager.changesNeedSaving() | 
					
						
							|  |  |  | 						manager.refreshDiveList() | 
					
						
							|  |  |  | 					} | 
					
						
							| 
									
										
										
										
											2020-01-15 19:46:48 +01:00
										 |  |  | 				} | 
					
						
							| 
									
										
										
										
											2020-01-22 18:35:20 +01:00
										 |  |  | 				TemplateRadioButton { | 
					
						
							|  |  |  | 					text: qsTr("Imperial") | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							| 
									
										
										
										
											2020-01-22 18:35:20 +01:00
										 |  |  | 					checked:  (Backend.unit_system === Enums.IMPERIAL) | 
					
						
							| 
									
										
										
										
											2020-01-15 19:46:48 +01:00
										 |  |  | 					onClicked: { | 
					
						
							| 
									
										
										
										
											2020-01-19 10:06:51 +01:00
										 |  |  | 						Backend.unit_system = Enums.IMPERIAL | 
					
						
							| 
									
										
										
										
											2020-01-15 19:46:48 +01:00
										 |  |  | 						manager.changesNeedSaving() | 
					
						
							|  |  |  | 						manager.refreshDiveList() | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							| 
									
										
										
										
											2020-01-22 18:35:20 +01:00
										 |  |  | 				TemplateRadioButton { | 
					
						
							|  |  |  | 					text: qsTr("Personalize") | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							| 
									
										
										
										
											2020-01-22 18:35:20 +01:00
										 |  |  | 					checked:  (Backend.unit_system === Enums.PERSONALIZE) | 
					
						
							| 
									
										
										
										
											2020-01-15 19:46:48 +01:00
										 |  |  | 					onClicked: { | 
					
						
							| 
									
										
										
										
											2020-01-22 18:35:20 +01:00
										 |  |  | 						Backend.unit_system = Enums.PERSONALIZE | 
					
						
							| 
									
										
										
										
											2020-01-15 19:46:48 +01:00
										 |  |  | 						manager.changesNeedSaving() | 
					
						
							|  |  |  | 						manager.refreshDiveList() | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 			} | 
					
						
							| 
									
										
										
										
											2020-01-22 20:20:14 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | 			GridLayout { | 
					
						
							|  |  |  | 				visible: sectionUnits.isExpanded | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 				width: parent.width - 2 * Kirigami.Units.gridUnit | 
					
						
							| 
									
										
										
										
											2020-01-22 20:20:14 +01:00
										 |  |  | 				enabled: (Backend.unit_system === Enums.PERSONALIZE) | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 				anchors.horizontalCenter: parent.horizontalCenter | 
					
						
							| 
									
										
										
										
											2020-01-22 20:20:14 +01:00
										 |  |  | 				columns: 3 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 				ButtonGroup { id: unitDepth } | 
					
						
							|  |  |  | 				ButtonGroup { id: unitPressure } | 
					
						
							|  |  |  | 				ButtonGroup { id: unitVolume } | 
					
						
							|  |  |  | 				ButtonGroup { id: unitTemperature } | 
					
						
							|  |  |  | 				ButtonGroup { id: unitWeight } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Depth") | 
					
						
							|  |  |  | 					font.bold: (Backend.unit_system === Enums.PERSONALIZE) | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateRadioButton { | 
					
						
							|  |  |  | 					text: qsTr("meters") | 
					
						
							|  |  |  | 					checked: (Backend.length === Enums.METERS) | 
					
						
							|  |  |  | 					ButtonGroup.group: unitDepth | 
					
						
							|  |  |  | 					onClicked: { | 
					
						
							|  |  |  | 						Backend.length = Enums.METERS | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateRadioButton { | 
					
						
							|  |  |  | 					text: qsTr("feet") | 
					
						
							|  |  |  | 					checked: (Backend.length === Enums.FEET) | 
					
						
							|  |  |  | 					ButtonGroup.group: unitDepth | 
					
						
							|  |  |  | 					onClicked: { | 
					
						
							|  |  |  | 						Backend.length = Enums.FEET | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Pressure") | 
					
						
							|  |  |  | 					font.bold: (Backend.unit_system === Enums.PERSONALIZE) | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateRadioButton { | 
					
						
							|  |  |  | 					text: qsTr("bar") | 
					
						
							|  |  |  | 					checked: (Backend.pressure === Enums.BAR) | 
					
						
							|  |  |  | 					ButtonGroup.group: unitPressure | 
					
						
							|  |  |  | 					onClicked: { | 
					
						
							|  |  |  | 						Backend.pressure = Enums.BAR | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateRadioButton { | 
					
						
							|  |  |  | 					text: qsTr("psi") | 
					
						
							|  |  |  | 					checked: (Backend.pressure === Enums.PSI) | 
					
						
							|  |  |  | 					ButtonGroup.group: unitPressure | 
					
						
							|  |  |  | 					onClicked: { | 
					
						
							|  |  |  | 						Backend.pressure = Enums.PSI | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Volume") | 
					
						
							|  |  |  | 					font.bold: (Backend.unit_system === Enums.PERSONALIZE) | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateRadioButton { | 
					
						
							|  |  |  | 					text: qsTr("liter") | 
					
						
							|  |  |  | 					checked: (Backend.volume === Enums.LITER) | 
					
						
							|  |  |  | 					ButtonGroup.group: unitVolume | 
					
						
							|  |  |  | 					onClicked: { | 
					
						
							|  |  |  | 						Backend.volume = Enums.LITER | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateRadioButton { | 
					
						
							|  |  |  | 					text: qsTr("cuft") | 
					
						
							|  |  |  | 					checked: (Backend.volume === Enums.CUFT) | 
					
						
							|  |  |  | 					ButtonGroup.group: unitVolume | 
					
						
							|  |  |  | 					onClicked: { | 
					
						
							|  |  |  | 						Backend.volume = Enums.CUFT | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Temperature") | 
					
						
							|  |  |  | 					font.bold: (Backend.unit_system === Enums.PERSONALIZE) | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateRadioButton { | 
					
						
							| 
									
										
										
										
											2020-02-09 14:36:58 +00:00
										 |  |  | 					text: qsTr("celsius") | 
					
						
							| 
									
										
										
										
											2020-01-22 20:20:14 +01:00
										 |  |  | 					checked: (Backend.temperature === Enums.CELSIUS) | 
					
						
							|  |  |  | 					ButtonGroup.group: unitTemperature | 
					
						
							|  |  |  | 					onClicked: { | 
					
						
							|  |  |  | 						Backend.temperature = Enums.CELSIUS | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateRadioButton { | 
					
						
							|  |  |  | 					text: qsTr("fahrenheit") | 
					
						
							|  |  |  | 					checked: (Backend.temperature === Enums.FAHRENHEIT) | 
					
						
							|  |  |  | 					ButtonGroup.group: unitTemperature | 
					
						
							|  |  |  | 					onClicked: { | 
					
						
							|  |  |  | 						Backend.temperature = Enums.FAHRENHEIT | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Weight") | 
					
						
							|  |  |  | 					font.bold: (Backend.unit_system === Enums.PERSONALIZE) | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateRadioButton { | 
					
						
							|  |  |  | 					text: qsTr("kg") | 
					
						
							|  |  |  | 					checked: (Backend.weight === Enums.KG) | 
					
						
							|  |  |  | 					ButtonGroup.group: unitWeight | 
					
						
							|  |  |  | 					onClicked: { | 
					
						
							|  |  |  | 						Backend.weight = Enums.KG | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateRadioButton { | 
					
						
							|  |  |  | 					text: qsTr("lbs") | 
					
						
							|  |  |  | 					checked: (Backend.weight === Enums.LBS) | 
					
						
							|  |  |  | 					ButtonGroup.group: unitWeight | 
					
						
							|  |  |  | 					onClicked: { | 
					
						
							|  |  |  | 						Backend.weight = Enums.LBS | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 			} | 
					
						
							| 
									
										
										
										
											2017-07-20 19:39:55 +02:00
										 |  |  | 		} | 
					
						
							| 
									
										
										
										
											2020-01-15 19:46:48 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-01-15 19:55:16 +01:00
										 |  |  | 		TemplateSection { | 
					
						
							|  |  |  | 			id: sectionAdvanced | 
					
						
							|  |  |  | 			title: qsTr("Advanced") | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 			width: parent.width | 
					
						
							| 
									
										
										
										
											2015-11-13 17:14:22 -08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-01-15 19:55:16 +01:00
										 |  |  | 			GridLayout { | 
					
						
							|  |  |  | 				visible: sectionAdvanced.isExpanded | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 				width: parent.width | 
					
						
							| 
									
										
										
										
											2020-01-15 19:55:16 +01:00
										 |  |  | 				columns: 2 | 
					
						
							| 
									
										
										
										
											2021-01-15 17:14:07 -08:00
										 |  |  | 
 | 
					
						
							|  |  |  | 				TemplateLine { | 
					
						
							|  |  |  | 					visible: sectionAdvanced.isExpanded | 
					
						
							|  |  |  | 					Layout.columnSpan: 2 | 
					
						
							|  |  |  | 				} | 
					
						
							| 
									
										
										
										
											2020-01-15 19:55:16 +01:00
										 |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Bluetooth") | 
					
						
							|  |  |  | 					font.pointSize: subsurfaceTheme.headingPointSize | 
					
						
							|  |  |  | 					font.weight: Font.Light | 
					
						
							|  |  |  | 					Layout.topMargin: Kirigami.Units.largeSpacing | 
					
						
							|  |  |  | 					Layout.bottomMargin: Kirigami.Units.largeSpacing / 2 | 
					
						
							|  |  |  | 					Layout.columnSpan: 2 | 
					
						
							| 
									
										
										
										
											2019-02-13 22:48:50 -08:00
										 |  |  | 				} | 
					
						
							| 
									
										
										
										
											2020-01-15 19:55:16 +01:00
										 |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Temporarily show all bluetooth devices \neven if not recognized as dive computers.\nPlease report DCs that need this setting") | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							| 
									
										
										
										
											2020-01-15 19:55:16 +01:00
										 |  |  | 				} | 
					
						
							|  |  |  | 				SsrfSwitch { | 
					
						
							|  |  |  | 					id: nonDCButton | 
					
						
							|  |  |  | 					checked: manager.showNonDiveComputers | 
					
						
							|  |  |  | 					onClicked: { | 
					
						
							|  |  |  | 						manager.showNonDiveComputers = checked | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							| 
									
										
										
										
											2021-01-15 17:14:07 -08:00
										 |  |  | 
 | 
					
						
							|  |  |  | 				TemplateLine { | 
					
						
							|  |  |  | 					visible: sectionAdvanced.isExpanded | 
					
						
							|  |  |  | 					Layout.columnSpan: 2 | 
					
						
							|  |  |  | 				} | 
					
						
							| 
									
										
										
										
											2020-02-08 11:09:30 -08:00
										 |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Display") | 
					
						
							|  |  |  | 					font.pointSize: subsurfaceTheme.headingPointSize | 
					
						
							|  |  |  | 					font.weight: Font.Light | 
					
						
							|  |  |  | 					Layout.topMargin: Kirigami.Units.largeSpacing | 
					
						
							|  |  |  | 					Layout.bottomMargin: Kirigami.Units.largeSpacing / 2 | 
					
						
							|  |  |  | 					Layout.columnSpan: 2 | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Show only one column in Portrait mode") | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							| 
									
										
										
										
											2020-02-08 11:09:30 -08:00
										 |  |  | 				} | 
					
						
							|  |  |  | 				SsrfSwitch { | 
					
						
							|  |  |  | 					id: singleColumnButton | 
					
						
							|  |  |  | 					checked: PrefDisplay.singleColumnPortrait | 
					
						
							|  |  |  | 					onClicked: { | 
					
						
							|  |  |  | 						PrefDisplay.singleColumnPortrait = checked | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							| 
									
										
										
										
											2021-01-15 17:14:07 -08:00
										 |  |  | 				TemplateLine { | 
					
						
							|  |  |  | 					visible: sectionAdvanced.isExpanded | 
					
						
							|  |  |  | 					Layout.columnSpan: 2 | 
					
						
							|  |  |  | 				} | 
					
						
							| 
									
										
										
										
											2021-01-10 15:50:17 -08:00
										 |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Profile deco ceiling") | 
					
						
							|  |  |  | 					font.pointSize: subsurfaceTheme.headingPointSize | 
					
						
							|  |  |  | 					font.weight: Font.Light | 
					
						
							|  |  |  | 					Layout.topMargin: Kirigami.Units.largeSpacing | 
					
						
							|  |  |  | 					Layout.bottomMargin: Kirigami.Units.largeSpacing / 2 | 
					
						
							|  |  |  | 					Layout.columnSpan: 2 | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Show DC reported ceiling") | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				SsrfSwitch { | 
					
						
							|  |  |  | 					checked: PrefTechnicalDetails.dcceiling | 
					
						
							|  |  |  | 					onClicked: { | 
					
						
							|  |  |  | 						PrefTechnicalDetails.dcceiling = checked | 
					
						
							| 
									
										
										
										
											2021-01-19 07:50:08 -08:00
										 |  |  | 						rootItem.settingsChanged() | 
					
						
							| 
									
										
										
										
											2021-01-10 15:50:17 -08:00
										 |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Show calculated ceiling") | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				SsrfSwitch { | 
					
						
							|  |  |  | 					checked: PrefTechnicalDetails.calcceiling | 
					
						
							|  |  |  | 					onClicked: { | 
					
						
							|  |  |  | 						PrefTechnicalDetails.calcceiling = checked | 
					
						
							|  |  |  | 						rootItem.settingsChanged() | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							| 
									
										
										
										
											2021-01-19 07:50:08 -08:00
										 |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("GFLow") | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateTextField { | 
					
						
							|  |  |  | 					id: gfLow | 
					
						
							| 
									
										
										
										
											2021-01-15 17:14:07 -08:00
										 |  |  | 					Layout.preferredWidth: Kirigami.Units.gridUnit * 2 | 
					
						
							| 
									
										
										
										
											2021-01-19 07:50:08 -08:00
										 |  |  | 					text: PrefTechnicalDetails.gflow | 
					
						
							|  |  |  | 					inputMask: "99" | 
					
						
							|  |  |  | 					onEditingFinished: { | 
					
						
							|  |  |  | 						PrefTechnicalDetails.gflow = gfLow.text | 
					
						
							|  |  |  | 						rootItem.settingsChanged() | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("GFHigh") | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateTextField { | 
					
						
							|  |  |  | 					id: gfHigh | 
					
						
							| 
									
										
										
										
											2021-01-15 17:14:07 -08:00
										 |  |  | 					Layout.preferredWidth: Kirigami.Units.gridUnit * 2 | 
					
						
							| 
									
										
										
										
											2021-01-19 07:50:08 -08:00
										 |  |  | 					text: PrefTechnicalDetails.gfhigh | 
					
						
							|  |  |  | 					inputMask: "99" | 
					
						
							|  |  |  | 					onEditingFinished: { | 
					
						
							|  |  |  | 						PrefTechnicalDetails.gfhigh = gfHigh.text | 
					
						
							|  |  |  | 						rootItem.settingsChanged() | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 				} | 
					
						
							| 
									
										
										
										
											2021-01-15 17:14:07 -08:00
										 |  |  | 				TemplateLine { | 
					
						
							|  |  |  | 					visible: sectionAdvanced.isExpanded | 
					
						
							|  |  |  | 					Layout.columnSpan: 2 | 
					
						
							|  |  |  | 				} | 
					
						
							| 
									
										
										
										
											2020-01-15 19:55:16 +01:00
										 |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Developer") | 
					
						
							|  |  |  | 					font.pointSize: subsurfaceTheme.headingPointSize | 
					
						
							|  |  |  | 					font.weight: Font.Light | 
					
						
							|  |  |  | 					Layout.topMargin: Kirigami.Units.largeSpacing | 
					
						
							|  |  |  | 					Layout.bottomMargin: Kirigami.Units.largeSpacing / 2 | 
					
						
							|  |  |  | 					Layout.columnSpan: 2 | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				TemplateLabel { | 
					
						
							|  |  |  | 					text: qsTr("Display Developer menu") | 
					
						
							| 
									
										
										
										
											2020-03-20 22:54:32 -07:00
										 |  |  | 					Layout.fillWidth: true | 
					
						
							| 
									
										
										
										
											2020-01-15 19:55:16 +01:00
										 |  |  | 				} | 
					
						
							|  |  |  | 				SsrfSwitch { | 
					
						
							|  |  |  | 					id: developerButton | 
					
						
							|  |  |  | 					checked: PrefDisplay.show_developer | 
					
						
							|  |  |  | 					onClicked: { | 
					
						
							|  |  |  | 						PrefDisplay.show_developer = checked | 
					
						
							|  |  |  | 					} | 
					
						
							| 
									
										
										
										
											2017-08-03 15:30:32 -07:00
										 |  |  | 				} | 
					
						
							| 
									
										
										
										
											2017-07-19 16:35:46 +02:00
										 |  |  | 			} | 
					
						
							|  |  |  | 		} | 
					
						
							| 
									
										
										
										
											2017-07-09 18:47:18 -07:00
										 |  |  | 	} | 
					
						
							| 
									
										
										
										
											2015-07-10 10:48:28 +03:00
										 |  |  | } |