using System; namespace I2.Loc { [Serializable] public struct LocalizedString { public string mTerm; public bool mRTL_IgnoreArabicFix; public int mRTL_MaxLineLength; public bool mRTL_ConvertNumbers; public bool m_DontLocalizeParameters; public static implicit operator string(LocalizedString s) { return s.ToString(); } public static implicit operator LocalizedString(string term) { return new LocalizedString { mTerm = term }; } public LocalizedString (LocalizedString str) { mTerm = str.mTerm; mRTL_IgnoreArabicFix = str.mRTL_IgnoreArabicFix; mRTL_MaxLineLength = str.mRTL_MaxLineLength; mRTL_ConvertNumbers = str.mRTL_ConvertNumbers; m_DontLocalizeParameters = str.m_DontLocalizeParameters; } public override string ToString() { var translation = LocalizationManager.GetTranslation(mTerm, !mRTL_IgnoreArabicFix, mRTL_MaxLineLength, !mRTL_ConvertNumbers, true ); LocalizationManager.ApplyLocalizationParams(ref translation, !m_DontLocalizeParameters); return translation; } } }