mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-31 13:50:03 +00:00 
			
		
		
		
	citra_qt: Add 'Open Mods Location'
This commit is contained in:
		
							parent
							
								
									91e5a39a08
								
							
						
					
					
						commit
						7c652a0479
					
				
					 3 changed files with 16 additions and 1 deletions
				
			
		|  | @ -468,6 +468,7 @@ void GameList::AddGamePopup(QMenu& context_menu, const QString& path, u64 progra | ||||||
|     QAction* open_texture_dump_location = context_menu.addAction(tr("Open Texture Dump Location")); |     QAction* open_texture_dump_location = context_menu.addAction(tr("Open Texture Dump Location")); | ||||||
|     QAction* open_texture_load_location = |     QAction* open_texture_load_location = | ||||||
|         context_menu.addAction(tr("Open Custom Texture Location")); |         context_menu.addAction(tr("Open Custom Texture Location")); | ||||||
|  |     QAction* open_mods_location = context_menu.addAction(tr("Open Mods Location")); | ||||||
|     QAction* navigate_to_gamedb_entry = context_menu.addAction(tr("Navigate to GameDB entry")); |     QAction* navigate_to_gamedb_entry = context_menu.addAction(tr("Navigate to GameDB entry")); | ||||||
| 
 | 
 | ||||||
|     const bool is_application = |     const bool is_application = | ||||||
|  | @ -497,6 +498,7 @@ void GameList::AddGamePopup(QMenu& context_menu, const QString& path, u64 progra | ||||||
| 
 | 
 | ||||||
|     open_texture_dump_location->setVisible(is_application); |     open_texture_dump_location->setVisible(is_application); | ||||||
|     open_texture_load_location->setVisible(is_application); |     open_texture_load_location->setVisible(is_application); | ||||||
|  |     open_mods_location->setVisible(is_application); | ||||||
| 
 | 
 | ||||||
|     navigate_to_gamedb_entry->setVisible(it != compatibility_list.end()); |     navigate_to_gamedb_entry->setVisible(it != compatibility_list.end()); | ||||||
| 
 | 
 | ||||||
|  | @ -526,6 +528,13 @@ void GameList::AddGamePopup(QMenu& context_menu, const QString& path, u64 progra | ||||||
|             emit OpenFolderRequested(program_id, GameListOpenTarget::TEXTURE_LOAD); |             emit OpenFolderRequested(program_id, GameListOpenTarget::TEXTURE_LOAD); | ||||||
|         } |         } | ||||||
|     }); |     }); | ||||||
|  |     connect(open_mods_location, &QAction::triggered, [this, program_id] { | ||||||
|  |         if (FileUtil::CreateFullPath(fmt::format("{}mods/{:016X}/", | ||||||
|  |                                                  FileUtil::GetUserPath(FileUtil::UserPath::LoadDir), | ||||||
|  |                                                  program_id))) { | ||||||
|  |             emit OpenFolderRequested(program_id, GameListOpenTarget::MODS); | ||||||
|  |         } | ||||||
|  |     }); | ||||||
|     connect(navigate_to_gamedb_entry, &QAction::triggered, [this, program_id]() { |     connect(navigate_to_gamedb_entry, &QAction::triggered, [this, program_id]() { | ||||||
|         emit NavigateToGamedbEntryRequested(program_id, compatibility_list); |         emit NavigateToGamedbEntryRequested(program_id, compatibility_list); | ||||||
|     }); |     }); | ||||||
|  |  | ||||||
|  | @ -35,7 +35,8 @@ enum class GameListOpenTarget { | ||||||
|     APPLICATION = 2, |     APPLICATION = 2, | ||||||
|     UPDATE_DATA = 3, |     UPDATE_DATA = 3, | ||||||
|     TEXTURE_DUMP = 4, |     TEXTURE_DUMP = 4, | ||||||
|     TEXTURE_LOAD = 5 |     TEXTURE_LOAD = 5, | ||||||
|  |     MODS = 6, | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| class GameList : public QWidget { | class GameList : public QWidget { | ||||||
|  |  | ||||||
|  | @ -1141,6 +1141,11 @@ void GMainWindow::OnGameListOpenFolder(u64 data_id, GameListOpenTarget target) { | ||||||
|         path = fmt::format("{}textures/{:016X}/", |         path = fmt::format("{}textures/{:016X}/", | ||||||
|                            FileUtil::GetUserPath(FileUtil::UserPath::LoadDir), data_id); |                            FileUtil::GetUserPath(FileUtil::UserPath::LoadDir), data_id); | ||||||
|         break; |         break; | ||||||
|  |     case GameListOpenTarget::MODS: | ||||||
|  |         open_target = "Mods"; | ||||||
|  |         path = fmt::format("{}mods/{:016X}/", FileUtil::GetUserPath(FileUtil::UserPath::LoadDir), | ||||||
|  |                            data_id); | ||||||
|  |         break; | ||||||
|     default: |     default: | ||||||
|         LOG_ERROR(Frontend, "Unexpected target {}", static_cast<int>(target)); |         LOG_ERROR(Frontend, "Unexpected target {}", static_cast<int>(target)); | ||||||
|         return; |         return; | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue