summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/mainwindow.cpp36
-rw-r--r--src/mainwindow.h5
2 files changed, 39 insertions, 2 deletions
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp
index bcc8fd06..5f337da3 100644
--- a/src/mainwindow.cpp
+++ b/src/mainwindow.cpp
@@ -2999,6 +2999,27 @@ void MainWindow::openInstanceFolder()
::ShellExecuteW(nullptr, L"explore", ToWString(m_OrganizerCore.settings().getBaseDirectory()).c_str(), nullptr, nullptr, SW_SHOWNORMAL);
}
+void MainWindow::openProfileFolder()
+{
+ ::ShellExecuteW(nullptr, L"explore", ToWString(m_OrganizerCore.currentProfile()->absolutePath()).c_str(), nullptr, nullptr, SW_SHOWNORMAL);
+}
+
+void MainWindow::openDownloadsFolder()
+{
+ ::ShellExecuteW(nullptr, L"explore", ToWString(m_OrganizerCore.settings().getDownloadDirectory()).c_str(), nullptr, nullptr, SW_SHOWNORMAL);
+}
+
+void MainWindow::openGameFolder()
+{
+ ::ShellExecuteW(nullptr, L"explore", ToWString(m_OrganizerCore.managedGame()->gameDirectory().absolutePath()).c_str(), nullptr, nullptr, SW_SHOWNORMAL);
+}
+
+void MainWindow::openMyGamesFolder()
+{
+ ::ShellExecuteW(nullptr, L"explore", ToWString(m_OrganizerCore.managedGame()->documentsDirectory().absolutePath()).c_str(), nullptr, nullptr, SW_SHOWNORMAL);
+}
+
+
void MainWindow::exportModListCSV()
{
SelectionDialog selection(tr("Choose what to export"));
@@ -3069,6 +3090,8 @@ QMenu *MainWindow::modListContextMenu()
menu->addAction(tr("Create empty mod"), this, SLOT(createEmptyMod_clicked()));
+ menu->addSeparator();
+
menu->addAction(tr("Enable all visible"), this, SLOT(enableVisibleMods()));
menu->addAction(tr("Disable all visible"), this, SLOT(disableVisibleMods()));
@@ -3078,7 +3101,18 @@ QMenu *MainWindow::modListContextMenu()
menu->addAction(tr("Export to csv..."), this, SLOT(exportModListCSV()));
+ menu->addSeparator();
+
menu->addAction(tr("Open Instance folder"), this, SLOT(openInstanceFolder()));
+
+ menu->addAction(tr("Open Profile folder"), this, SLOT(openProfileFolder()));
+
+ menu->addAction(tr("Open Downloads folder"), this, SLOT(openDownloadsFolder()));
+
+ menu->addAction(tr("Open Game folder"), this, SLOT(openGameFolder()));
+
+ menu->addAction(tr("Open MyGames folder"), this, SLOT(openMyGamesFolder()));
+
return menu;
}
@@ -3106,8 +3140,8 @@ void MainWindow::on_modList_customContextMenuRequested(const QPoint &pos)
menu->addAction(tr("Sync to Mods..."), &m_OrganizerCore, SLOT(syncOverwrite()));
menu->addAction(tr("Create Mod..."), this, SLOT(createModFromOverwrite()));
menu->addAction(tr("Clear Overwrite..."), this, SLOT(clearOverwrite()));
- menu->addAction(tr("Open in explorer"), this, SLOT(openExplorer_clicked()));
}
+ menu->addAction(tr("Open in explorer"), this, SLOT(openExplorer_clicked()));
} else if (std::find(flags.begin(), flags.end(), ModInfo::FLAG_BACKUP) != flags.end()) {
menu->addAction(tr("Restore Backup"), this, SLOT(restoreBackup_clicked()));
menu->addAction(tr("Remove Backup..."), this, SLOT(removeMod_clicked()));
diff --git a/src/mainwindow.h b/src/mainwindow.h
index a17b706d..5c8e4ebc 100644
--- a/src/mainwindow.h
+++ b/src/mainwindow.h
@@ -484,7 +484,10 @@ private slots:
void disableVisibleMods();
void exportModListCSV();
void openInstanceFolder();
-
+ void openDownloadsFolder();
+ void openProfileFolder();
+ void openGameFolder();
+ void openMyGamesFolder();
void startExeAction();
void checkBSAList();