Integrated registration & login dialogs to UI
[speedfreak] / Client / carmainwindow.h
1 #ifndef CARMAINWINDOW_H
2 #define CARMAINWINDOW_H
3
4 /**
5   *This class
6   *@author Toni Jussila
7   *@version 0.0.1
8   */
9
10 #include <QMainWindow>
11 #include <QModelIndex>
12 #include <QStringList>
13 #include <QNetworkAccessManager>
14 #include "resultdialog.h"
15 #include "measuredialog.h"
16 #include "loginwindow.h"
17 #include "registration.h"
18
19 namespace Ui {
20     class CarMainWindow;
21 }
22
23 class CarMainWindow : public QMainWindow {
24     Q_OBJECT
25 public:
26     CarMainWindow(QWidget *parent = 0);
27     ~CarMainWindow();
28
29     void setUnitCompoBox(QStringList units);
30     void setSpeedListView(QStringList numbers);
31     void setCategoryCompoBox(QStringList categories);
32
33 protected:
34     void changeEvent(QEvent *e);
35
36 private:
37     Ui::CarMainWindow *ui;
38     ResultDialog *result;
39     MeasureDialog *measure;
40
41     QNetworkAccessManager* manager;
42     LoginWindow *myLogin;
43     Registration *myRegistration;
44
45     void initUnitCompoBox();
46     void initSpeedListView();
47     void initCategoryCompoBox();
48
49 private:
50     QStringList numbers;
51     QStringList units;
52     QStringList categories;
53
54 private slots:
55     void on_registratePushButton_clicked();
56     void on_loginLogoutButton_clicked();
57     void on_comboBoxTopCategory_activated(QString );
58     void on_autoStartButton_clicked();
59     void on_listView_clicked(QModelIndex index);
60     void updateUnitCompoBox(QString unit);
61     void openResultView();
62
63     void on_pushButton_clicked();
64     void networkResponse(QNetworkReply*);
65 };
66
67 #endif // CARMAINWINDOW_H