LocalizedString.cs 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. using System;
  2. namespace I2.Loc
  3. {
  4. [Serializable]
  5. public struct LocalizedString
  6. {
  7. public string mTerm;
  8. public bool mRTL_IgnoreArabicFix;
  9. public int mRTL_MaxLineLength;
  10. public bool mRTL_ConvertNumbers;
  11. public bool m_DontLocalizeParameters;
  12. public static implicit operator string(LocalizedString s)
  13. {
  14. return s.ToString();
  15. }
  16. public static implicit operator LocalizedString(string term)
  17. {
  18. return new LocalizedString() { mTerm = term };
  19. }
  20. public LocalizedString (LocalizedString str)
  21. {
  22. mTerm = str.mTerm;
  23. mRTL_IgnoreArabicFix = str.mRTL_IgnoreArabicFix;
  24. mRTL_MaxLineLength = str.mRTL_MaxLineLength;
  25. mRTL_ConvertNumbers = str.mRTL_ConvertNumbers;
  26. m_DontLocalizeParameters = str.m_DontLocalizeParameters;
  27. }
  28. public override string ToString()
  29. {
  30. var translation = LocalizationManager.GetTranslation(mTerm, !mRTL_IgnoreArabicFix, mRTL_MaxLineLength, !mRTL_ConvertNumbers, true );
  31. LocalizationManager.ApplyLocalizationParams(ref translation, !m_DontLocalizeParameters);
  32. return translation;
  33. }
  34. }
  35. }