StringTable.generated.cs 3.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. using System;
  2. using System.Runtime.CompilerServices;
  3. using System.Runtime.InteropServices;
  4. namespace BansheeEngine
  5. {
  6. /** @addtogroup Localization
  7. * @{
  8. */
  9. /// <summary>Used for string localization. Stores strings and their translations in various languages.</summary>
  10. [ShowInInspector]
  11. public partial class StringTable : Resource
  12. {
  13. private StringTable(bool __dummy0) { }
  14. /// <summary>Creates a new empty string table resource.</summary>
  15. public StringTable()
  16. {
  17. Internal_create(this);
  18. }
  19. /// <summary>Returns a reference wrapper for this resource.</summary>
  20. public RRef<StringTable> Ref
  21. {
  22. get { return Internal_GetRef(mCachedPtr); }
  23. }
  24. /// <summary>Returns a total number of strings in the table.</summary>
  25. [ShowInInspector]
  26. public uint NumStrings
  27. {
  28. get { return Internal_getNumStrings(mCachedPtr); }
  29. }
  30. /// <summary>Returns all identifiers that the string table contains localized strings for.</summary>
  31. [ShowInInspector]
  32. public string[] Identifiers
  33. {
  34. get { return Internal_getIdentifiers(mCachedPtr); }
  35. }
  36. /// <summary>Returns a reference wrapper for this resource.</summary>
  37. public static implicit operator RRef<StringTable>(StringTable x)
  38. { return Internal_GetRef(x.mCachedPtr); }
  39. /// <summary>Checks does the string table contain the provided identifier.</summary>
  40. /// <param name="identifier">Identifier to look for.</param>
  41. /// <returns>True if the identifier exists in the table, false otherwise.</returns>
  42. public bool Contains(string identifier)
  43. {
  44. return Internal_contains(mCachedPtr, identifier);
  45. }
  46. /// <summary>Adds or modifies string translation for the specified language.</summary>
  47. public void SetString(string identifier, Language language, string value)
  48. {
  49. Internal_setString(mCachedPtr, identifier, language, value);
  50. }
  51. /// <summary>
  52. /// Returns a string translation for the specified language. Returns the identifier itself if one doesn't exist.
  53. /// </summary>
  54. public string GetString(string identifier, Language language)
  55. {
  56. return Internal_getString(mCachedPtr, identifier, language);
  57. }
  58. /// <summary>Removes the string described by identifier, from all languages.</summary>
  59. public void RemoveString(string identifier)
  60. {
  61. Internal_removeString(mCachedPtr, identifier);
  62. }
  63. [MethodImpl(MethodImplOptions.InternalCall)]
  64. private static extern RRef<StringTable> Internal_GetRef(IntPtr thisPtr);
  65. [MethodImpl(MethodImplOptions.InternalCall)]
  66. private static extern bool Internal_contains(IntPtr thisPtr, string identifier);
  67. [MethodImpl(MethodImplOptions.InternalCall)]
  68. private static extern uint Internal_getNumStrings(IntPtr thisPtr);
  69. [MethodImpl(MethodImplOptions.InternalCall)]
  70. private static extern string[] Internal_getIdentifiers(IntPtr thisPtr);
  71. [MethodImpl(MethodImplOptions.InternalCall)]
  72. private static extern void Internal_setString(IntPtr thisPtr, string identifier, Language language, string value);
  73. [MethodImpl(MethodImplOptions.InternalCall)]
  74. private static extern string Internal_getString(IntPtr thisPtr, string identifier, Language language);
  75. [MethodImpl(MethodImplOptions.InternalCall)]
  76. private static extern void Internal_removeString(IntPtr thisPtr, string identifier);
  77. [MethodImpl(MethodImplOptions.InternalCall)]
  78. private static extern void Internal_create(StringTable managedInstance);
  79. }
  80. /** @} */
  81. }