1 /*
2  * This file Copyright (C) 2010-2015 Mnemosyne LLC
3  *
4  * It may be used under the GNU GPL versions 2 or 3
5  * or any future license endorsed by Mnemosyne LLC.
6  *
7  */
8 
9 #include "TrackerModel.h"
10 #include "TrackerModelFilter.h"
11 
TrackerModelFilter(QObject * parent)12 TrackerModelFilter::TrackerModelFilter(QObject* parent) :
13     QSortFilterProxyModel(parent),
14     myShowBackups(false)
15 {
16 }
17 
setShowBackupTrackers(bool b)18 void TrackerModelFilter::setShowBackupTrackers(bool b)
19 {
20     myShowBackups = b;
21     invalidateFilter();
22 }
23 
filterAcceptsRow(int sourceRow,QModelIndex const & sourceParent) const24 bool TrackerModelFilter::filterAcceptsRow(int sourceRow, QModelIndex const& sourceParent) const
25 {
26     QModelIndex index = sourceModel()->index(sourceRow, 0, sourceParent);
27     TrackerInfo const trackerInfo = index.data(TrackerModel::TrackerRole).value<TrackerInfo>();
28     return myShowBackups || !trackerInfo.st.isBackup;
29 }
30