diff options
| author | NitroTears <73270647+NitroTears@users.noreply.github.com> | 2023-04-16 11:03:35 +1000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-04-16 01:03:35 +0000 |
| commit | c5258cf082b10f335f81487f22b7eeb86075e09e (patch) | |
| tree | 2909f61284f29cd86f75f40020ea69cc6447730c /Ryujinx.Ui.Common/Extensions/FileTypeExtensions.cs | |
| parent | 5c89e22bb98072adc240c2eb2d26d25fa119fe7d (diff) | |
Ability to hide file types in Game List (#4555)
* Added HiddenFileTypes to config state, and check to file enumeration
* Added hiddenfiletypes checkboxes to the UI
* Added Ava version of HiddenFileTypes
* Inverted Hide to Show with file types, minor formatting
* all variables with a reference to 'hidden' is now 'shown'
* one more variable name changed
* review feedback
* added FileTypes extension methof to get the correlating config value
* moved extension method to new folder and file in Ryujinx.Ui.Common
* added default case for ToggleFileType
* changed exception type to OutOfRangeException
Diffstat (limited to 'Ryujinx.Ui.Common/Extensions/FileTypeExtensions.cs')
| -rw-r--r-- | Ryujinx.Ui.Common/Extensions/FileTypeExtensions.cs | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/Ryujinx.Ui.Common/Extensions/FileTypeExtensions.cs b/Ryujinx.Ui.Common/Extensions/FileTypeExtensions.cs new file mode 100644 index 00000000..e2ac4950 --- /dev/null +++ b/Ryujinx.Ui.Common/Extensions/FileTypeExtensions.cs @@ -0,0 +1,25 @@ +using System; +using static Ryujinx.Ui.Common.Configuration.ConfigurationState.UiSection; + +namespace Ryujinx.Ui.Common +{ + public static class FileTypesExtensions + { + /// <summary> + /// Gets the current <see cref="ShownFileTypeSettings"/> value for the correlating FileType name. + /// </summary> + /// <param name="type">The name of the <see cref="ShownFileTypeSettings"/> parameter to get the value of.</param> + /// <param name="config">The config instance to get the value from.</param> + /// <returns>The current value of the setting. Value is <see langword="true"/> if the file type is the be shown on the games list, <see langword="false"/> otherwise.</returns> + public static bool GetConfigValue(this FileTypes type, ShownFileTypeSettings config) => type switch + { + FileTypes.NSP => config.NSP.Value, + FileTypes.PFS0 => config.PFS0.Value, + FileTypes.XCI => config.XCI.Value, + FileTypes.NCA => config.NCA.Value, + FileTypes.NRO => config.NRO.Value, + FileTypes.NSO => config.NSO.Value, + _ => throw new ArgumentOutOfRangeException(nameof(type), type, null) + }; + } +} |
