implemented 'tab container' widget, which groups daynavigator with treeview
[toast/confclerk.git] / src / gui / tabcontainer.h
1 #ifndef TABCONTAINER_H
2 #define TABCONTAINER_H
3
4 #include <QWidget>
5 #include "ui_tabcontainer.h"
6
7 class TabContainer : public QWidget, Ui::TabContainer
8 {
9     Q_OBJECT
10 public:
11
12     // type of the container
13     // specifies the type of the data that treeView holds
14     enum Type
15     {
16         EContainerTypeNone = 0,
17         EContainerTypeDay,
18         EContainerTypeFavs,
19         EContainerTypeTracks,
20         EContainerTypeRooms,
21         EContainerTypeSearch,
22         EContainerTypeNow
23     };
24
25     TabContainer(QWidget *aParent = NULL);
26     ~TabContainer() {}
27     void setType(TabContainer::Type aType);
28
29 signals:
30     void eventHasChanged(int aEventId);
31
32 public slots:
33     void updateTreeViewModel(int aEventId);
34     void setDates(const QDate &aStart, const QDate &aEnd);
35
36 private slots:
37     void updateTreeView(const QDate &aDate);
38     void timerUpdateTreeView();
39     void itemClicked(const QModelIndex &aIndex);
40     void displayMap(const QModelIndex &aIndex);
41     void displayWarning(const QModelIndex &aIndex);
42
43 private:
44     TabContainer::Type mType;
45 };
46
47 #endif /* TABCONTAINER_H */
48