/// <summary> /// Initializes a new instance of the <see cref="DiagramItem" /> class. /// </summary> /// <param name="definition">The definition.</param> /// <param name="diagramContext">The diagram context.</param> internal DiagramItem(DiagramItemDefinition definition, DiagramContext diagramContext) { Definition = definition; DiagramContext = diagramContext; ContainingDiagramCanvas = Output; initialize(); }
/// <summary> /// Add drawing definition into context. Given drawing /// definition will be displayed in output. /// </summary> /// <param name="drawing">Defined drawing.</param> public void DrawItem(DiagramItemDefinition drawing) { if (ContainsDrawing(drawing.ID)) { return; } _definitions.Add(drawing.ID, drawing); }
/// <summary> /// Initializes a new instance of the <see cref="DiagramItem" /> class. /// </summary> /// <param name="definition">The definition.</param> /// <param name="parentItem">The parent item.</param> /// <param name="slot">The slot.</param> internal DiagramItem(DiagramItemDefinition definition, DiagramItem parentItem, SlotCanvas slot) { ContainingDiagramCanvas = slot; Definition = definition; ParentItem = parentItem; ParentItem._children.Add(this); DiagramContext = parentItem.DiagramContext; initialize(); }
/// <summary> /// Get all defined join points for given drawing definition. /// </summary> /// <param name="definition">Drawing definition which join points will be returned.</param> /// <returns>Defined join points.</returns> internal IEnumerable <ConnectorDefinition> GetConnectorDefinitions(DiagramItemDefinition definition) { JoinPointDefinitions definitions; if (_joinPointDefintions.TryGetValue(definition.ID, out definitions)) { return(definitions.Values); } return(new ConnectorDefinition[0]); }