mirror of
https://github.com/vcmi/vcmi.git
synced 2025-04-13 11:40:38 +02:00
Restored mod filter functionality in Launcher
This commit is contained in:
parent
41466238fc
commit
065a8d5fcf
@ -268,12 +268,33 @@ void CModFilterModel::setTypeFilter(ModFilterMask newFilterMask)
|
||||
invalidateFilter();
|
||||
}
|
||||
|
||||
bool CModFilterModel::filterMatchesCategory(const QModelIndex & source) const
|
||||
{
|
||||
QString modID =source.data(ModRoles::ModNameRole).toString();
|
||||
ModState mod = base->model->getMod(modID);
|
||||
|
||||
switch (filterMask)
|
||||
{
|
||||
case ModFilterMask::ALL:
|
||||
return true;
|
||||
case ModFilterMask::AVAILABLE:
|
||||
return !mod.isInstalled();
|
||||
case ModFilterMask::INSTALLED:
|
||||
return mod.isInstalled();
|
||||
case ModFilterMask::UPDATEABLE:
|
||||
return mod.isUpdateAvailable();
|
||||
case ModFilterMask::ENABLED:
|
||||
return mod.isInstalled() && mod.isEnabled();
|
||||
case ModFilterMask::DISABLED:
|
||||
return mod.isInstalled() && mod.isDisabled();
|
||||
}
|
||||
assert(0);
|
||||
return false;
|
||||
}
|
||||
|
||||
bool CModFilterModel::filterMatchesThis(const QModelIndex & source) const
|
||||
{
|
||||
//QString modID =source.data(ModRoles::ModNameRole).toString();
|
||||
//ModState mod = base->model->getMod(modID);
|
||||
return /*(mod.getModStatus() & filterMask) == filteredType &&*/
|
||||
QSortFilterProxyModel::filterAcceptsRow(source.row(), source.parent());
|
||||
return filterMatchesCategory(source) && QSortFilterProxyModel::filterAcceptsRow(source.row(), source.parent());
|
||||
}
|
||||
|
||||
bool CModFilterModel::filterAcceptsRow(int source_row, const QModelIndex & source_parent) const
|
||||
|
@ -93,6 +93,7 @@ class CModFilterModel : public QSortFilterProxyModel
|
||||
ModFilterMask filterMask;
|
||||
|
||||
bool filterMatchesThis(const QModelIndex & source) const;
|
||||
bool filterMatchesCategory(const QModelIndex & source) const;
|
||||
|
||||
bool filterAcceptsRow(int source_row, const QModelIndex & source_parent) const override;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user