示例#1
0
        public static WritingSystemDefinition CreateAndWarnUserIfOutOfDate(this IWritingSystemFactory wsFactory, string langTag)
        {
            WritingSystemDefinition ws;
            bool upToDate;

            WaitCursor.Show();
            try
            {
                upToDate = wsFactory.Create(langTag, out ws);
            }
            finally
            {
                WaitCursor.Hide();
            }

            if (!upToDate)
            {
                if (MessageBox.Show(Form.ActiveForm, LocalizationManager.GetString("WritingSystemSetupView.UnableToConnectToSldrText", "The application is unable to connect to the SIL Locale Data Repository to retrieve the latest information about this language. If you create this writing system, the default settings might be incorrect or out of date. Are you sure you want to create a new writing system?"),
                                    LocalizationManager.GetString("WritingSystemSetupView.UnableToConnectToSldrCaption", "Unable to connect to SLDR"),
                                    MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
                {
                    return(null);
                }
            }

            return(ws);
        }
 public OtherSuggestion(IWritingSystemFactory wsFactory, WritingSystemDefinition primary, IEnumerable <WritingSystemDefinition> exisitingWritingSystemsForLanguage)
     : base(wsFactory)
 {
     _templateWritingSystemDefinition   = primary;
     _existingWritingSystemsForLanguage = exisitingWritingSystemsForLanguage.ToList();
     Label = string.Format("other input system for {0}", primary.Language.Name);
 }
        public LanguageSuggestion(IWritingSystemFactory wsFactory, string languageTag, string keyboardLayout)
            : base(wsFactory)
        {
            _languageTag    = languageTag;
            _keyboardLayout = keyboardLayout;
            LanguageSubtag languageSubtag;
            ScriptSubtag   scriptSubtag;
            RegionSubtag   regionSubtag;
            IEnumerable <VariantSubtag> variantSubtags;

            IetfLanguageTag.TryGetSubtags(languageTag, out languageSubtag, out scriptSubtag, out regionSubtag,
                                          out variantSubtags);

            var s = new StringBuilder();

            if (!string.IsNullOrEmpty(languageSubtag.Name))
            {
                s.Append(languageSubtag.Name);
            }
            if (scriptSubtag != null && !string.IsNullOrEmpty(scriptSubtag.Name) && !IetfLanguageTag.IsScriptImplied(languageTag))
            {
                s.AppendFormat("-{0}", scriptSubtag.Name);
            }
            if (regionSubtag != null && !string.IsNullOrEmpty(regionSubtag.Name))
            {
                s.AppendFormat("-{0}", regionSubtag.Name);
            }
            Label = s.ToString();
        }
        public WritingSystemSuggestor(IWritingSystemFactory writingSystemFactory)
        {
            OtherKnownWritingSystems =
                new WritingSystemFromWindowsLocaleProvider(writingSystemFactory).Union(new List <Tuple <string, string> >()
            {
                new Tuple <string, string>("tpi", string.Empty)
            });

            _writingSystemFactory = writingSystemFactory;
            SuppressSuggestionsForMajorWorldLanguages = true;
            SuggestIpa      = true;
            SuggestDialects = true;
            SuggestOther    = true;
            SuggestVoice    = false;
        }
		public WritingSystemSuggestor(IWritingSystemFactory writingSystemFactory)
		{
			OtherKnownWritingSystems =
				new WritingSystemFromWindowsLocaleProvider(writingSystemFactory).Union(new List<Tuple<string, string>>()
			{
				new Tuple<string, string>("tpi", string.Empty)
			});

			_writingSystemFactory = writingSystemFactory;
			SuppressSuggestionsForMajorWorldLanguages = true;
			SuggestIpa = true;
			SuggestDialects = true;
			SuggestOther = true;
			SuggestVoice = false;
		}
		public VoiceSuggestion(IWritingSystemFactory wsFactory, WritingSystemDefinition primary)
			: base(wsFactory)
		{
			_templateWritingSystemDefinition = primary;
			Label = string.Format("{0} (voice)", primary.Language.Name);
		}
		protected WritingSystemSuggestion(IWritingSystemFactory wsFactory)
		{
			_wsFactory = wsFactory;
		}
		public LanguageSuggestion(IWritingSystemFactory wsFactory, string languageTag, string keyboardLayout)
			: base(wsFactory)
		{
			_languageTag = languageTag;
			_keyboardLayout = keyboardLayout;
			LanguageSubtag languageSubtag;
			ScriptSubtag scriptSubtag;
			RegionSubtag regionSubtag;
			IEnumerable<VariantSubtag> variantSubtags;
			IetfLanguageTag.TryGetSubtags(languageTag, out languageSubtag, out scriptSubtag, out regionSubtag,
				out variantSubtags);

			var s = new StringBuilder();
			if (!string.IsNullOrEmpty(languageSubtag.Name))
				s.Append(languageSubtag.Name);
			if (scriptSubtag != null && !string.IsNullOrEmpty(scriptSubtag.Name) && !IetfLanguageTag.IsScriptImplied(languageTag))
				s.AppendFormat("-{0}", scriptSubtag.Name);
			if (regionSubtag != null && !string.IsNullOrEmpty(regionSubtag.Name))
				s.AppendFormat("-{0}", regionSubtag.Name);
			Label = s.ToString();
		}
		public OtherSuggestion(IWritingSystemFactory wsFactory, WritingSystemDefinition primary, IEnumerable<WritingSystemDefinition> exisitingWritingSystemsForLanguage)
			: base(wsFactory)
		{
			_templateWritingSystemDefinition = primary;
			_existingWritingSystemsForLanguage = exisitingWritingSystemsForLanguage.ToList();
			Label = string.Format("other input system for {0}", primary.Language.Name);
		}
示例#10
0
 public WritingSystemFromWindowsLocaleProviderAccessor(
     IWritingSystemFactory writingSystemFactory) : base(writingSystemFactory)
 {
 }
		/// <summary>
		/// Creates the presentation model object based off of a single writing system definition.
		/// This is the easiest form to use if you only want part of the UI elements or only operate on
		/// one WritingSystemDefiniion
		/// </summary>
		public WritingSystemSetupModel(WritingSystemDefinition ws)
		{
			if (ws == null)
			{
				throw new ArgumentNullException("ws");
			}
			_writingSystemFactory = new SldrWritingSystemFactory();
			WritingSystemSuggestor = new WritingSystemSuggestor(_writingSystemFactory);

			_currentWritingSystem = ws;
			_currentIndex = 0;
			_writingSystemRepository = null;
			_writingSystemDefinitions = new List<WritingSystemDefinition> {ws};
			_deletedWritingSystemDefinitions = null;
			_usingRepository = false;
		}
 public VoiceSuggestion(IWritingSystemFactory wsFactory, WritingSystemDefinition primary)
     : base(wsFactory)
 {
     _templateWritingSystemDefinition = primary;
     Label = string.Format("{0} (voice)", primary.Language.Name);
 }
 protected WritingSystemSuggestion(IWritingSystemFactory wsFactory)
 {
     _wsFactory = wsFactory;
 }
 public IpaSuggestion(IWritingSystemFactory wsFactory, WritingSystemDefinition primary)
     : base(wsFactory)
 {
     _templateWritingSystemDefinition = primary;
     Label = string.Format("IPA input system for {0}", primary.Language.Name);
 }
		/// <summary>
		/// Creates the presentation model object based off of a writing system store of some sort.
		/// </summary>
		public WritingSystemSetupModel(IWritingSystemRepository writingSystemRepository)
		{
			if (writingSystemRepository == null)
			{
				throw new ArgumentNullException("writingSystemRepository");
			}
			_writingSystemFactory = writingSystemRepository.WritingSystemFactory;
			WritingSystemSuggestor = new WritingSystemSuggestor(_writingSystemFactory);

			_writingSystemRepository = writingSystemRepository;
			_writingSystemDefinitions = new List<WritingSystemDefinition>(_writingSystemRepository.AllWritingSystems);
			_deletedWritingSystemDefinitions = new List<WritingSystemDefinition>();
			_currentIndex = -1;
			_usingRepository = true;
		}
		public DialectSuggestion(IWritingSystemFactory wsFactory, WritingSystemDefinition primary)
			: base(wsFactory)
		{
			_templateWritingSystemDefinition = primary;
			Label = string.Format("new dialect of {0}", primary.Language.Name);
		}
		public IpaSuggestion(IWritingSystemFactory wsFactory, WritingSystemDefinition primary)
			: base(wsFactory)
		{
			_templateWritingSystemDefinition = primary;
			Label = string.Format("IPA input system for {0}", primary.Language.Name);
		}
 public DialectSuggestion(IWritingSystemFactory wsFactory, WritingSystemDefinition primary)
     : base(wsFactory)
 {
     _templateWritingSystemDefinition = primary;
     Label = string.Format("new dialect of {0}", primary.Language.Name);
 }
示例#19
0
 public WritingSystemFromWindowsLocaleProvider(IWritingSystemFactory writingSystemFactory)
 {
     _writingSystemFactory = writingSystemFactory;
 }
示例#20
0
		public LdmlDataMapper(IWritingSystemFactory writingSystemFactory)
		{
			_writingSystemFactory = writingSystemFactory;
		}