aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE/HOS/Applets/SoftwareKeyboard/SoftwareKeyboardCalc.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.HLE/HOS/Applets/SoftwareKeyboard/SoftwareKeyboardCalc.cs')
-rw-r--r--Ryujinx.HLE/HOS/Applets/SoftwareKeyboard/SoftwareKeyboardCalc.cs84
1 files changed, 84 insertions, 0 deletions
diff --git a/Ryujinx.HLE/HOS/Applets/SoftwareKeyboard/SoftwareKeyboardCalc.cs b/Ryujinx.HLE/HOS/Applets/SoftwareKeyboard/SoftwareKeyboardCalc.cs
new file mode 100644
index 00000000..6213c2e4
--- /dev/null
+++ b/Ryujinx.HLE/HOS/Applets/SoftwareKeyboard/SoftwareKeyboardCalc.cs
@@ -0,0 +1,84 @@
+using System.Runtime.InteropServices;
+
+namespace Ryujinx.HLE.HOS.Applets.SoftwareKeyboard
+{
+ /// <summary>
+ /// A structure that defines the configuration options of the software keyboard.
+ /// </summary>
+ [StructLayout(LayoutKind.Sequential, Pack=1, CharSet = CharSet.Unicode)]
+ struct SoftwareKeyboardCalc
+ {
+ private const int InputTextLength = 505;
+
+ public uint Unknown;
+
+ public ushort Size;
+
+ public byte Unknown1;
+ public byte Unknown2;
+
+ public ulong Flags;
+
+ public SoftwareKeyboardInitialize Initialize;
+
+ public float Volume;
+
+ public int CursorPos;
+
+ public SoftwareKeyboardAppear Appear;
+
+ [MarshalAs(UnmanagedType.ByValTStr, SizeConst = InputTextLength + 1)]
+ public string InputText;
+
+ public byte Utf8Mode;
+
+ public byte Unknown3;
+
+ [MarshalAs(UnmanagedType.I1)]
+ public bool BackspaceEnabled;
+
+ public short Unknown4;
+ public byte Unknown5;
+
+ [MarshalAs(UnmanagedType.I1)]
+ public byte KeytopAsFloating;
+
+ [MarshalAs(UnmanagedType.I1)]
+ public byte FooterScalable;
+
+ [MarshalAs(UnmanagedType.I1)]
+ public byte AlphaEnabledInInputMode;
+
+ [MarshalAs(UnmanagedType.I1)]
+ public byte InputModeFadeType;
+
+ [MarshalAs(UnmanagedType.I1)]
+ public byte TouchDisabled;
+
+ [MarshalAs(UnmanagedType.I1)]
+ public byte HardwareKeyboardDisabled;
+
+ public uint Unknown6;
+ public uint Unknown7;
+
+ public float KeytopScale0;
+ public float KeytopScale1;
+ public float KeytopTranslate0;
+ public float KeytopTranslate1;
+ public float KeytopBgAlpha;
+ public float FooterBgAlpha;
+ public float BalloonScale;
+
+ public float Unknown8;
+ public uint Unknown9;
+ public uint Unknown10;
+ public uint Unknown11;
+
+ public byte SeGroup;
+
+ public byte TriggerFlag;
+ public byte Trigger;
+
+ public byte Padding;
+ }
+}