1 #include "taskfiltermodel.h"
4 #include <QSortFilterProxyModel>
6 #include "branchitem.h"
8 extern TaskModel *taskModel;
10 void TaskFilterModel::setFilter (bool b)
15 void TaskFilterModel::setMapFilter (const QString &s)
20 void TaskFilterModel::setFilterNew (bool b)
25 void TaskFilterModel::setFilterFlags (bool b)
29 bool TaskFilterModel::filterAcceptsRow(int sourceRow,
30 const QModelIndex &sourceParent) const
32 QModelIndex ix = sourceModel()->index(sourceRow, 0, sourceParent);
35 QString mapname = taskModel->getTask(ix)->getMapName();
36 if (mapname.isEmpty()) mapname = "justSomePseudoMapNameForFiltering";
37 if ( !mapFilter.isEmpty() && mapname != mapFilter )
41 if (filterNew && taskModel->getTask(ix)->getAwake() != Task::Morning)
44 // Filter active tasks
45 if (useFilter && ((taskModel->getTask(ix)->getDaysSleep() > 0) || (taskModel->getTask(ix)->getStatus() == Task::Finished) ) )
48 // Filter flags // FIXME-1 currently only "arrow-up"
49 if (filterFlags && !taskModel->getTask(ix)->getBranch()->hasActiveStandardFlag("arrow-up") )