2
0

StringTable.cs 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. using System;
  2. using System.Runtime.CompilerServices;
  3. namespace BansheeEngine
  4. {
  5. public sealed class StringTable
  6. {
  7. public Language GetActiveLanguage()
  8. {
  9. Language value;
  10. Internal_GetActiveLanguage(out value);
  11. return value;
  12. }
  13. public void SetActiveLanguage(Language language)
  14. {
  15. Internal_SetActiveLanguage(language);
  16. }
  17. public void SetString(string identifier, Language language, string value)
  18. {
  19. Internal_SetString(identifier, language, value);
  20. }
  21. public void RemoveString(string identifier)
  22. {
  23. Internal_RemoveString(identifier);
  24. }
  25. public string GetLocalizedString(string identifier)
  26. {
  27. string value;
  28. Internal_GetLocalizedString(identifier, out value);
  29. return value;
  30. }
  31. [MethodImpl(MethodImplOptions.InternalCall)]
  32. private static extern void Internal_GetActiveLanguage(out Language value);
  33. [MethodImpl(MethodImplOptions.InternalCall)]
  34. private static extern void Internal_SetActiveLanguage(Language value);
  35. [MethodImpl(MethodImplOptions.InternalCall)]
  36. private static extern void Internal_SetString(string identifier, Language language, string value);
  37. [MethodImpl(MethodImplOptions.InternalCall)]
  38. private static extern void Internal_RemoveString(string identifier);
  39. [MethodImpl(MethodImplOptions.InternalCall)]
  40. private static extern void Internal_GetLocalizedString(string identifier, out string value);
  41. }
  42. public enum Language
  43. {
  44. Afar,
  45. Abkhazian,
  46. Avestan,
  47. Afrikaans,
  48. Akan,
  49. Amharic,
  50. Aragonese,
  51. Arabic,
  52. Assamese,
  53. Avaric,
  54. Aymara,
  55. Azerbaijani,
  56. Bashkir,
  57. Belarusian,
  58. Bulgarian,
  59. Bihari,
  60. Bislama,
  61. Bambara,
  62. Bengali,
  63. Tibetan,
  64. Breton,
  65. Bosnian,
  66. Catalan,
  67. Chechen,
  68. Chamorro,
  69. Corsican,
  70. Cree,
  71. Czech,
  72. ChurchSlavic,
  73. Chuvash,
  74. Welsh,
  75. Danish,
  76. German,
  77. Maldivian,
  78. Bhutani,
  79. Ewe,
  80. Greek,
  81. EnglishUK,
  82. EnglishUS,
  83. Esperanto,
  84. Spanish,
  85. Estonian,
  86. Basque,
  87. Persian,
  88. Fulah,
  89. Finnish,
  90. Fijian,
  91. Faroese,
  92. French,
  93. WesternFrisian,
  94. Irish,
  95. ScottishGaelic,
  96. Galician,
  97. Guarani,
  98. Gujarati,
  99. Manx,
  100. Hausa,
  101. Hebrew,
  102. Hindi,
  103. HiriMotu,
  104. Croatian,
  105. Haitian,
  106. Hungarian,
  107. Armenian,
  108. Herero,
  109. Interlingua,
  110. Indonesian,
  111. Interlingue,
  112. Igbo,
  113. SichuanYi,
  114. Inupiak,
  115. Ido,
  116. Icelandic,
  117. Italian,
  118. Inuktitut,
  119. Japanese,
  120. Javanese,
  121. Georgian,
  122. Kongo,
  123. Kikuyu,
  124. Kuanyama,
  125. Kazakh,
  126. Kalaallisut,
  127. Cambodian,
  128. Kannada,
  129. Korean,
  130. Kanuri,
  131. Kashmiri,
  132. Kurdish,
  133. Komi,
  134. Cornish,
  135. Kirghiz,
  136. Latin,
  137. Luxembourgish,
  138. Ganda,
  139. Limburgish,
  140. Lingala,
  141. Laotian,
  142. Lithuanian,
  143. LubaKatanga,
  144. Latvian,
  145. Malagasy,
  146. Marshallese,
  147. Maori,
  148. Macedonian,
  149. Malayalam,
  150. Mongolian,
  151. Moldavian,
  152. Marathi,
  153. Malay,
  154. Maltese,
  155. Burmese,
  156. Nauru,
  157. NorwegianBokmal,
  158. Ndebele,
  159. Nepali,
  160. Ndonga,
  161. Dutch,
  162. NorwegianNynorsk,
  163. Norwegian,
  164. Navaho,
  165. Nyanja,
  166. Provençal,
  167. Ojibwa,
  168. Oromo,
  169. Oriya,
  170. Ossetic,
  171. Punjabi,
  172. Pali,
  173. Polish,
  174. Pushto,
  175. Portuguese,
  176. Quechua,
  177. Romansh,
  178. Kirundi,
  179. Romanian,
  180. Russian,
  181. Kinyarwanda,
  182. Sanskrit,
  183. Sardinian,
  184. Sindhi,
  185. NorthernSami,
  186. Sangro,
  187. Sinhalese,
  188. Slovak,
  189. Slovenian,
  190. Samoan,
  191. Shona,
  192. Somali,
  193. Albanian,
  194. Serbian,
  195. Swati,
  196. Sesotho,
  197. Sundanese,
  198. Swedish,
  199. Swahili,
  200. Tamil,
  201. Telugu,
  202. Tajik,
  203. Thai,
  204. Tigrinya,
  205. Turkmen,
  206. Tagalog,
  207. Setswana,
  208. Tonga,
  209. Turkish,
  210. Tsonga,
  211. Tatar,
  212. Twi,
  213. Tahitian,
  214. Uighur,
  215. Ukrainian,
  216. Urdu,
  217. Uzbek,
  218. Venda,
  219. Vietnamese,
  220. Volapuk,
  221. Walloon,
  222. Wolof,
  223. Xhosa,
  224. Yiddish,
  225. Yoruba,
  226. Zhuang,
  227. Chinese,
  228. Zulu,
  229. Count // Number of entries
  230. };
  231. }