diff options
author | Petr Mrázek <peterix@gmail.com> | 2013-09-18 00:08:42 +0200 |
---|---|---|
committer | Petr Mrázek <peterix@gmail.com> | 2013-09-18 00:08:42 +0200 |
commit | 930b07afd4229e952d0cd47ca62cd94235499a0c (patch) | |
tree | 34cd74c3652da4b3ad0fd008faa2ab67adb4901f /logic/EnabledItemFilter.cpp | |
parent | 5cd3420c46e0b54f1479ddf720a8c9131c460a5e (diff) | |
parent | b979d0ce5da515793a02802a6421ef607a498323 (diff) | |
download | PrismLauncher-930b07afd4229e952d0cd47ca62cd94235499a0c.tar.gz PrismLauncher-930b07afd4229e952d0cd47ca62cd94235499a0c.tar.bz2 PrismLauncher-930b07afd4229e952d0cd47ca62cd94235499a0c.zip |
Merge branch 'feature_library_model' into develop
Diffstat (limited to 'logic/EnabledItemFilter.cpp')
-rw-r--r-- | logic/EnabledItemFilter.cpp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/logic/EnabledItemFilter.cpp b/logic/EnabledItemFilter.cpp new file mode 100644 index 00000000..6ecd0271 --- /dev/null +++ b/logic/EnabledItemFilter.cpp @@ -0,0 +1,30 @@ +#include "EnabledItemFilter.h" + +EnabledItemFilter::EnabledItemFilter(QObject* parent) + :QSortFilterProxyModel(parent) +{ + +} + +void EnabledItemFilter::setActive(bool active) +{ + m_active = active; + invalidateFilter(); +} + +bool EnabledItemFilter::filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const +{ + if(!m_active) + return true; + QModelIndex index = sourceModel()->index(sourceRow, 0, sourceParent); + if(sourceModel()->flags(index) & Qt::ItemIsEnabled) + { + return true; + } + return false; +} + +bool EnabledItemFilter::lessThan(const QModelIndex& left, const QModelIndex& right) const +{ + return QSortFilterProxyModel::lessThan(left, right); +} |