diff options
| author | Jordan Woyak <jordan.woyak@gmail.com> | 2026-01-15 16:17:40 -0600 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-01-15 16:17:40 -0600 |
| commit | a88c27d8553e8bf368189ce7450210449d536a71 (patch) | |
| tree | 37c89edc57c63a52c636e27aba3d3fb7d2a88650 /Source | |
| parent | 4c7cb2622f6e05e13aa94f058c110923733df2c3 (diff) | |
| parent | 0e348ee159bca57376188d7323ef069886ca1197 (diff) | |
Merge pull request #14284 from JoshuaVandaele/menubar-folder
MenuBar: Add entries to open the config and cache folders
Diffstat (limited to 'Source')
| -rw-r--r-- | Source/Core/DolphinQt/MainWindow.cpp | 18 | ||||
| -rw-r--r-- | Source/Core/DolphinQt/MainWindow.h | 2 | ||||
| -rw-r--r-- | Source/Core/DolphinQt/MenuBar.cpp | 12 | ||||
| -rw-r--r-- | Source/Core/DolphinQt/MenuBar.h | 4 |
4 files changed, 36 insertions, 0 deletions
diff --git a/Source/Core/DolphinQt/MainWindow.cpp b/Source/Core/DolphinQt/MainWindow.cpp index 7304905442..4b9308f189 100644 --- a/Source/Core/DolphinQt/MainWindow.cpp +++ b/Source/Core/DolphinQt/MainWindow.cpp @@ -530,6 +530,8 @@ void MainWindow::ConnectMenuBar() connect(m_menu_bar, &MenuBar::EjectDisc, this, &MainWindow::EjectDisc); connect(m_menu_bar, &MenuBar::ChangeDisc, this, &MainWindow::ChangeDisc); connect(m_menu_bar, &MenuBar::OpenUserFolder, this, &MainWindow::OpenUserFolder); + connect(m_menu_bar, &MenuBar::OpenConfigFolder, this, &MainWindow::OpenConfigFolder); + connect(m_menu_bar, &MenuBar::OpenCacheFolder, this, &MainWindow::OpenCacheFolder); // Emulation connect(m_menu_bar, &MenuBar::Pause, this, &MainWindow::Pause); @@ -827,6 +829,22 @@ void MainWindow::OpenUserFolder() QDesktopServices::openUrl(url); } +void MainWindow::OpenConfigFolder() +{ + std::string path = File::GetUserPath(D_CONFIG_IDX); + + QUrl url = QUrl::fromLocalFile(QString::fromStdString(path)); + QDesktopServices::openUrl(url); +} + +void MainWindow::OpenCacheFolder() +{ + std::string path = File::GetUserPath(D_CACHE_IDX); + + QUrl url = QUrl::fromLocalFile(QString::fromStdString(path)); + QDesktopServices::openUrl(url); +} + void MainWindow::Open() { QStringList files = PromptFileNames(); diff --git a/Source/Core/DolphinQt/MainWindow.h b/Source/Core/DolphinQt/MainWindow.h index a089935f61..bb7307c98c 100644 --- a/Source/Core/DolphinQt/MainWindow.h +++ b/Source/Core/DolphinQt/MainWindow.h @@ -216,6 +216,8 @@ private: void EjectDisc(); void OpenUserFolder(); + void OpenConfigFolder(); + void OpenCacheFolder(); QStringList PromptFileNames(); diff --git a/Source/Core/DolphinQt/MenuBar.cpp b/Source/Core/DolphinQt/MenuBar.cpp index dfb3eb9ff0..7126ff9654 100644 --- a/Source/Core/DolphinQt/MenuBar.cpp +++ b/Source/Core/DolphinQt/MenuBar.cpp @@ -260,6 +260,18 @@ void MenuBar::AddFileMenu() m_open_user_folder = file_menu->addAction(tr("Open &User Folder"), this, &MenuBar::OpenUserFolder); + const std::string user_path = File::GetUserPath(D_USER_IDX); + if (user_path + CONFIG_DIR DIR_SEP != File::GetUserPath(D_CONFIG_IDX)) + { + m_open_config_folder = + file_menu->addAction(tr("Open &Config Folder"), this, &MenuBar::OpenConfigFolder); + } + if (user_path + CACHE_DIR DIR_SEP != File::GetUserPath(D_CACHE_IDX)) + { + m_open_cache_folder = + file_menu->addAction(tr("Open C&ache Folder"), this, &MenuBar::OpenCacheFolder); + } + file_menu->addSeparator(); m_exit_action = file_menu->addAction(tr("E&xit"), this, &MenuBar::Exit); diff --git a/Source/Core/DolphinQt/MenuBar.h b/Source/Core/DolphinQt/MenuBar.h index 1f2abd3a3b..9f51179e2a 100644 --- a/Source/Core/DolphinQt/MenuBar.h +++ b/Source/Core/DolphinQt/MenuBar.h @@ -62,6 +62,8 @@ signals: void ChangeDisc(); void EjectDisc(); void OpenUserFolder(); + void OpenConfigFolder(); + void OpenCacheFolder(); // Emulation void Play(); @@ -211,6 +213,8 @@ private: QAction* m_eject_disc; QMenu* m_backup_menu; QAction* m_open_user_folder; + QAction* m_open_config_folder; + QAction* m_open_cache_folder; // Tools QAction* m_wad_install_action; |
