public static SimpleSymbolDefinition CreateDefault()
        {
            var simpleSym = new SimpleSymbolDefinition()
            {
                Graphics            = new System.ComponentModel.BindingList <GraphicBase>(),
                ParameterDefinition = new ParameterDefinition()
                {
                    Parameter = new System.ComponentModel.BindingList <Parameter>()
                }
            };

            return(simpleSym);
        }
        public static IResource Deserialize(string xml)
        {
            //HACK: We have to peek at the XML to determine if this is simple or compound.
            var doc = new XmlDocument();

            doc.LoadXml(xml);
            if (doc.DocumentElement.Name == "SimpleSymbolDefinition") //NOXLATE
            {
                return(SimpleSymbolDefinition.Deserialize(xml));
            }
            else
            {
                if (doc.DocumentElement.Name == "CompoundSymbolDefinition") //NOXLATE
                {
                    return(CompoundSymbolDefinition.Deserialize(xml));
                }
                else //WTF?
                {
                    throw new SerializationException();
                }
            }
        }
 public static ISimpleSymbolDefinition CreateDefaultSimple()
 {
     return(SimpleSymbolDefinition.CreateDefault());
 }