GH-988 add ability to toggle mods with keyboard

This commit is contained in:
Petr Mrázek
2019-08-04 21:13:50 +02:00
parent d31184f9a4
commit 4ed67413ac
4 changed files with 32 additions and 7 deletions

View File

@ -312,15 +312,29 @@ bool ModFolderModel::enableMods(const QModelIndexList& indexes, bool enable)
if(indexes.isEmpty())
return true;
for (auto i: indexes)
for (auto index: indexes)
{
Mod &m = mods[i.row()];
Mod &m = mods[index.row()];
m.enable(enable);
emit dataChanged(i, i);
emit dataChanged(index, index);
}
return true;
}
void ModFolderModel::toggleEnabled(const QModelIndex& index)
{
if(interaction_disabled) {
return;
}
if(!index.isValid()) {
return;
}
Mod &m = mods[index.row()];
m.enable(!m.enabled());
emit dataChanged(index, index);
}
bool ModFolderModel::deleteMods(const QModelIndexList& indexes)
{
if(interaction_disabled) {

View File

@ -82,7 +82,7 @@ public:
}
/// Reloads the mod list and returns true if the list changed.
virtual bool update();
bool update();
/**
* Adds the given mod to the list at the given index - if the list supports custom ordering
@ -90,15 +90,16 @@ public:
bool installMod(const QString& filename);
/// Deletes all the selected mods
virtual bool deleteMods(const QModelIndexList &indexes);
bool deleteMods(const QModelIndexList &indexes);
/// Enable or disable listed mods
virtual bool enableMods(const QModelIndexList &indexes, bool enable = true);
bool enableMods(const QModelIndexList &indexes, bool enable = true);
void toggleEnabled(const QModelIndex &index);
void startWatching();
void stopWatching();
virtual bool isValid();
bool isValid();
QDir dir()
{