From c2c0f7c98d4b61314c679e0fed7fac914f4f1284 Mon Sep 17 00:00:00 2001 From: isanae <14251494+isanae@users.noreply.github.com> Date: Mon, 28 Dec 2020 05:44:51 -0500 Subject: added open in explorer in save game context menu --- src/savestab.cpp | 16 +++++++++++++++- src/savestab.h | 1 + 2 files changed, 16 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/savestab.cpp b/src/savestab.cpp index 31471740..e2c796b6 100644 --- a/src/savestab.cpp +++ b/src/savestab.cpp @@ -264,9 +264,10 @@ void SavesTab::onContextMenu(const QPoint& pos) } QString deleteMenuLabel = tr("Delete %n save(s)", "", selection->selectedIndexes().count()); - menu.addAction(deleteMenuLabel, [&]{ deleteSavegame(); }); + menu.addAction(tr("Open in Explorer..."), [&]{ openInExplorer(); }); + menu.exec(ui.list->viewport()->mapToGlobal(pos)); } @@ -294,3 +295,16 @@ void SavesTab::fixMods(SaveGameInfo::MissingAssets const &missingAssets) m_core.saveCurrentLists(); } } + +void SavesTab::openInExplorer() +{ + const SaveGameInfo* info = m_core.managedGame()->feature(); + + const auto sel = ui.list->selectionModel()->selectedIndexes(); + if (sel.empty()) { + return; + } + + auto& saveGame = m_SaveGames[sel[0].row()]; + shell::Explore(saveGame->getFilepath()); +} diff --git a/src/savestab.h b/src/savestab.h index 8d84e3c1..db82b816 100644 --- a/src/savestab.h +++ b/src/savestab.h @@ -58,6 +58,7 @@ private: void saveSelectionChanged(QListWidgetItem *newItem); void fixMods(SaveGameInfo::MissingAssets const &missingAssets); void refreshSavesIfOpen(); + void openInExplorer(); }; #endif // MODORGANIZER_SAVESTAB_INCLUDED -- cgit v1.3.1