Esempio n. 1
0
        /// <seealso cref="Transliterator.AddSourceTargetSet(UnicodeSet, UnicodeSet, UnicodeSet)"/>
#pragma warning disable 672
        public override void AddSourceTargetSet(UnicodeSet inputFilter, UnicodeSet sourceSet, UnicodeSet targetSet)
#pragma warning restore 672
        {
            lock (this)
            {
                if (sourceTargetUtility == null)
                {
                    sourceTargetUtility = new SourceTargetUtility(new StringTransform(transform: (source) =>
                    {
                        return(UChar.ToTitleCase(locale, source, null));
                    }));
                }
            }
            sourceTargetUtility.AddSourceTargetSet(this, inputFilter, sourceSet, targetSet);
        }
        /// <seealso cref="Transliterator.AddSourceTargetSet(UnicodeSet, UnicodeSet, UnicodeSet)"/>
#pragma warning disable 672
        public override void AddSourceTargetSet(UnicodeSet inputFilter, UnicodeSet sourceSet, UnicodeSet targetSet)
#pragma warning restore 672
        {
            if (sourceTargetUtility == null)
            {
                LazyInitializer.EnsureInitialized(ref sourceTargetUtility, () =>
                {
                    return(new SourceTargetUtility(new StringTransform(transform: (source) =>
                    {
                        return UChar.ToTitleCase(locale, source, null);
                    })));
                });
            }
            sourceTargetUtility.AddSourceTargetSet(this, inputFilter, sourceSet, targetSet);
        }
Esempio n. 3
0
        private string AdjustForUsageAndContext(CapitalizationContextUsage usage, string name)
        {
            if (name != null && name.Length > 0 && UChar.IsLower(name.CodePointAt(0)) &&
                (displayContextOptions.Capitalization == Capitalization.BeginningOfSentence ||
                 (capitalizationUsage != null && capitalizationUsage[(int)usage])))
            {
                // Note, won't have capitalizationUsage != null && capitalizationUsage[usage.ordinal()]
                // unless capitalization is CAPITALIZATION_FOR_UI_LIST_OR_MENU or CAPITALIZATION_FOR_STANDALONE

                // should only happen when deserializing, etc.
                LazyInitializer.EnsureInitialized(ref capitalizationBrkIter, () => BreakIterator.GetSentenceInstance(locale));
                return(UChar.ToTitleCase(locale, name, capitalizationBrkIter,
                                         UChar.TitleCaseNoLowerCase | UChar.TitleCaseNoBreakAdjustment));
            }
            return(name);
        }