SoftwareKeyboardCalc.cs 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. using System.Runtime.InteropServices;
  2. namespace Ryujinx.HLE.HOS.Applets.SoftwareKeyboard
  3. {
  4. /// <summary>
  5. /// A structure that defines the configuration options of the software keyboard.
  6. /// </summary>
  7. [StructLayout(LayoutKind.Sequential, Pack=1, CharSet = CharSet.Unicode)]
  8. struct SoftwareKeyboardCalc
  9. {
  10. private const int InputTextLength = 505;
  11. public uint Unknown;
  12. public ushort Size;
  13. public byte Unknown1;
  14. public byte Unknown2;
  15. public ulong Flags;
  16. public SoftwareKeyboardInitialize Initialize;
  17. public float Volume;
  18. public int CursorPos;
  19. public SoftwareKeyboardAppear Appear;
  20. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = InputTextLength + 1)]
  21. public string InputText;
  22. public byte Utf8Mode;
  23. public byte Unknown3;
  24. [MarshalAs(UnmanagedType.I1)]
  25. public bool BackspaceEnabled;
  26. public short Unknown4;
  27. public byte Unknown5;
  28. [MarshalAs(UnmanagedType.I1)]
  29. public byte KeytopAsFloating;
  30. [MarshalAs(UnmanagedType.I1)]
  31. public byte FooterScalable;
  32. [MarshalAs(UnmanagedType.I1)]
  33. public byte AlphaEnabledInInputMode;
  34. [MarshalAs(UnmanagedType.I1)]
  35. public byte InputModeFadeType;
  36. [MarshalAs(UnmanagedType.I1)]
  37. public byte TouchDisabled;
  38. [MarshalAs(UnmanagedType.I1)]
  39. public byte HardwareKeyboardDisabled;
  40. public uint Unknown6;
  41. public uint Unknown7;
  42. public float KeytopScale0;
  43. public float KeytopScale1;
  44. public float KeytopTranslate0;
  45. public float KeytopTranslate1;
  46. public float KeytopBgAlpha;
  47. public float FooterBgAlpha;
  48. public float BalloonScale;
  49. public float Unknown8;
  50. public uint Unknown9;
  51. public uint Unknown10;
  52. public uint Unknown11;
  53. public byte SeGroup;
  54. public byte TriggerFlag;
  55. public byte Trigger;
  56. public byte Padding;
  57. }
  58. }