787eb634b79d8e638259109c5125394eb0163adb
[ptas] / zouba / src / ui.h
1 #ifndef UI_H
2 #define UI_H
3
4 #include <QObject>
5
6 class QMainWindow;
7 class QWidget;
8 class QTableWidget;
9 class QButtonGroup;
10 class MessageTable;
11 class QHBoxLayout;
12 class QVBoxLayout;
13 class QMenu;
14 class QAction;
15 class Location;
16
17 class Ui : public QObject
18 {
19   Q_OBJECT
20
21 public:
22   Ui();
23   ~Ui();
24   void setupUi( QMainWindow *mainWindow );
25
26   enum {
27     HomeButtonId=0,
28     WorkButtonId=1
29   };
30
31   enum {
32     ScreenWidth=800,
33     ScreenHeight=480
34   };
35   enum {
36    ButtonWidth=300,
37    ButtonHeight=70
38   };
39
40
41   QWidget *centralWidget;
42   QButtonGroup *destinationButtons;
43   QTableWidget *routeTable;
44   static MessageTable *messageTable;
45   QHBoxLayout *mainLayout;
46   QVBoxLayout *buttonLayout;
47   QMenu       *menu;
48   QAction     *hideMessagesAction;
49   QAction     *showMessagesAction;
50   QAction     *useFakeGpsAction;
51   QAction     *useLiveGpsAction;
52
53 Q_SIGNALS:
54   void homeAddressChanged( QString address );
55   void workAddressChanged( QString address );
56   void fakeGpsPressed( Location * );
57   void liveGpsPressed();
58
59 private Q_SLOTS:
60   void setHomeAddress();
61   void setWorkAddress();
62   void hideMessages();
63   void showMessages();
64   void useFakeGps();
65   void useLiveGps();
66
67 private:
68   void setAddress( const QString &label );
69 };
70 #endif //UI_H