/// <summary> /// Copies all of the properties from the source writing system to this writing system. /// </summary> /// <param name="source">The source writing system.</param> public void Copy(CoreWritingSystemDefinition source) { Language = source.Language; Script = source.Script; Region = source.Region; Variants.ReplaceAll(source.Variants); Abbreviation = source.Abbreviation; RightToLeftScript = source.RightToLeftScript; Fonts.ReplaceAll(source.Fonts.CloneItems()); DefaultFont = source.DefaultFont == null ? null : Fonts[source.Fonts.IndexOf(source.DefaultFont)]; Keyboard = source.Keyboard; VersionNumber = source.VersionNumber; VersionDescription = source.VersionDescription; SpellCheckDictionaries.ReplaceAll(source.SpellCheckDictionaries.CloneItems()); SpellCheckingId = source.SpellCheckingId; DateModified = source.DateModified; LocalKeyboard = source.LocalKeyboard; WindowsLcid = source.WindowsLcid; DefaultRegion = source.DefaultRegion; KnownKeyboards.ReplaceAll(source.KnownKeyboards); MatchedPairs.Clear(); MatchedPairs.UnionWith(source.MatchedPairs); PunctuationPatterns.Clear(); PunctuationPatterns.UnionWith(source.PunctuationPatterns); QuotationMarks.ReplaceAll(source.QuotationMarks); QuotationParagraphContinueType = source.QuotationParagraphContinueType; Collations.ReplaceAll(source.Collations.CloneItems()); DefaultCollation = source.DefaultCollation == null ? null : Collations[source.Collations.IndexOf(source.DefaultCollation)]; CharacterSets.ReplaceAll(source.CharacterSets.CloneItems()); LegacyMapping = source.LegacyMapping; IsGraphiteEnabled = source.IsGraphiteEnabled; }