~ubuntu-branches/ubuntu/saucy/muon/saucy-proposed

« back to all changes in this revision

Viewing changes to libmuon/resources/ResourcesProxyModel.cpp

  • Committer: Package Import Robot
  • Author(s): Jonathan Thomas
  • Date: 2012-12-06 15:15:04 UTC
  • mfrom: (1.4.17)
  • Revision ID: package-import@ubuntu.com-20121206151504-dglqm1q19bisu5nj
Tags: 1.9.65-0ubuntu1
New upstream alpha release

Show diffs side-by-side

added added

removed removed

Lines of Context:
30
30
ResourcesProxyModel::ResourcesProxyModel(QObject *parent)
31
31
    : QSortFilterProxyModel(parent)
32
32
    , m_sortByRelevancy(false)
33
 
    , m_filterActive(false)
34
33
    , m_filterBySearch(false)
35
34
    , m_filteredCategory(0)
36
35
    , m_stateFilter(AbstractResource::Broken)
82
81
 
83
82
void ResourcesProxyModel::setFiltersFromCategory(Category *category)
84
83
{
 
84
    if(category==m_filteredCategory)
 
85
        return;
 
86
 
85
87
    if(category) {
86
88
        m_andFilters = category->andFilters();
87
89
        m_orFilters = category->orFilters();
141
143
    if(!idx.isValid())
142
144
        return false;
143
145
 
144
 
    if (m_filterActive && !idx.data(ResourcesModel::ActiveRole).toBool())
145
 
        return false;
146
 
    
147
146
    for(QHash<int, QVariant>::const_iterator it=m_roleFilters.constBegin(), itEnd=m_roleFilters.constEnd(); it!=itEnd; ++it) {
148
147
        if(idx.data(it.key())!=it.value()) {
149
148
            return false;
267
266
 
268
267
void ResourcesProxyModel::setFilterActive(bool filter)
269
268
{
270
 
    m_filterActive = filter;
 
269
    if(!filter)
 
270
        m_roleFilters.insert(ResourcesModel::ActiveRole, true);
 
271
    else
 
272
        m_roleFilters.remove(ResourcesModel::ActiveRole);
271
273
}