Ejemplo n.º 1
0
        public ClassDiagramNodeData(SoftwareProcessElement processElement, String category)
            : base(processElement, category)
        {
            Attributes = new ObservableCollection <String>();

            var type       = processElement.GetType();
            var properties = type.GetProperties();

            var ignoredProperties = new List <string> {
                "IRI", "Name", "Description", "Type"
            };
            var classSpecificProperties = properties.Where(p => !ignoredProperties.Contains(p.Name)).ToList();

            foreach (var attribute in classSpecificProperties.Select(p => p.Name))
            {
                Attributes.Add(attribute);
            }

            var parametersField = type.GetFields().FirstOrDefault(f => f.Name == "Parameters");

            if (parametersField != null)
            {
                List <Parameter> parameterList = parametersField.GetValue(processElement) as List <Parameter>;
                foreach (var parameter in parameterList.Select(p => p.Name))
                {
                    Attributes.Add(parameter);
                }
            }
        }
 public ActivityDiagramNodeData(SoftwareProcessElement processElement, String category)
     : base(processElement, category)
 {
     if (category == Constants.UML_AD_SWIMLANE)
     {
         this.IsSubGraph = true;
     }
 }
Ejemplo n.º 3
0
 public UseCaseDiagramNodeData(SoftwareProcessElement processElement, String category)
     : base(processElement, category)
 {
     if (category == Constants.UML_UCD_SYSTEM)
     {
         this.IsSubGraph = true;
     }
 }
Ejemplo n.º 4
0
        public UmlNodeData(SoftwareProcessElement processElement, String category) : this()
        {
            IRI         = processElement.IRI;
            Name        = processElement.Name;
            Description = processElement.Description;
            Stereotype  = processElement.GetUPMMType();
            BorderColor = "Black";

            Category = category;
            Key      = processElement.Name + "-" + category;

            Width  = 400;
            Height = 600;
        }