]> git.sven.stormbind.net Git - sven/vym.git/blob - taskeditor.h
da3583650958f2ca0731a37a43c9194593770c87
[sven/vym.git] / taskeditor.h
1 #ifndef TASKEDITOR_H 
2 #define TASKEDITOR_H
3
4 #include <QWidget>
5 #include <QTableView>
6
7 #include "taskfiltermodel.h"
8
9 class BranchItem;
10 class QTableView;
11 class Task;
12 class TaskModel;
13 class QSortFilterProxyModel;
14
15 class TaskEditor : public QWidget
16 {
17     Q_OBJECT
18
19 public:
20     TaskEditor (QWidget *parent=NULL);
21     ~TaskEditor ();
22     void setMapName (const QString &);
23     bool isUsedFilterMap ();
24     void setFilterMap  ();
25     bool isUsedFilterActive ();
26     void setFilterActive ();
27     void setFilterNew ();
28     void setFilterFlags ();
29     bool select (Task *task);
30     void clearSelection ();
31     void showSelection ();
32     void contextMenuEvent ( QContextMenuEvent * e );
33
34 public slots:
35     void sort();
36
37 private slots:
38     void selectionChanged (const QItemSelection & selected, const QItemSelection & );
39     void toggleFilterMap ();
40     void toggleFilterActive ();
41     void toggleFilterNew ();
42     void toggleFilterFlags ();
43
44 private:
45     QTableView *view;
46     TaskFilterModel *filterActiveModel;
47     QString currentMapName;
48     QAction *actionToggleFilterMap;
49     QAction *actionToggleFilterActive;
50     QAction *actionToggleFilterNew;
51     QAction *actionToggleFilterFlags;
52     bool blockExternalSelect;
53 };
54
55 #endif
56