ProjectSettings.cs 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Linq;
  5. using System.Runtime.CompilerServices;
  6. using System.Runtime.InteropServices;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using BansheeEngine;
  10. namespace BansheeEditor
  11. {
  12. internal static class ProjectSettings
  13. {
  14. public static string LastOpenScene
  15. {
  16. get { return Internal_GetLastOpenScene(); }
  17. set { Internal_SetLastOpenScene(value); }
  18. }
  19. public static int Hash
  20. {
  21. get { return Internal_GetHash(); }
  22. }
  23. public static void SetFloat(string name, float value)
  24. {
  25. Internal_SetFloat(name, value);
  26. }
  27. public static void SetInt(string name, int value)
  28. {
  29. Internal_SetInt(name, value);
  30. }
  31. public static void SetBool(string name, bool value)
  32. {
  33. Internal_SetBool(name, value);
  34. }
  35. public static void SetString(string name, String value)
  36. {
  37. Internal_SetString(name, value);
  38. }
  39. public static float GetFloat(string name, float defaultValue = 0.0f)
  40. {
  41. return Internal_GetFloat(name, defaultValue);
  42. }
  43. public static int GetInt(string name, int defaultValue = 0)
  44. {
  45. return Internal_GetInt(name, defaultValue);
  46. }
  47. public static bool GetBool(string name, bool defaultValue = false)
  48. {
  49. return Internal_GetBool(name, defaultValue);
  50. }
  51. public static String GetString(string name, string defaultValue = "")
  52. {
  53. return Internal_GetString(name, defaultValue);
  54. }
  55. public static bool HasKey(string name)
  56. {
  57. return Internal_HasKey(name);
  58. }
  59. public static void DeleteKey(string name)
  60. {
  61. Internal_DeleteKey(name);
  62. }
  63. public static void DeleteAllKeys()
  64. {
  65. Internal_DeleteAllKeys();
  66. }
  67. public static void Save()
  68. {
  69. Internal_Save();
  70. }
  71. [MethodImpl(MethodImplOptions.InternalCall)]
  72. private static extern string Internal_GetLastOpenScene();
  73. [MethodImpl(MethodImplOptions.InternalCall)]
  74. private static extern void Internal_SetLastOpenScene(string value);
  75. [MethodImpl(MethodImplOptions.InternalCall)]
  76. private static extern void Internal_SetFloat(string name, float value);
  77. [MethodImpl(MethodImplOptions.InternalCall)]
  78. private static extern void Internal_SetInt(string name, int value);
  79. [MethodImpl(MethodImplOptions.InternalCall)]
  80. private static extern void Internal_SetBool(string name, bool value);
  81. [MethodImpl(MethodImplOptions.InternalCall)]
  82. private static extern void Internal_SetString(string name, String value);
  83. [MethodImpl(MethodImplOptions.InternalCall)]
  84. private static extern float Internal_GetFloat(string name, float defaultValue);
  85. [MethodImpl(MethodImplOptions.InternalCall)]
  86. private static extern int Internal_GetInt(string name, int defaultValue);
  87. [MethodImpl(MethodImplOptions.InternalCall)]
  88. private static extern bool Internal_GetBool(string name, bool defaultValue);
  89. [MethodImpl(MethodImplOptions.InternalCall)]
  90. private static extern string Internal_GetString(string name, string defaultValue);
  91. [MethodImpl(MethodImplOptions.InternalCall)]
  92. private static extern bool Internal_HasKey(string name);
  93. [MethodImpl(MethodImplOptions.InternalCall)]
  94. private static extern void Internal_DeleteKey(string name);
  95. [MethodImpl(MethodImplOptions.InternalCall)]
  96. private static extern void Internal_DeleteAllKeys();
  97. [MethodImpl(MethodImplOptions.InternalCall)]
  98. private static extern int Internal_GetHash();
  99. [MethodImpl(MethodImplOptions.InternalCall)]
  100. private static extern void Internal_Save();
  101. }
  102. }