Changed back to Menu-type views, as per given input on UI
[situare] / src / ui / mainwindow.h
1 /*
2     Situare - A location system for Facebook
3     Copyright (C) 2010  Ixonos Plc. Authors:
4
5        Henri Lampela - henri.lampela@ixonos.com
6        Kaj Wallin - kaj.wallin@ixonos.com
7
8     Situare is free software; you can redistribute it and/or
9     modify it under the terms of the GNU General Public License
10     version 2 as published by the Free Software Foundation.
11
12     Situare is distributed in the hope that it will be useful,
13     but WITHOUT ANY WARRANTY; without even the implied warranty of
14     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15     GNU General Public License for more details.
16
17     You should have received a copy of the GNU General Public License
18     along with Situare; if not, write to the Free Software
19     Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301,
20     USA.
21  */
22
23
24 #ifndef MAINWINDOW_H
25 #define MAINWINDOW_H
26
27 #include <QtGui/QMainWindow>
28 #include <QWidget>
29
30 class QMenu;
31 class QAction;
32 class QTabBar;
33 class QLabel;
34 class QStackedWidget;
35
36 /**
37 * @Main Window Class
38 *
39 * @class MainWindow mainwindow.h "src/ui/mainwindow.h"
40 */
41 class MainWindow : public QMainWindow
42 {
43     Q_OBJECT
44
45 public:
46     MainWindow(QWidget *parent = 0);
47     ~MainWindow();
48
49     /**
50     * @brief Private method to create List and Map views as a stacked widget
51     *
52     * @fn createViews
53     */
54     void createViews();
55
56     /**
57     * @brief Private method to create the Menu items
58     *
59     * @fn createMenus
60     */
61     void createMenus();
62     QMenu *viewMenu;
63
64     /**
65     * @brief Action item for changing view to List View
66     *
67     * @var toListViewAct
68     */
69     QAction *toListViewAct;
70     /**
71     * @brief Action item for changing view to Map View
72     *
73     * @var toMapViewAct
74     */
75     QAction *toMapViewAct;
76
77     /**
78     * @brief Widget Stack object for the List and Map Views
79     *
80     * @var situareViews
81     */
82     QStackedWidget *situareViews;
83
84     /**
85     * @brief DUMMY LABEL, REMOVE WHEN BOTH VIEWS ARE COMPLETE
86     *
87     * @var infoLabel
88     * @todo REMOVE THIS
89     */
90     QLabel *infoLabel;
91
92 public slots:
93     /**
94     * @brief Private slot, which initiates toListViewAct action
95     *
96     * @fn toListView
97     */
98     void toListView();
99     /**
100     * @brief Private slots, which initiates toMapViewAct action
101     *
102     * @fn toMapView
103     */
104     void toMapView();
105 };
106
107 #endif // MAINWINDOW_H