class MapScale;
class MapScene;
class MapView;
+class Route;
class RoutingPanel;
class TabbedPanel;
class SettingsDialog;
class SceneCoordinate;
class SituareService;
+class TabbedPanel;
class User;
class UserInfoPanel;
class ZoomButtonPanel;
class Location;
/**
-* @brief Main Window Class
-*/
+ * @brief Main Window Class
+ */
class MainWindow : public QMainWindow
{
Q_OBJECT
/**
* @brief Destructor
- *
*/
~MainWindow();
*
* @param visible
*/
- void setOwnLocationCrosshairVisibility(bool visible);
+ void setCrosshairVisibility(bool visible);
/**
* @brief Sets username to member variable for login dialog
void setUsername(const QString &username);
/**
- * @brief Method to show panels
- */
- void showPanels();
-
- /**
* @brief Public slot to intercept signal when old cerdentials are invalid or credentials
* doesn't exist yet
- *
*/
void startLoginProcess();
private:
/**
- * @brief Build fullscreen toggle button and connect slots
+ * @brief Build manual location setting cross hair and connect slots
*/
- void buildFullScreenButton();
+ void buildCrosshair();
/**
* @brief Build friend list panel and connect slots
void buildFriendListPanel();
/**
- * @brief Build manual location setting cross hair and connect slots
+ * @brief Build fullscreen toggle button and connect slots
*/
- void buildManualLocationCrosshair();
+ void buildFullScreenButton();
/**
* @brief Build map and connect slots
void drawOsmLicense(const QSize &size);
/**
- * @brief Slot for drawing the own location crosshair
- *
- * @param size Size of the screen
- */
- void drawOwnLocationCrosshair(const QSize &size);
-
- /**
* @brief Slot to intercept signal when error dialog/information note is processed
*
* @param status Status of the dialog
void loadDone(bool done);
/**
+ * @brief Called when map center point horizontal shifting is changed
+ *
+ * @param shifting New shifting value
+ */
+ void mapCenterHorizontalShiftingChanged(int shifting);
+
+ /**
+ * @brief Move the crosshair
+ */
+ void moveCrosshair();
+
+ /**
* @brief Slot to save cookies to settings
*/
void saveCookies();
void settingsDialogAccepted();
/**
- * @brief Set correnct view port size to datamembers
- *
- * @param size Size of the screen
- */
- void setViewPortSize(const QSize &size);
-
- /**
* @brief Start location search (open search dialog)
*/
void startLocationSearch();
void cancelLoginProcess();
/**
+ * @brief Signal for centering to coordinates.
+ *
+ * @param coordinates geo coordinates to center to.
+ */
+ void centerToCoordinates(const GeoCoordinate &coordinates);
+
+ /**
* @brief View should be centered to new location
*
* @param coordinate Scene coordinates of the new center point
void centerToSceneCoordinates(const SceneCoordinate &coordinate);
/**
+ * @brief Emitted when route is cleared
+ */
+ void clearRoute();
+
+ /**
* @brief Signal when direction and distance from current map center point to current GPS
* location is changed
*
void fetchUsernameFromSettings();
/**
- * @brief Signal for finding user.
- *
- * @param coordinates user geo coordinates
- */
- void findUser(const GeoCoordinate &coordinates);
-
- /**
* @brief Signals when friend's profile image is ready
*
* @param user Friend
void gpsTriggered(bool enabled);
/**
- * @brief Signal for finding friend.
- *
- * @param coordinates friend's geo coordinates
- */
- void findFriend(const GeoCoordinate &coordinates);
-
- /**
* @brief Signal for friend location ready.
*
* @param friendsList
/**
* @brief Forwarding signal from MapView to MapEngine
*
- * @param coordinate
+ * @param coordinate New center point coordinate
*/
void mapViewScrolled(const SceneCoordinate &coordinate);
void reverseGeoReady(const QString &address);
/**
+ * @brief Emited when route is parsed and is ready for further processing
+ *
+ * @param route Route item containing parsed route details
+ */
+ void routeParsed(Route &route);
+
+ /**
* @brief Signal for routing to geo coordinates.
*
* @param coordinates destination geo coordinates
bool m_loggedIn; ///< Indicates login state
bool m_refresh; ///< Indicates when webpage is refreshed
+ int m_mapCenterHorizontalShifting; ///< Amount of map center point horizontal shifting
int m_progressIndicatorCount; ///< Indicates the number of progress indicator calls
QAction *m_gpsToggleAct; ///< Action to trigger gps toggle
QAction *m_loginAct; ///< Action to Login/Logout
QAction *m_toSettingsAct; ///< Action to trigger switch to settings dialog
- QAction *m_searchLocationAct; /// @todo this is temporary, remove when not needed!
+ QLabel *m_crosshair; ///< Label for center point crosshair
QLabel *m_osmLicense; ///< Label for Open Street Map license
- QLabel *m_ownLocationCrosshair; ///< Label that show ownLocationCrosshair
+ QList<int> m_situareTabsIndexes; ///< List of Situare tab indexes
QList<QDialog *> m_error_queue; ///< QList type error dialog queue
QList<QDialog *> m_queue; ///< QList type dialog queue
QMessageBox *m_automaticUpdateLocationDialog; ///< Automatic update location dialog
- QSize m_viewPortSize; ///< Size of the viewport
-
QString m_email; ///< Placeholder for email
QString m_password; ///< Placeholder for password