public static ParsePaletteColor ( Cairo.Color>.Dictionary |
||
palette | Cairo.Color>.Dictionary | |
value | string | |
Результат | Cairo.Color |
public static ChunkStyle Create(XElement element, Dictionary <string, Cairo.Color> palette) { var result = new ChunkStyle(); foreach (var node in element.DescendantNodes()) { if (node.NodeType == System.Xml.XmlNodeType.Element) { var el = (XElement)node; switch (el.Name.LocalName) { case "name": result.Name = el.Value; break; case "fore": result.Foreground = ColorScheme.ParsePaletteColor(palette, el.Value); break; case "back": result.Background = ColorScheme.ParsePaletteColor(palette, el.Value); break; case "weight": FontWeight weight; if (!Enum.TryParse <FontWeight> (el.Value, true, out weight)) { throw new InvalidDataException(el.Value + " is no valid text weight values are: " + string.Join(",", Enum.GetNames(typeof(FontWeight)))); } result.FontWeight = weight; break; case "style": FontStyle style; if (!Enum.TryParse <FontStyle> (el.Value, true, out style)) { throw new InvalidDataException(el.Value + " is no valid text weight values are: " + string.Join(",", Enum.GetNames(typeof(FontStyle)))); } result.FontStyle = style; break; default: throw new InvalidDataException("Invalid element in text color:" + el.Name); } } } return(result); }
public static AmbientColor Create(XElement element, Dictionary <string, Color> palette) { var result = new AmbientColor(); foreach (var node in element.DescendantNodes()) { if (node.NodeType == System.Xml.XmlNodeType.Element) { var el = (XElement)node; switch (el.Name.LocalName) { case "name": result.Name = el.Value; break; default: result.Colors.Add(Tuple.Create(el.Name.LocalName, ColorScheme.ParsePaletteColor(palette, el.Value))); break; } } } return(result); }