summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorisanae <14251494+isanae@users.noreply.github.com>2019-05-31 13:09:17 -0400
committerisanae <14251494+isanae@users.noreply.github.com>2019-05-31 13:09:17 -0400
commit0da1c2591f0a67560b241515d996c39598da6735 (patch)
treece0453055fd097435b7c82364ed034da7ff16445 /src
parent0f6f0c23943116ea668ab035055cb8b0e4a6574e (diff)
don't show open menu item if the files are from an archive
Diffstat (limited to 'src')
-rw-r--r--src/modinfodialog.cpp13
-rw-r--r--src/modinfodialog.h2
2 files changed, 14 insertions, 1 deletions
diff --git a/src/modinfodialog.cpp b/src/modinfodialog.cpp
index e639dcc7..97507777 100644
--- a/src/modinfodialog.cpp
+++ b/src/modinfodialog.cpp
@@ -2000,6 +2000,12 @@ bool ModInfoDialog::canPreviewFile(bool isArchive, const QString& filename) cons
return m_PluginContainer->previewGenerator().previewSupported(ext);
}
+bool ModInfoDialog::canOpenFile(bool isArchive, const QString&) const
+{
+ // can open anything as long as it's not in an archive
+ return !isArchive;
+}
+
bool ModInfoDialog::canHideFile(bool isArchive, const QString& filename) const
{
if (isArchive) {
@@ -2040,6 +2046,11 @@ bool ModInfoDialog::canUnhideConflictItem(const QTreeWidgetItem* item) const
return canUnhideFile(conflictIsArchive(item), conflictFileName(item));
}
+bool ModInfoDialog::canOpenConflictItem(const QTreeWidgetItem* item) const
+{
+ return canOpenFile(conflictIsArchive(item), conflictFileName(item));
+}
+
bool ModInfoDialog::canPreviewConflictItem(const QTreeWidgetItem* item) const
{
return canPreviewFile(conflictIsArchive(item), conflictFileName(item));
@@ -2131,8 +2142,8 @@ ModInfoDialog::ConflictActions ModInfoDialog::createConflictMenuActions(
enableHide = canHideConflictItem(item);
enableUnhide = canUnhideConflictItem(item);
+ enableOpen = canOpenConflictItem(item);
enablePreview = canPreviewConflictItem(item);
- // open is always enabled
}
else {
// this is a multiple selection, don't show open/preview so users don't open
diff --git a/src/modinfodialog.h b/src/modinfodialog.h
index 59912127..35f87820 100644
--- a/src/modinfodialog.h
+++ b/src/modinfodialog.h
@@ -467,6 +467,7 @@ private:
bool canHideConflictItem(const QTreeWidgetItem* item) const;
bool canUnhideConflictItem(const QTreeWidgetItem* item) const;
+ bool canOpenConflictItem(const QTreeWidgetItem* item) const;
bool canPreviewConflictItem(const QTreeWidgetItem* item) const;
void changeFiletreeVisibility(bool visible);
@@ -477,6 +478,7 @@ private:
const QList<QTreeWidgetItem*>& items, bool visible);
bool canPreviewFile(bool isArchive, const QString& filename) const;
+ bool canOpenFile(bool isArchive, const QString& filename) const;
bool canHideFile(bool isArchive, const QString& filename) const;
bool canUnhideFile(bool isArchive, const QString& filename) const;