using System; namespace TeamXBMC.TranslatorCore { /// /// State of a TranslatorItem /// public enum TranslationState { Unknown=0, Translated, Untranslated, Changed }; /// /// Single item of a languge to be translated. /// Used in the TranslatorArray. /// public class TranslatorItem : IComparable { private StringItem translated=null; private StringItem original=null; private TranslationState state=TranslationState.Unknown; #region Constructors public TranslatorItem(StringItem translated, StringItem original, TranslationState state) { this.translated=translated; this.original=original; this.state=state; } #endregion #region Properties /// /// Returns a StringItem with the translated text /// public StringItem StringTranslated { get { return translated; } } /// /// Returns a StringItem with the original text /// public StringItem StringOriginal { get { return original; } } /// /// Gets/Sets the state of the item /// public TranslationState State { get { return state; } set { state=value; } } #endregion #region IComparable Members public int CompareTo(object obj) { TranslatorItem right=(TranslatorItem)obj; return Convert.ToInt32(StringTranslated.Id)-Convert.ToInt32(right.StringTranslated.Id); } #endregion } }