summaryrefslogtreecommitdiffstats
path: root/app/BtnGuidance.qml
diff options
context:
space:
mode:
authorScott Murray <scott.murray@konsulko.com>2019-07-24 12:09:40 -0400
committerScott Murray <scott.murray@konsulko.com>2019-07-24 12:09:40 -0400
commit1f875de1d513c733550401ee40fa289fb2acb57e (patch)
tree9e6764cd4de63021285435e956f260b295cdbd7b /app/BtnGuidance.qml
parent33258140525123d6a38900811c2df3e14f4e8337 (diff)
Initial import from github
Import from http://github.com/YoshitoMomiyama/aglqtnavigation.git as of commit a6930c2, with the following minor changes: - .gitignore tweaked to remove itself - .gitreview updated Bug-AGL: SPEC-2667 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I91fed0f6349bf1952e41132058929b70a2b0fe5b
Diffstat (limited to 'app/BtnGuidance.qml')
-rw-r--r--app/BtnGuidance.qml129
1 files changed, 129 insertions, 0 deletions
diff --git a/app/BtnGuidance.qml b/app/BtnGuidance.qml
new file mode 100644
index 0000000..37f3598
--- /dev/null
+++ b/app/BtnGuidance.qml
@@ -0,0 +1,129 @@
+import QtQuick 2.0
+import QtQuick.Controls 1.5
+import QtLocation 5.9
+import QtPositioning 5.6
+
+Item {
+ id: btn_guidance
+
+ // 0: idle
+ // 1: routing
+ // 2: on guide
+ property int sts_guide: 0
+
+ onSts_guideChanged: {
+ console.log("onSts_guideChanged")
+ switch(btn_guidance.sts_guide){
+ case 0:
+ positionTimer.stop();
+ break
+ case 1:
+ break
+ case 2:
+ positionTimer.start();
+ break
+ default:
+ break
+ }
+ }
+
+ function startGuidance() {
+ btn_present_position.state = "Flowing"
+ btn_guidance.sts_guide = 2
+ btn_guidance.state = "onGuide"
+ }
+
+ function discardWaypoints(startFromCurrentPosition) {
+ if (startFromCurrentPosition === undefined) startFromCurrentPosition = false
+ map.initDestination(startFromCurrentPosition)
+
+ if(btn_guidance.sts_guide != 0){
+ map.qmlSignalStopDemo()
+ }
+
+ if(map.center !== map.currentpostion){
+ btn_present_position.state = "Optional"
+ }
+
+ btn_guidance.sts_guide = 0
+ btn_guidance.state = "Idle"
+ }
+
+ Timer {
+ id: positionTimer
+ interval: fileOperation.getUpdateInterval();
+ running: false;
+ repeat: true
+ onTriggered: map.updatePositon()
+ }
+
+ Button {
+ id: discard
+ width: 100
+ height: 100
+
+ visible: false
+
+ onClicked: discardWaypoints()
+
+ Image {
+ id: discard_image
+ width: 92
+ height: 92
+ anchors.verticalCenter: parent.verticalCenter
+ anchors.horizontalCenter: parent.horizontalCenter
+ source: "images/200px-Black_close_x.svg.png"
+ }
+ }
+
+ Button {
+ id: guidance
+ width: 100
+ height: 100
+
+ visible: false
+
+ onClicked: { startGuidance() }
+
+ Image {
+ id: guidance_image
+ width: 92
+ height: 92
+ anchors.verticalCenter: parent.verticalCenter
+ anchors.horizontalCenter: parent.horizontalCenter
+ source: "images/MUTCD_RS-113.svg"
+ }
+
+ }
+ states: [
+ State {
+ name: "Idle"
+ PropertyChanges { target: discard; visible: false }
+ PropertyChanges { target: guidance; visible: false }
+ PropertyChanges { target: guidance; x: 0 }
+ PropertyChanges { target: progress_next_cross; state: "invisible" }
+ PropertyChanges { target: img_destination_direction; state: "invisible" }
+ },
+ State {
+ name: "Routing"
+ PropertyChanges { target: discard; visible: true }
+ PropertyChanges { target: guidance; visible: true }
+ PropertyChanges { target: guidance; x: -150 }
+ PropertyChanges { target: progress_next_cross; state: "invisible" }
+ PropertyChanges { target: img_destination_direction; state: "invisible" }
+ },
+ State {
+ name: "onGuide"
+ PropertyChanges { target: discard; visible: true }
+ PropertyChanges { target: guidance; visible: false }
+ PropertyChanges { target: guidance; x: 0 }
+ PropertyChanges { target: progress_next_cross; state: "visible" }
+ PropertyChanges { target: img_destination_direction; state: "0" }
+ }
+ ]
+
+ transitions: Transition {
+ NumberAnimation { properties: "x"; easing.type: Easing.InOutQuad }
+ NumberAnimation { properties: "visible"; easing.type: Easing.InOutQuad }
+ }
+}