Rework to raise navigation app and improve behavior
[apps/poi-yelp.git] / MainApp.h
index 7d0b9de..909f68c 100644 (file)
--- a/MainApp.h
+++ b/MainApp.h
@@ -14,6 +14,8 @@
 
 #include <navigation.h>
 
+typedef void (*NavWinRaiseCb_t)(void);
+
 class MainApp: public QMainWindow
 {
     Q_OBJECT
@@ -25,6 +27,7 @@ class MainApp: public QMainWindow
         int StartMonitoringUserInput();
         void setInfoScreen(bool val) { isInfoScreen = val; }
         void setKeyboard(bool val)   { isKeyboard = val; }
+        void setNavWindowRaiseCallback(NavWinRaiseCb_t val) { navWinRaiseCb = val; }
 
     private:
         void ParseJsonBusinessList(const char* buf, std::vector<Business> & Output);
@@ -33,12 +36,13 @@ class MainApp: public QMainWindow
         void SetDestination(int index = 0);
         bool IsCoordinatesConsistent(Business & business);
         void DisplayLineEdit(bool display = true);
-        void DisplayResultList(bool display, bool RefreshDisplay = true);
-        void DisplayInformation(bool display, bool RefreshDisplay = true);
+        void DisplayResultList(bool display);
+        void DisplayInformation(bool display);
         int FillResultList(std::vector<Business> & list, int focusIndex = 0);
         void SetWayPoints(uint32_t myRoute);
 
         Navigation *naviapi;
+        NavWinRaiseCb_t navWinRaiseCb = nullptr;
         QNetworkAccessManager networkManager;
         QPushButton searchBtn;
         QLineEdit lineEdit;
@@ -81,6 +85,10 @@ class MainApp: public QMainWindow
         void UpdateAglSurfaces();
         void goClicked();
         void cancelClicked();
+        void callNavWinRaiseCb() {
+            if(navWinRaiseCb)
+                navWinRaiseCb();
+       }
 
         void positionGot();