private void ExecuteDrawableFont(XmlElement element, Collection<IDrawable> drawables)
{
Hashtable arguments = new Hashtable();
foreach (XmlAttribute attribute in element.Attributes)
{
if (attribute.Name == "family")
arguments["family"] = Variables.GetValue<String>(attribute);
else if (attribute.Name == "stretch")
arguments["stretch"] = Variables.GetValue<FontStretch>(attribute);
else if (attribute.Name == "style")
arguments["style"] = Variables.GetValue<FontStyleType>(attribute);
else if (attribute.Name == "weight")
arguments["weight"] = Variables.GetValue<FontWeight>(attribute);
}
if (OnlyContains(arguments, "family"))
drawables.Add(new DrawableFont((String)arguments["family"]));
else if (OnlyContains(arguments, "family", "style", "weight", "stretch"))
drawables.Add(new DrawableFont((String)arguments["family"], (FontStyleType)arguments["style"], (FontWeight)arguments["weight"], (FontStretch)arguments["stretch"]));
else
throw new ArgumentException("Invalid argument combination for 'font', allowed combinations are: [family] [family, style, weight, stretch]");
}
private void ExecuteDrawableFontPointSize(XmlElement element, Collection<IDrawable> drawables)