aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx/Ui/GameTableContextMenu.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx/Ui/GameTableContextMenu.cs')
-rw-r--r--Ryujinx/Ui/GameTableContextMenu.cs44
1 files changed, 33 insertions, 11 deletions
diff --git a/Ryujinx/Ui/GameTableContextMenu.cs b/Ryujinx/Ui/GameTableContextMenu.cs
index d2d00305..2efe1d3e 100644
--- a/Ryujinx/Ui/GameTableContextMenu.cs
+++ b/Ryujinx/Ui/GameTableContextMenu.cs
@@ -45,24 +45,24 @@ namespace Ryujinx.Ui
MenuItem openSaveUserDir = new MenuItem("Open User Save Directory")
{
Sensitive = !Util.IsEmpty(controlData.ByteSpan) && controlData.Value.UserAccountSaveDataSize > 0,
- TooltipText = "Open the folder where the User save for the application is loaded"
+ TooltipText = "Open the directory which contains Application's User Saves."
};
MenuItem openSaveDeviceDir = new MenuItem("Open Device Save Directory")
{
Sensitive = !Util.IsEmpty(controlData.ByteSpan) && controlData.Value.DeviceSaveDataSize > 0,
- TooltipText = "Open the folder where the Device save for the application is loaded"
+ TooltipText = "Open the directory which contains Application's Device Saves."
};
MenuItem openSaveBcatDir = new MenuItem("Open BCAT Save Directory")
{
Sensitive = !Util.IsEmpty(controlData.ByteSpan) && controlData.Value.BcatDeliveryCacheStorageSize > 0,
- TooltipText = "Open the folder where the BCAT save for the application is loaded"
+ TooltipText = "Open the directory which contains Application's BCAT Saves."
};
MenuItem manageTitleUpdates = new MenuItem("Manage Title Updates")
{
- TooltipText = "Open the title update management window"
+ TooltipText = "Open the Title Update management window"
};
MenuItem manageDlc = new MenuItem("Manage DLC")
@@ -70,6 +70,11 @@ namespace Ryujinx.Ui
TooltipText = "Open the DLC management window"
};
+ MenuItem openTitleModDir = new MenuItem("Open Mods Directory")
+ {
+ TooltipText = "Open the directory which contains Application's Mods."
+ };
+
string ext = System.IO.Path.GetExtension(_gameTableStore.GetValue(_rowIter, 9).ToString()).ToLower();
bool hasNca = ext == ".nca" || ext == ".nsp" || ext == ".pfs0" || ext == ".xci";
@@ -78,19 +83,19 @@ namespace Ryujinx.Ui
MenuItem extractRomFs = new MenuItem("RomFS")
{
Sensitive = hasNca,
- TooltipText = "Extract the RomFs section present in the main NCA"
+ TooltipText = "Extract the RomFS section from Application's current config (including updates)."
};
MenuItem extractExeFs = new MenuItem("ExeFS")
{
Sensitive = hasNca,
- TooltipText = "Extract the ExeFs section present in the main NCA"
+ TooltipText = "Extract the ExeFS section from Application's current config (including updates)."
};
MenuItem extractLogo = new MenuItem("Logo")
{
Sensitive = hasNca,
- TooltipText = "Extract the Logo section present in the main NCA"
+ TooltipText = "Extract the Logo section from Application's current config (including updates)."
};
Menu extractSubMenu = new Menu();
@@ -103,14 +108,14 @@ namespace Ryujinx.Ui
MenuItem managePtcMenu = new MenuItem("Cache Management");
- MenuItem purgePtcCache = new MenuItem("Purge the PPTC cache")
+ MenuItem purgePtcCache = new MenuItem("Purge PPTC cache")
{
- TooltipText = "Delete the PPTC cache of the game"
+ TooltipText = "Delete the Application's PPTC cache."
};
- MenuItem openPtcDir = new MenuItem("Open the PPTC directory")
+ MenuItem openPtcDir = new MenuItem("Open PPTC directory")
{
- TooltipText = "Open the PPTC directory in the file explorer"
+ TooltipText = "Open the directory which contains Application's PPTC cache."
};
Menu managePtcSubMenu = new Menu();
@@ -125,6 +130,7 @@ namespace Ryujinx.Ui
openSaveBcatDir.Activated += OpenSaveBcatDir_Clicked;
manageTitleUpdates.Activated += ManageTitleUpdates_Clicked;
manageDlc.Activated += ManageDlc_Clicked;
+ openTitleModDir.Activated += OpenTitleModDir_Clicked;
extractRomFs.Activated += ExtractRomFs_Clicked;
extractExeFs.Activated += ExtractExeFs_Clicked;
extractLogo.Activated += ExtractLogo_Clicked;
@@ -137,6 +143,7 @@ namespace Ryujinx.Ui
this.Add(new SeparatorMenuItem());
this.Add(manageTitleUpdates);
this.Add(manageDlc);
+ this.Add(openTitleModDir);
this.Add(new SeparatorMenuItem());
this.Add(managePtcMenu);
this.Add(extractMenu);
@@ -602,6 +609,21 @@ namespace Ryujinx.Ui
dlcWindow.Show();
}
+ private void OpenTitleModDir_Clicked(object sender, EventArgs args)
+ {
+ string titleId = _gameTableStore.GetValue(_rowIter, 2).ToString().Split("\n")[1].ToLower();
+
+ var modsBasePath = _virtualFileSystem.GetBaseModsPath();
+ var titleModsPath = _virtualFileSystem.ModLoader.GetTitleDir(modsBasePath, titleId);
+
+ Process.Start(new ProcessStartInfo
+ {
+ FileName = titleModsPath,
+ UseShellExecute = true,
+ Verb = "open"
+ });
+ }
+
private void ExtractRomFs_Clicked(object sender, EventArgs args)
{
ExtractSection(NcaSectionType.Data);