summaryrefslogtreecommitdiff
path: root/src/modinfodialogfiletree.cpp
diff options
context:
space:
mode:
authorisanae <14251494+isanae@users.noreply.github.com>2019-12-09 10:07:11 -0500
committerisanae <14251494+isanae@users.noreply.github.com>2019-12-09 10:07:11 -0500
commit2bc544509cb594df229055c7aac89151921f9861 (patch)
tree510483032c9b45b990534d53be01804b5fb4dc44 /src/modinfodialogfiletree.cpp
parent5521b12fb30c525b5d4b919e355266de9fb524ef (diff)
disable run hooked in filetree when mod is disabled
Diffstat (limited to 'src/modinfodialogfiletree.cpp')
-rw-r--r--src/modinfodialogfiletree.cpp17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/modinfodialogfiletree.cpp b/src/modinfodialogfiletree.cpp
index 607d2e5b..c49c767f 100644
--- a/src/modinfodialogfiletree.cpp
+++ b/src/modinfodialogfiletree.cpp
@@ -453,6 +453,21 @@ void FileTreeTab::onContextMenu(const QPoint &pos)
}
}
+ bool enableRunHooked = false;
+
+ if (enableRun || enableOpen) {
+ if (auto* p=core().currentProfile()) {
+ if (mod().canBeEnabled()) {
+ const auto index = ModInfo::getIndex(mod().name());
+ if (index == UINT_MAX) {
+ log::error("mod '{}' not found (filetree)", mod().name());
+ } else {
+ enableRunHooked = p->modEnabled(index);
+ }
+ }
+ }
+ }
+
if (enableRun) {
m_actions.open->setText(tr("&Execute"));
m_actions.runHooked->setText(tr("Execute with &VFS"));
@@ -481,7 +496,7 @@ void FileTreeTab::onContextMenu(const QPoint &pos)
}
}
- if (enableOpen || enableRun) {
+ if (enableRunHooked) {
menu.addAction(m_actions.runHooked);
}