Пример #1
0
 /// <summary>
 /// Hilfsmethode zum löschen von Stilangaben im Fall des Setzens einer Übergeordneten oder Untergeordneten
 /// wie z.B. margins, margins-top
 /// </summary>
 /// <param name="key"></param>
 private void RemoveIfContains(StyleKeys key)
 {
     if (CurrentStyles.Keys.Contains(key))
     {
         CurrentStyles.Remove(key);
     }
 }
Пример #2
0
 /// <summary>
 /// Hilfsmethode zum Hinzufügen eines aktuell definierten Stils
 /// </summary>
 /// <param name="StyleKey"></param>
 /// <param name="Value"></param>
 /// <param name="IsInheritable"></param>
 void SetStyle(StyleKeys StyleKey, CssMeasure Value, bool IsInheritable)
 {
     CurrentStyles[StyleKey] = new StyleDefinition()
     {
         Key           = StyleKey,
         IsInheritable = IsInheritable,
         MeasuredValue = Value
     };
 }
Пример #3
0
        public static void AddStyle(CompilerState state, string selector, DynamicDictionary style)
        {
            var styleSelector = StyleSelectorParser.Parse(selector);
            var container     = new StyleContainer(styleSelector);

            foreach (var(name, value) in style.GetContents())
            {
                if (value == null)
                {
                    state.Context.Logger.Warning($"Style contains null value for property '{name}'.");
                    continue;
                }

                var propName = StringUtility.ToPascalCase(name);
                if (StyleKeys.TryGetByName(propName, out var styleKey) && state.Context.Converters.TryConvert(value, styleKey.Type, out var propertyValue))
                {
                    styleKey.Set(container, propertyValue);
                }
            }

            state.Document.Styles.Add(container);
        }
Пример #4
0
 /// <summary>
 /// Hilfsmethode zum abrufen eines aktuell definierten Stils
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="StyleKey"></param>
 /// <returns></returns>
 T GetStyle <T>(StyleKeys StyleKey)
     where T : CssMeasure
 {
     return(CurrentStyles.ContainsKey(StyleKey) ? (T)CurrentStyles[StyleKey].MeasuredValue : null);
 }