class QGraphicsScene;
class QLabel;
class QWebView;
+class QNetworkReply;
class FacebookAuthentication;
class FriendListPanel;
void automaticLocationUpdateEnabled(bool enabled);
/**
+ * @brief Builds information box with message.
+ *
+ * @param message Information message
+ * @param modal Modal = true, non-modal false
+ */
+ void buildInformationBox(const QString &message, bool modal=false);
+
+ /**
* @brief Clears cookie jar
*
*/
bool showEnableAutomaticUpdateLocationDialog();
/**
- * @brief Show Maemo information box with message.
- *
- * @param message Information message
- * @param modal Modal = true, non-modal false
- */
- void showMaemoInformationBox(const QString &message, bool modal=false);
-
- /**
* @brief Gets the username from member variable for saving purposes
*
* @return QString Username
* @brief Public slot to intercept signal when old cerdentials are invalid or credentials
* doesn't exist yet
*
- * @param url Login page url
*/
- void startLoginProcess(const QUrl &url);
+ void startLoginProcess();
/**
* @brief Toggle progress indicator.
void grabZoomKeys(bool grab);
/**
+ * @brief Queues dialog/information box
+ *
+ * @param dialog Dialog to be added into queue
+ */
+ void queueDialog(QDialog *dialog);
+
+ /**
* @brief Set own location crosshair visibility
*
* @param visible
*/
void setOwnLocationCrosshairVisibility(bool visible);
+ /**
+ * @brief Shows queued error information box
+ *
+ */
+ void showErrorInformationBox();
+
+ /**
+ * @brief Shows queued information box
+ *
+ * @fn showInformationBox
+ */
+ void showInformationBox();
+
private slots:
/**
+ * @brief Slot to intercept signal when dialog/information note is processed
+ *
+ * @param status Status of the dialog
+ */
+ void dialogFinished(int status);
+
+ /**
* @brief Slot for drawing the fullscreen toggle button
*
* @param size Size of the screen
void drawOwnLocationCrosshair(int width, int height);
/**
+ * @brief Slot to intercept signal when error dialog/information note is processed
+ *
+ * @param status Status of the dialog
+ */
+ void errorDialogFinished(int status);
+
+ /**
* @brief Slot for gps timeout.
*
* Called when request timeout occurs.
*/
void toggleFullScreen();
+ /**
+ * @brief Slot to intercept signal from webview's networkaccessmanager
+ *
+ * @param reply Network reply (contains errors)
+ */
+ void webViewRequestFinished(QNetworkReply* reply);
+
/*******************************************************************************
* SIGNALS
******************************************************************************/
void maxZoomLevelReached();
/**
+ * @brief Signal that informs that user's message/location failed to update on Situare server
+ * This signal is originally sended from SituareService with name error
+ * Signal is renamed on MainWindow
+ */
+ void messageSendingFailed(const QString &error);
+
+ /**
* @brief Forwarding signal from MapEngine to MapView
*/
void minZoomLevelReached();
/**
+ * @brief Signal that used to inform user that his message/location update tp Situare server
+ * was failed.
+ * This signal is originally sended from UserInfo
+ */
+ void notificateUpdateFailing(const QString &message);
+
+ /**
* @brief Signal for refreshing user data.
*
*/
void updateCredentials(const QUrl &url);
/**
+ * @brief Signals when updateLocation request finished successfully
+ *
+ */
+ void updateWasSuccessful();
+
+ /**
* @brief MapView has finished zooming
*/
void viewZoomFinished();
******************************************************************************/
private:
bool m_drawOwnLocationCrosshair; ///< Flag for making ownLocationCrosshair visible or not
+ bool m_errorShown; ///< Indicates if error dialog/note is shown
bool m_loggedIn; ///< Indicates login state
bool m_refresh; ///< Indicates when webpage is refreshed
QLabel *m_osmLicense; ///< Label for Open Street Map license
QLabel *m_ownLocationCrosshair; ///< Label that show ownLocationCrosshair
+ QList<QDialog *> m_error_queue; ///< QList type error dialog queue
+ QList<QDialog *> m_queue; ///< QList type dialog queue
+
QMenu *m_viewMenu; ///< Object that hold the view menu items
QString m_email; ///< Placeholder for email
ZoomButtonPanel *m_zoomButtonPanel; ///< Instance of zoom button panel
SettingsDialog *m_settingsDialog; ///< Settings dialog
+
};
#endif // MAINWINDOW_H