summaryrefslogtreecommitdiffstats
path: root/src/settingsui/timedate/TimeDate.qml
diff options
context:
space:
mode:
Diffstat (limited to 'src/settingsui/timedate/TimeDate.qml')
-rw-r--r--src/settingsui/timedate/TimeDate.qml192
1 files changed, 75 insertions, 117 deletions
diff --git a/src/settingsui/timedate/TimeDate.qml b/src/settingsui/timedate/TimeDate.qml
index b38ed54..c8719e2 100644
--- a/src/settingsui/timedate/TimeDate.qml
+++ b/src/settingsui/timedate/TimeDate.qml
@@ -37,23 +37,23 @@ Item {
id: root
property int margin: root.width * 0.05
- Flickable {
- id: flickable
- anchors.fill: parent
- contentHeight: height
- contentWidth: width
+ Column {
+ spacing: pluginMain.spacing
+ anchors.top: parent.top
+
+ // Display current date
+ Text {
+ color: "white"
+ text: qsTr("Current date")
+ font.pixelSize: pluginMain.subTitleFontSize
+ font.family: appFont
+ }
Text {
id: dateText
- width: parent.width
- height: parent.height * 0.055
- anchors.top: parent.top
- anchors.left: parent.left
- anchors.topMargin: parent.height * 0.05
- fontSizeMode: Text.Fit
- minimumPixelSize: 1
- font.pixelSize: height
+ leftPadding: pluginMain.margin
color: "white"
+ font.pixelSize: pluginMain.valueFontSize
font.family: appFont
Timer {
id: dateTimer
@@ -63,139 +63,97 @@ Item {
triggeredOnStart: true
onTriggered: {
var date = new Date();
- var hours = date.getHours();
- var minutes = date.getMinutes();
- var seconds = date.getSeconds();
- var days = date.getDate();
-
dateText.text = date.toLocaleString(Qt.locale(LocaleManager.locale), Locale.LongFormat)
}
- function nth(days) {
- if (days > 3 && days < 21) return 'th';
- switch (days % 10) {
- case 1: return "st";
- case 2: return "nd";
- case 3: return "rd";
- default: return "th";
- }
- }
}
}
+ // Set date automatically / manually
Text {
- id: setDateText
- width: parent.width * 0.3
- height: parent.height * 0.05
- anchors.left: parent.left
- anchors.top: dateText.bottom
- anchors.topMargin: parent.height * 0.05
- fontSizeMode: Text.Fit
- minimumPixelSize: 1
- font.pixelSize: height
color: "white"
text: qsTr("Set Date & Time")
+ font.pixelSize: pluginMain.subTitleFontSize
font.family: appFont
- font.styleName: "Bold"
}
- QtButton {
- id: automaticButton
- anchors.top: setDateText.bottom
- anchors.topMargin: parent.height * 0.025
- anchors.left: parent.left
- height: parent.height * 0.075
- fillColor: "#41cd52"
- borderColor: "transparent"
- text: qsTr("AUTOMATICALLY")
- onClicked: TimeManager.ntp = true
- }
-
- QtButton {
- id: manualButton
- anchors.top: setDateText.bottom
- anchors.topMargin: parent.height * 0.025
- anchors.left: automaticButton.right
- anchors.leftMargin: root.margin * 0.5
- height: parent.height * 0.075
- fillColor: "#9d9faa"
- borderColor: "transparent"
- text: qsTr("MANUALLY")
- onClicked: settingsLoader.source = "qrc:/timedate/ManualTime.qml"
+ Row {
+ spacing: pluginMain.spacing
+ leftPadding: pluginMain.margin
+ QtButton {
+ id: automaticButton
+ height: pluginMain.buttonHeight
+ fillColor: "#41cd52"
+ borderColor: "transparent"
+ text: qsTr("AUTOMATICALLY")
+ onClicked: TimeManager.ntp = true
+ }
+ QtButton {
+ id: manualButton
+ height: pluginMain.buttonHeight
+ fillColor: "#9d9faa"
+ borderColor: "transparent"
+ text: qsTr("MANUALLY")
+ onClicked: {
+ settingsLoader.source = "qrc:/timedate/ManualTime.qml"
+ }
+ }
}
+ // Select timezone
Text {
id: timeZoneText
- width: parent.width * 0.3
- height: parent.height * 0.05
- anchors.left: parent.left
- anchors.top: automaticButton.bottom
- anchors.topMargin: parent.height * 0.05
- fontSizeMode: Text.Fit
- minimumPixelSize: 1
- font.pixelSize: height
color: "white"
text: qsTr("Time Zone")
+ font.pixelSize: pluginMain.subTitleFontSize
font.family: appFont
- font.styleName: "Bold"
}
- CustomComboBox {
- id: timeZoneBox
- width: automaticButton.width + manualButton.width + root.margin * 0.5
- height: parent.height * 0.075
- anchors.top: timeZoneText.bottom
- anchors.topMargin: parent.height * 0.025
- anchors.left: parent.left
- textRole: "id"
- model: TimezonesFilter
- delegate: ItemDelegate {
- id: timeZoneDelegate
- background: Item {}
- width: timeZoneBox.width
- contentItem: Text {
- anchors.left: timeZoneDelegate.left
- anchors.leftMargin: timeZoneDelegate.width * 0.05
- text: modelData["id"]
- font.family: appFont
- font.styleName: timeZoneBox.currentIndex == index ? "Bold" : "Regular"
- color: timeZoneBox.currentIndex == index ? "#41cd52" : "white"
- elide: Text.ElideRight
- verticalAlignment: Text.AlignVCenter
+ Row {
+ leftPadding: pluginMain.margin
+ height: 500
+ CustomComboBox {
+ id: timeZoneBox
+ width: automaticButton.width + manualButton.width + pluginMain.spacing
+ height: pluginMain.buttonHeight
+ textRole: "id"
+ popup.height: 200
+ model: TimezonesFilter
+ delegate: ItemDelegate {
+ id: timeZoneDelegate
+ height: timeZoneBox.height
+ contentItem: Text {
+ anchors.left: timeZoneDelegate.left
+ anchors.leftMargin: pluginMain.margin
+ text: modelData["id"]
+ color: timeZoneBox.currentIndex == index ? "#41cd52" : "white"
+ elide: Text.ElideRight
+ verticalAlignment: Text.AlignVCenter
+ font.pixelSize: pluginMain.valueFontSize
+ font.family: appFont
+ font.styleName: "Regular"
+ }
}
- }
-
- Component.onCompleted: {
- var n = TimezonesFilter.indexForTimezone(TimeManager.timeZone)
- timeZoneBox.currentIndex = n
- }
- Connections {
- target: TimezonesFilter.sourceModel
- onReady: {
+ Component.onCompleted: {
var n = TimezonesFilter.indexForTimezone(TimeManager.timeZone)
timeZoneBox.currentIndex = n
}
- }
+ Connections {
+ target: TimezonesFilter.sourceModel
+ onReady: {
+ var n = TimezonesFilter.indexForTimezone(TimeManager.timeZone)
+ timeZoneBox.currentIndex = n
+ }
+ }
- onCurrentIndexChanged: {
- var val = TimezonesFilter.itemFromRow(currentIndex);
- if (val !== "") {
- TimeManager.timeZone = val
+ onCurrentIndexChanged: {
+ var val = TimezonesFilter.itemFromRow(currentIndex);
+ if (val !== "") {
+ TimeManager.timeZone = val
+ }
}
}
- contentItem: Text {
- anchors.left: timeZoneBox.left
- anchors.leftMargin: timeZoneBox.width * 0.05
- verticalAlignment: Text.AlignVCenter
- font.pixelSize: timeZoneBox.height * 0.35
- font.bold: true
- color: "white"
- elide: Text.ElideRight
- text: timeZoneBox.displayText
- font.family: appFont
- font.styleName: "SemiBold"
- }
}
Component {