X-Git-Url: https://git.sven.stormbind.net/?a=blobdiff_plain;f=src%2Ftaskeditor.h;fp=src%2Ftaskeditor.h;h=109634d4f87c89bbc9aae42ff5acaead27a4774d;hb=d483bd8e6523c23c6f1d8908a2e0611c2bc9ff4f;hp=0000000000000000000000000000000000000000;hpb=7dfa3fe589d1722d49681f42cdb0bf1e6efb5223;p=sven%2Fvym.git diff --git a/src/taskeditor.h b/src/taskeditor.h new file mode 100644 index 0000000..109634d --- /dev/null +++ b/src/taskeditor.h @@ -0,0 +1,67 @@ +#ifndef TASKEDITOR_H +#define TASKEDITOR_H + +#include +#include + +#include "taskfiltermodel.h" + +class BranchItem; +class QTableView; +class Task; +class TaskModel; +class QSortFilterProxyModel; + +class TaskEditor : public QWidget { + Q_OBJECT + + public: + TaskEditor(QWidget *parent = NULL); + ~TaskEditor(); + void setMapName(const QString &); + bool isUsedFilterMap(); + void setFilterMap(); + bool isUsedFilterActive(); + void setFilterActive(); + void setFilterNew(); + void setFilterBlocker(); + void setFilterFlags1(); + void setFilterFlags2(); + void setFilterFlags3(); + void updateFilters(); + bool taskVisible(Task*); + void resetDeltaPrio(); + bool select(Task *task); + void clearSelection(); + void showSelection(); + void contextMenuEvent(QContextMenuEvent *e); + + private slots: + void cellClicked(QModelIndex); + void headerContextMenu(); + void updateColumnLayout(); + void selectionChanged(const QItemSelection &selected, + const QItemSelection &); + void toggleFilterMap(); + void toggleFilterActive(); + void toggleFilterNew(); + void toggleFilterBlocker(); + void toggleFilterFlags1(); + void toggleFilterFlags2(); + void toggleFilterFlags3(); + + private: + QTableView *view; + TaskFilterModel *filterActiveModel; + QString currentMapName; + QAction *actionToggleFilterMap; + QAction *actionToggleFilterActive; + QAction *actionToggleFilterNew; + QAction *actionToggleFilterBlocker; + QAction *actionToggleFilterFlags1; + QAction *actionToggleFilterFlags2; + QAction *actionToggleFilterFlags3; + bool blockExternalSelect; +}; + +#endif