* @author Janne Änäkkälä <janne.anakkala@fudeco.com>
* @author Tiina Kivilinna-Korhola <tiina.kivilinna-korhola@fudeco.com>
* @author Olavi Pulkkinen <olavi.pulkkinen@fudeco.com>
+ * @author Rikhard Kuutti <rikhard.kuutti@fudeco.com>
+ * @author Kai Rasilainen <kai.rasilainen@fudeco.com>
* @copyright (c) 2010 Speed Freak team
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*/
#include <QBuffer>
#include <QByteArray>
#include <QDebug>
-//#include "resultdialog.h"
+#include <qdatetime.h>
+#include "resultdialog.h"
//#include "measuredialog.h"
+#include "welcomedialog.h"
#include "loginwindow.h"
#include "registration.h"
#include "xmlwriter.h"
#include "stringlistmodel.h"
#include "measures.h"
#include "accelerometer.h"
+#include "categorylist.h"
+#include "httpclient.h"
+#include "routedialog.h"
+#include "calculate.h"
+#include "gpsdata.h"
+#include <maemo5location.h>
namespace Ui {
class CarMainWindow;
public:
CarMainWindow(QWidget *parent = 0);
~CarMainWindow();
+ Registration *myRegistration; //Check if this should be public or private
+ LoginWindow *myLogin;
+ GPSData *gpsData;
- void setComboBoxStartTabUnits(QStringList units); //Start-tab view
+ void setComboBoxStartTabUnits(QStringList units); //Start-tab view
void setListViewStartTabAccelerationCategories(QStringList numbers); //Start-tab view
- void setListViewTopList(QString category); //Top-tab view
- void setCategoryCompoBox(); //Top-tab
+ void setLabelInfoToUser(QString infoText);
protected:
void changeEvent(QEvent *e);
private:
Ui::CarMainWindow *ui;
- //ResultDialog *result;
+ ResultDialog *result;
//MeasureDialog *measure;
- XmlReader *xmlreader;
- XmlWriter *xmlwriter;
- QNetworkAccessManager* manager;
- LoginWindow *myLogin;
- Registration *myRegistration;
- //void initCategoryCompoBox(); //
- void initComboBoxStartTabUnits(); //Start-tab view
- void initListViewStartTabAccelerationCategories(); //Start-tab view
-
- void initializeMeasures();
+ WelcomeDialog *welcomeDialog;
+ CategoryList *myCategorylist;
+ HttpClient *myHttpClient;
+ RouteDialog *myRoute;
+ Maemo5Location *location;
+ //void initCategoryCompoBox();
+ void initComboBoxStartTabUnits(); //Start-tab view
+ void initListViewStartTabAccelerationCategories(); //Start-tab view
+ void setListViewTopList(QString category, int size); //Top-tab view
+ void resetAccelerometerMeasurements();
+ void calibrateAccelerometer();
+ void setTimeAxisGapAndShowResult(double pTime);
private:
- QStringList accelerationCategoriesStartTab; //Start-tab view
- QStringList units; //Start-tab view
- QStringList categories; //Top-tab view
+ QStringList accelerationCategoriesStartTab; //Start-tab view
+ QStringList units; //Start-tab view
+ QString recentCategory;
QTimer *timer;
Accelerometer *accelerometer;
double speed;
Measures *measures;
+ QModelIndex choice;
+ int choiceInt;
+ QStringList catList;
+
+ Calculate *calculate;
+
+ bool reverseAccelerationFlag;
+ bool vehicleStartedMoving;
+ bool isNewRun;
+ bool isSetup;
+
+ double stopTime;
+ double accelerationStartThreshold;
+ double currentAcceleration;
+ double currentTime;
+ double previousTime;
+ double firstAcceleration;
+
+ QTimer *accelerometerTimer;
+ QTime stopWatch;
+
+ QString currentAccelerationString;
+ QString currentSpeed;
+ QString distanceTraveled;
+ QString horsepower;
+ QString totalTime;
+
+ QDateTime *gpsTime;
+ QTimer *gpsTimer;
+ double gpsSpeedNow; //Route-tab view
+ double gpsSpeedPrevious;//Route-tab view
+ double gpsAcceleration; //Route-tab view
+ double timeFromGps; //Route-tab view
+ double gpsSpeed; //Route-tab view
+ int gpsUpdateTime; //Route-tab view
+
+ int counterForSaveResults;
+
signals:
-void speedAchieved();
-void userNameChanged();
+ void speedAchieved();
+ void userNameChanged();
private slots:
+ void gpsTimerTimeout(); //Route-tab view
+ void on_startRecPushButton_clicked(); //Route-tab view
+ void on_pushButtonShowResultDialog_clicked();
+ void on_gpsOnCheckBox_stateChanged(int GPSState); //Route-tab view
+ void gpsStatus(); //Route-tab view
+ void on_drawRoutePushButton_clicked();
void on_pushButtonSendResult_clicked();
void on_pushButtonMeasureTabAbort_clicked();
void on_manualStartButton_clicked();
void on_setUserPushButton_clicked();
void on_registratePushButton_clicked();
- void on_loginLogoutButton_clicked();
- void on_comboBoxTopCategory_activated(QString );
- //void on_pushButton_clicked();
- void networkResponse(QNetworkReply*);
- void on_comboBoxTopCategory_currentIndexChanged(QString category); //Top-tab view
- void on_listViewStartTabAccelerationCategories_clicked(QModelIndex index); //Start-tab view
- void updateComboBoxStartTabUnits(QString unit); //Start-tab view
+ void on_comboBoxTopCategory_currentIndexChanged(QString category); //Top-tab view
+ void on_listViewStartTabAccelerationCategories_clicked(QModelIndex index); //Start-tab view
+ void updateComboBoxStartTabUnits(QString unit); //Start-tab view
void openResultView();
- void on_buttonTopRefresh_clicked(); //Top-tab view: button
- void on_autoStartButton_clicked(); //Start-tab view: button
- void registrate();
- void sendXml();
- void requestTopList();
- void ackOfResult(QNetworkReply* reply);
- void ackOfRegistration(QNetworkReply* reply);
- void errorFromServer(QNetworkReply* reply);
-
+ void on_buttonTopRefresh_clicked(); //Top-tab view: button
+ void on_autoStartButton_clicked(); //Start-tab view: button
void after_timeout();
void updateUserName();
+ void regUserToServer();
+ void userLogin();
+ void readAccelerometerData();
+ void handleCheckPoint(double totalTime, double currentSpeed);
+ void setCategoryCompoBox(); //Top-tab
+ void showTop10();
+
};
#endif // CARMAINWINDOW_H