private static UIFont ToUIFont(string family, float size, FontAttributes attributes)
        {
            var key = new ToUIFontKey(family, size, attributes);

            lock (_toUiFont)
            {
                UIFont value;
                if (_toUiFont.TryGetValue(key, out value))
                {
                    return(value);
                }
            }

            var generatedValue = GetUIFont(family, size, attributes);

            lock (_toUiFont)
            {
                UIFont value;
                if (!_toUiFont.TryGetValue(key, out value))
                {
                    _toUiFont.Add(key, value = generatedValue);
                }

                return(value);
            }
        }
Пример #2
0
		static UIFont ToUIFont(string family, float size, FontAttributes attributes)
		{
			var key = new ToUIFontKey(family, size, attributes);

			lock (ToUiFont)
			{
				UIFont value;
				if (ToUiFont.TryGetValue(key, out value))
					return value;
			}

			var generatedValue = _ToUIFont(family, size, attributes);

			lock (ToUiFont)
			{
				UIFont value;
				if (!ToUiFont.TryGetValue(key, out value))
					ToUiFont.Add(key, value = generatedValue);
				return value;
			}
		}