File indexing completed on 2024-05-12 16:27:18
0001 /* 0002 SPDX-FileCopyrightText: 2023-2024 Laurent Montel <montel.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #include "explorepermissionswidgetfilterproxymodel.h" 0008 #include "config-ruqola.h" 0009 #include "model/permissionsmodel.h" 0010 0011 #if HAVE_TEXT_UTILS 0012 #include <TextUtils/ConvertText> 0013 #endif 0014 0015 ExplorePermissionsWidgetFilterProxyModel::ExplorePermissionsWidgetFilterProxyModel(QObject *parent) 0016 : SortFilterProxyModelBase{parent} 0017 { 0018 } 0019 0020 ExplorePermissionsWidgetFilterProxyModel::~ExplorePermissionsWidgetFilterProxyModel() = default; 0021 0022 bool ExplorePermissionsWidgetFilterProxyModel::filterAcceptsRow(int source_row, const QModelIndex &source_parent) const 0023 { 0024 if (mFilterString.isEmpty()) { 0025 return true; 0026 } 0027 auto match = [&](int role) { 0028 const QModelIndex modelIndex = sourceModel()->index(source_row, role, source_parent); 0029 return modelIndex.data(0).toString().contains(mFilterString, Qt::CaseInsensitive); 0030 }; 0031 if (match(PermissionsModel::RolesStrRole) || match(PermissionsModel::IdentifierRole)) { 0032 return true; 0033 } 0034 return false; 0035 } 0036 0037 #include "moc_explorepermissionswidgetfilterproxymodel.cpp"