summaryrefslogtreecommitdiff
path: root/src/pluginlist.cpp
diff options
context:
space:
mode:
authorLostDragonist <lost.dragonist@gmail.com>2018-08-16 13:55:32 -0500
committerLostDragonist <lost.dragonist@gmail.com>2018-08-16 13:58:44 -0500
commit43b2df9077db98475af6ab613cf7eaf301f84879 (patch)
treef38dc6548664e986dfd2cfb3149e5a19da6fcac2 /src/pluginlist.cpp
parent79b2e52a58d711df53a125b1e3f510b2c2ebf8ff (diff)
Add "enable/disable selected" to plugin list context menu
Diffstat (limited to 'src/pluginlist.cpp')
-rw-r--r--src/pluginlist.cpp41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/pluginlist.cpp b/src/pluginlist.cpp
index 323cd98f..18e40a6e 100644
--- a/src/pluginlist.cpp
+++ b/src/pluginlist.cpp
@@ -289,6 +289,47 @@ void PluginList::enableESP(const QString &name, bool enable)
}
}
+void PluginList::enableSelected(const QItemSelectionModel *selectionModel)
+{
+ if (selectionModel->hasSelection()){
+ bool dirty = false;
+ for (auto row : selectionModel->selectedRows(COL_PRIORITY)) {
+ int rowPriority = row.data().toInt();
+ for (int i = 0; i < m_ESPs.size(); i++) {
+ if (m_ESPs[i].m_Priority == rowPriority) {
+ if (!m_ESPs[i].m_Enabled) {
+ m_ESPs[i].m_Enabled = true;
+ dirty = true;
+ }
+
+ break;
+ }
+ }
+ }
+ if (dirty) emit writePluginsList();
+ }
+}
+
+void PluginList::disableSelected(const QItemSelectionModel *selectionModel)
+{
+ if (selectionModel->hasSelection()){
+ bool dirty = false;
+ for (auto row : selectionModel->selectedRows(COL_PRIORITY)) {
+ int rowPriority = row.data().toInt();
+ for (int i = 0; i < m_ESPs.size(); i++) {
+ if (m_ESPs[i].m_Priority == rowPriority) {
+ if (!m_ESPs[i].m_ForceEnabled && m_ESPs[i].m_Enabled) {
+ m_ESPs[i].m_Enabled = false;
+ dirty = true;
+ }
+ break;
+ }
+ }
+ }
+ if (dirty) emit writePluginsList();
+ }
+}
+
void PluginList::enableAll()
{