aboutsummaryrefslogtreecommitdiffstats
path: root/homescreen/qml/StatusArea.qml
diff options
context:
space:
mode:
Diffstat (limited to 'homescreen/qml/StatusArea.qml')
-rw-r--r--homescreen/qml/StatusArea.qml256
1 files changed, 150 insertions, 106 deletions
diff --git a/homescreen/qml/StatusArea.qml b/homescreen/qml/StatusArea.qml
index 3f2b280..bd81767 100644
--- a/homescreen/qml/StatusArea.qml
+++ b/homescreen/qml/StatusArea.qml
@@ -1,7 +1,6 @@
/*
* Copyright (C) 2016 The Qt Company Ltd.
* Copyright (C) 2016, 2017 Mentor Graphics Development (Deutschland) GmbH
- * Copyright (c) 2017, 2018 TOYOTA MOTOR CORPORATION
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -22,8 +21,8 @@ import HomeScreen 1.0
Item {
id: root
- width: 295
- height: 218
+ width: 700
+ height: 80
property date now: new Date
Timer {
@@ -31,19 +30,27 @@ Item {
onTriggered: root.now = new Date
}
+ Timer {
+ id:notificationTimer
+ interval: 3000
+ running: false
+ repeat: true
+ onTriggered: notificationItem.visible = false
+ }
+
Connections {
target: weather
onConditionChanged: {
var icon = ''
- if (condition.indexOf("clouds") != -1) {
+ if (condition.indexOf("clouds") !== -1) {
icon = "WeatherIcons_Cloudy-01.png"
- } else if (condition.indexOf("thunderstorm") != -1) {
+ } else if (condition.indexOf("thunderstorm") !== -1) {
icon = "WeatherIcons_Thunderstorm-01.png"
- } else if (condition.indexOf("snow") != -1) {
+ } else if (condition.indexOf("snow") !== -1) {
icon = "WeatherIcons_Snow-01.png"
- } else if (condition.indexOf("rain") != -1) {
+ } else if (condition.indexOf("rain") !== -1) {
icon = "WeatherIcons_Rain-01.png"
}
@@ -55,116 +62,153 @@ Item {
}
}
- RowLayout {
- anchors.fill: parent
- spacing: 0
- Item {
- Layout.fillWidth: true
- Layout.fillHeight: true
- Layout.preferredWidth: 295 - 76
- ColumnLayout {
- anchors.fill: parent
- anchors.margins: 40
- spacing: 0
- Text {
- Layout.fillWidth: true
- Layout.fillHeight: true
- text: Qt.formatDate(now, 'dddd').toUpperCase()
- font.family: 'Roboto'
- font.pixelSize: 13
- color: 'white'
- verticalAlignment: Text.AlignVCenter
-// Rectangle {
-// anchors.fill: parent
-// anchors.margins: 5
-// color: 'red'
-// border.color: 'blue'
-// border.width: 1
-// z: -1
-// }
+ RowLayout {
+ anchors.fill: parent
+ spacing: 0
+ RowLayout {
+ id: icons
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ Layout.preferredWidth: 120
+ spacing: -10
+
+ Image {
+ id: bt_icon
+ Layout.preferredWidth: 50
+ Layout.preferredHeight: 50
+ source: connStatus ? './images/Status/HMI_Status_Bluetooth_On-01.png' : './images/Status/HMI_Status_Bluetooth_Inactive-01.png'
+ fillMode: Image.PreserveAspectFit
+ property string deviceName: "none"
+ property bool connStatus: false
+ Connections {
+ target: bluetooth
+ onConnectionEvent: {
+ console.log("onConnectionEvent", data.Status)
+ if (data.Status === "connected") {
+ bt_icon.connStatus = true
+ } else if (data.Status === "disconnected") {
+ bt_icon.connStatus = false
+ }
+ }
+ onDeviceUpdateEvent: {
+ console.log("onConnectionEvent", data.Paired)
+ if (data.Paired === "True" && data.Connected === "True") {
+ bt_icon.deviceName = data.name
+ bt_icon.connStatus = true
+ } else {
+ if(bt_icon.deviceName === data.Name)
+ {
+ bt_icon.connStatus = false
+ }
+ }
+ }
+ }
}
- Text {
- Layout.fillWidth: true
- Layout.fillHeight: true
- text: Qt.formatTime(now, 'h:mm ap').toUpperCase()
- font.family: 'Roboto'
- font.pixelSize: 40
- color: 'white'
- horizontalAlignment: Text.AlignHCenter
- verticalAlignment: Text.AlignVCenter
+
+ Repeater {
+ model: StatusBarModel { objectName: "statusBar" }
+ delegate: Image {
+ Layout.preferredWidth: 50
+ Layout.preferredHeight: 50
+ source: model.modelData
+ fillMode: Image.PreserveAspectFit
+ }
}
- RowLayout {
- Layout.fillWidth: true
- Layout.fillHeight: true
- Layout.preferredHeight: 20
- Image {
- id: condition_item
- source: './images/Weather/WeatherIcons_Rain-01.png'
+ }
+ Item {
+ anchors.left: icons.right
+ Layout.fillHeight: true
+ width: 440
+ ColumnLayout {
+ anchors.fill: parent
+ anchors.margins: 17
+ spacing: 0
+ Text {
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ text: Qt.formatDate(now, 'dddd').toUpperCase()
+ font.family: 'Roboto'
+ font.pixelSize: 13
+ color: 'white'
+ horizontalAlignment: Text.AlignHCenter
+ verticalAlignment: Text.AlignVCenter
}
Text {
- id: temperature_item
- text: '64°F'
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ text: Qt.formatTime(now, 'h:mm ap').toUpperCase()
+ font.family: 'Roboto'
+ font.pixelSize: 38
color: 'white'
- font.family: 'Helvetica'
- font.pixelSize: 32
+ horizontalAlignment: Text.AlignHCenter
+ verticalAlignment: Text.AlignVCenter
}
}
}
- }
- ColumnLayout {
- id: icons
- Layout.fillWidth: true
- Layout.fillHeight: true
- Layout.preferredWidth: 76
- spacing: -10
-
- Image {
- id: bt_icon
- Layout.preferredWidth: 77
- Layout.preferredHeight: 73
- source: connStatus ? './images/Status/HMI_Status_Bluetooth_On-01.png' : './images/Status/HMI_Status_Bluetooth_Inactive-01.png'
- fillMode: Image.PreserveAspectFit
- property string deviceName: "none"
- property bool connStatus: false
- Connections {
- target: bluetooth
-
- //{"event":"Bluetooth-Manager\/connection","data":{"Status":"connected","Address":"88:BD:45:EC:3A:E6"},"jtype":"afb-event"}
- //{"event":"Bluetooth-Manager\/connection","data":{"Status":"disconnected","Address":"88:BD:45:EC:3A:E6"},"jtype":"afb-event"}
- onConnectionEvent: {
- // console.log("bluetooth connection is:", data.Status)
- // console.log("onConnectionEvent bt_icon.deviceName:",bt_icon.deviceName, "bt_icon.connStatus:", bt_icon.connStatus)
- if (data.Status == "connected"){
- bt_icon.connStatus = true
- } else if (data.Status == "disconnected"){
- bt_icon.connStatus = false
- }
- }
- //{"event":"Bluetooth-Manager\/device_updated","data":{"Address":"88:BD:45:EC:3A:E6","Name":"SG02","Paired":"True","Connected":"True","AVPConnected":"True","Metadata":{"Title":"","Artist":"","Status":"stop}
- onDeviceUpdatedEvent: {
- // console.log("bluetooth onDeviceUpdatedEvent date is:", data.Name, "Paired: ", data.Paired, "Connected: ", data.Connected)
- // console.log("onDeviceUpdatedEvent bt_icon.deviceName:",bt_icon.deviceName, "bt_icon.connStatus:", bt_icon.connStatus)
- if ( data.Paired == "True" && data.Connected == "True" ){
- bt_icon.deviceName = data.Name
- bt_icon.connStatus = true
- } else {
- if(bt_icon.deviceName == data.Name)
- {
- bt_icon.connStatus = false
- }
- }
- }
+ RowLayout {
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ Layout.preferredHeight: 20
+
+ Image {
+ id: condition_item
+ source: './images/Weather/WeatherIcons_Rain-01.png'
+ }
+ Text {
+ id: temperature_item
+ text: '64°F'
+ color: 'white'
+ font.family: 'Helvetica'
+ font.pixelSize: 32
}
}
- Repeater {
- model: StatusBarModel { objectName: "statusBar" }
- delegate: Image {
- Layout.preferredWidth: 77
- Layout.preferredHeight: 73
- source: model.modelData
- fillMode: Image.PreserveAspectFit
+ }
+
+ Item {
+ id: notificationItem
+ x: 0
+ y: 0
+ z: 1
+ width: parent.width
+ height: 100
+ opacity: 0.8
+ visible: false
+
+ Rectangle {
+ width: parent.width
+ height: parent.height
+ anchors.fill: parent
+ color: "gray"
+ Image {
+ id: notificationIcon
+ width: 70
+ height: 70
+ anchors.left: parent.left
+ anchors.leftMargin: 20
+ anchors.verticalCenter: parent.verticalCenter
+ source: ""
+ }
+
+ Text {
+ id: notificationtext
+ font.pixelSize: 25
+ anchors.left: notificationIcon.right
+ anchors.leftMargin: 5
+ anchors.verticalCenter: parent.verticalCenter
+ color: "white"
+ text: qsTr("")
}
}
}
- }
+
+ Connections {
+ target: homescreenHandler
+ onNotification: {
+ notificationIcon.source = './images/Shortcut/%1.svg'.arg(id)
+ notificationtext.text = text
+ notificationItem.visible = true
+ notificationTimer.restart()
+ }
+ }
+
}