Merge branch 'master' into cookies_refactored
[situare] / src / ui / mainwindow.h
index 67bb598..05c98eb 100644 (file)
@@ -27,6 +27,7 @@
 #include <QtGui/QMainWindow>
 #include <QUrl>
 
+#include "networkcookiejar.h"
 #include "panelsidebar.h"
 
 class QGraphicsScene;
@@ -137,6 +138,12 @@ public slots:
     void loginFailed();
 
     /**
+    * @brief Slot to intercept signal when login with cookies is requested
+    *
+    */
+    void loginUsingCookies();
+
+    /**
     * @brief Public slot, which open settings dialog
     */
     void openSettingsDialog();
@@ -177,6 +184,12 @@ private:
     void buildFriendListPanel();
 
     /**
+    * @brief Build login dialog and connect slots
+    *
+    */
+    void buildLoginDialog();
+
+    /**
       * @brief Build manual location setting cross hair and connect slots
       */
     void buildManualLocationCrosshair();
@@ -197,11 +210,30 @@ private:
     void buildUserInfoPanel();
 
     /**
+    * @brief Build webview and connect slots
+    *
+    */
+    void buildWebView();
+
+    /**
       * @brief Build zoom button panel and connect slots
       */
     void buildZoomButtonPanel();
 
     /**
+    * @brief Clears cookie jar
+    *
+    */
+    void clearCookieJar();
+
+    /**
+    * @brief connect/disconnect webview signals
+    *
+    * @param connectSignals true = connect, false = disconnect
+    */
+    void connectWebViewSignals(bool connectSignals);
+
+    /**
     * @brief Private method to create the Menu items
     */
     void createMenus();
@@ -251,6 +283,12 @@ private slots:
     void gpsTimeout();
 
     /**
+    * @brief Slot to load cookies from settings
+    *
+    */
+    void loadCookies();
+
+    /**
     * @brief Slot to intercept signal when webview has finished loading webpage
     *
     * @param done Status of the loading
@@ -258,6 +296,12 @@ private slots:
     void loadDone(bool done);
 
     /**
+    * @brief Slot to save cookies to settings
+    *
+    */
+    void saveCookies();
+
+    /**
     * @brief Set correnct view port size to datamembers
     *
     * @param width Width of the viewport
@@ -446,13 +490,12 @@ private:
     QString m_email;                        ///< Placeholder for email
     QString m_password;                     ///< Placeholder for password
 
-    QUrl m_loginUrl;                        ///< Placeholder for login page url
-
     QWebView *m_webView;                    ///< Shows facebook login page
 
     FriendListPanel *m_friendsListPanel;    ///< Instance of friends list panel
     LoginDialog *m_loginDialog;             ///< Login dialog
     MapView *m_mapView;                     ///< Instance of the map view
+    NetworkCookieJar *m_cookieJar;          ///< Placeholder for QNetworkCookies
     PanelSideBar *m_userPanelSidebar;       ///< User panel side bar
     PanelSideBar *m_friendsListPanelSidebar;///< Friends panel side bar
     UserInfoPanel *m_userPanel;             ///< Instance of the user information panel