From b7c05148ee0078a84e7e3d800ae4ff09fa5d0282 Mon Sep 17 00:00:00 2001 From: zheng_wenlong Date: Thu, 6 Jun 2019 16:08:33 +0900 Subject: add homescreen handler --- app/BtnGuidance.qml | 1 + app/main.cpp | 15 +++++++++++++++ app/navigation.qml | 25 +++++++++++++++++++++++-- 3 files changed, 39 insertions(+), 2 deletions(-) diff --git a/app/BtnGuidance.qml b/app/BtnGuidance.qml index df8102c..4860050 100644 --- a/app/BtnGuidance.qml +++ b/app/BtnGuidance.qml @@ -65,6 +65,7 @@ Item { btn_guidance.sts_guide = 0 btn_guidance.state = "Idle" + root.do_cancelguidance() } // Timer { diff --git a/app/main.cpp b/app/main.cpp index 798e621..f45df99 100644 --- a/app/main.cpp +++ b/app/main.cpp @@ -139,6 +139,21 @@ int main(int argc, char *argv[]) QQuickWindow *window = qobject_cast(root); qhsHandler->setQuickWindow(window); + /*Homescreen notify navigation start*/ + qhsHandler->set_event_handler(QLibHomeScreen::Event_StartNavigation, [root](json_object *object){ +// QMetaObject::invokeMethod(root,"vui_startguidance"); + + }); + qhsHandler->set_event_handler(QLibHomeScreen::Event_StopNavigation, [root](json_object *object){ + QMetaObject::invokeMethod(root,"vui_cancelguidance"); + + }); + qhsHandler->set_event_handler(QLibHomeScreen::Event_CancelDestination, [root](json_object *object){ + QMetaObject::invokeMethod(root,"vui_cancelguidance"); + + }); + /*Homescreen notify navigation end*/ + #else // for only libwindowmanager QGuiApplication app(argc, argv); app.setApplicationName("navigation"); diff --git a/app/navigation.qml b/app/navigation.qml index 262a1ff..e3df499 100755 --- a/app/navigation.qml +++ b/app/navigation.qml @@ -56,6 +56,7 @@ ApplicationWindow { property string verb_setdestpos: "navicore_setdestpos" property string verb_setdemorouteinfo: "navicore_setdemorouteinfo" property string verb_startguidance: "navicore_startguidance" + property string verb_cancelguidance: "navicore_cancelguidance" property string verb_setdestinationdirection: "navicore_setdestdir" property string event_setwaypoints: "naviapi/navicore_setwaypoints" property string event_pausesimulation: "naviapi/navicore_pausesimulation" @@ -97,7 +98,9 @@ ApplicationWindow { var latitude = message_json[2].data[0].latitude var longitude = message_json[2].data[0].longitude var startFromCurrentPos = message_json[2].data[0].startFromCurrentPosition - map.doSetWaypointsSlot(latitude,longitude,startFromCurrentPos); +// map.doSetWaypointsSlot(latitude,longitude,startFromCurrentPos); + map.addDestination(QtPositioning.coordinate(35.6585580781371,139.745503664017)) + vui_startguidance() } //Pause Simulation from poi app else if(message_json[2].event === event_pausesimulation){ @@ -243,6 +246,13 @@ ApplicationWindow { console.log("navi:do_startguidance = " + navigation_request_str) } + //cancel guidance + function do_cancelguidance() { + navigation_request_str = '[' + msgid_enu.call + ',"99999","' + api_str+'/'+verb_cancelguidance + '", {"cancelguidance":"' + true + '"} ]' + websocket.sendTextMessage (navigation_request_str) + console.log("navi:do_cancelguidance = " + navigation_request_str) + } + //set the destination direction during the demo function do_setdestinationdirection(direction) { navigation_request_str = '[' + msgid_enu.call + ',"99999","' + api_str+'/'+verb_setdestinationdirection + '", {"state":"'+direction+ '"} ]' @@ -250,6 +260,16 @@ ApplicationWindow { console.log("navi:do_setdestinationdirection = " + navigation_request_str) } + + function vui_startguidance(){ + btn_guidance.startGuidance() + console.log("vui_startguidance started") + } + function vui_cancelguidance(){ + btn_guidance.discardWaypoints() + console.log("vui_cancelguidance started") + } + Map{ id: map property int pathcounter : 0 @@ -692,7 +712,8 @@ ApplicationWindow { if (Math.abs(map.pressX - mouse.x ) < map.jitterThreshold && Math.abs(map.pressY - mouse.y ) < map.jitterThreshold) { // map.addDestination(lastCoordinate) - map.addDestination(QtPositioning.coordinate(35.6590297708,139.7456818931)) + map.addDestination(QtPositioning.coordinate(35.6585580781371,139.745503664017)) +// root.vui_startguidance() // btn_guidance.sts_guide = 2; } } -- cgit 1.2.3-korg