import * as SRD from "../../src/main"; /** * @author Dylan Vorster */ export class Application{ protected activeModel: SRD.DiagramModel; protected diagramEngine: SRD.DiagramEngine; constructor(){ this.diagramEngine = new SRD.DiagramEngine(); this.diagramEngine.registerNodeFactory(new SRD.DefaultNodeFactory()); this.diagramEngine.registerLinkFactory(new SRD.DefaultLinkFactory()); this.newModel(); } public newModel(){ this.activeModel = new SRD.DiagramModel(); this.diagramEngine.setDiagramModel(this.activeModel); var node1 = new SRD.DefaultNodeModel("Node 1","rgb(0,192,255)"); var port1 = node1.addPort(new SRD.DefaultPortModel(false,"out-1","Out")); node1.x = 100; node1.y = 100; var node2 = new SRD.DefaultNodeModel("Node 2","rgb(192,255,0)"); var port2 = node2.addPort(new SRD.DefaultPortModel(true,"in-1","IN")); node2.x = 400; node2.y = 100; var link1 = new SRD.LinkModel(); link1.setSourcePort(port1); link1.setTargetPort(port2); this.activeModel.addNode(node1); this.activeModel.addNode(node2); this.activeModel.addLink(link1); } public getActiveDiagram(): SRD.DiagramModel{ return this.activeModel; } public getDiagramEngine(): SRD.DiagramEngine{ return this.diagramEngine; } }