From 660b659f78d9ae557d8676da75b384c9618647ec Mon Sep 17 00:00:00 2001
From: ziajka <dominik.ziajka@gmail.com>
Date: Mon, 4 Dec 2017 13:06:18 +0100
Subject: [PATCH] Links on different layer

---
 src/app/cartography/shared/models/link-status.model.ts | 10 +---------
 src/app/cartography/shared/widgets/links.widget.ts     | 10 ++++++++--
 .../node-select-interface.component.html               |  2 +-
 3 files changed, 10 insertions(+), 12 deletions(-)

diff --git a/src/app/cartography/shared/models/link-status.model.ts b/src/app/cartography/shared/models/link-status.model.ts
index b2572851..b1bd66a6 100644
--- a/src/app/cartography/shared/models/link-status.model.ts
+++ b/src/app/cartography/shared/models/link-status.model.ts
@@ -1,11 +1,3 @@
 export class LinkStatus {
-  x: number;
-  y: number;
-  status: string;
-
-  public constructor(x: number, y: number, status: string) {
-    this.x = x;
-    this.y = y;
-    this.status = status;
-  }
+  public constructor(public x: number, public y: number, public status: string) {}
 }
diff --git a/src/app/cartography/shared/widgets/links.widget.ts b/src/app/cartography/shared/widgets/links.widget.ts
index db7167ce..57bad9da 100644
--- a/src/app/cartography/shared/widgets/links.widget.ts
+++ b/src/app/cartography/shared/widgets/links.widget.ts
@@ -101,8 +101,14 @@ export class LinksWidget implements Widget {
 
     this.multiLinkCalculatorHelper.assignDataToLinks(links);
 
-    const link = view
-      .selectAll("g.link")
+    const linksLayer = view.selectAll("g.links").data([{}]);
+    linksLayer
+      .enter()
+        .append<SVGGElement>('g')
+          .attr("class", "links");
+
+    const link = linksLayer
+      .selectAll<SVGGElement, Link>("g.link")
       .data(links.filter((l: Link) => {
         return l.target && l.source;
       }));
diff --git a/src/app/shared/node-select-interface/node-select-interface.component.html b/src/app/shared/node-select-interface/node-select-interface.component.html
index b44826b0..d912c26b 100644
--- a/src/app/shared/node-select-interface/node-select-interface.component.html
+++ b/src/app/shared/node-select-interface/node-select-interface.component.html
@@ -2,7 +2,7 @@
   <span [matMenuTriggerFor]="selectInterfaceMenu"></span>
   <mat-menu #selectInterfaceMenu="matMenu">
       <button mat-menu-item *ngFor="let port of node.ports" (click)="chooseInterface(port)">
-        <mat-icon>info</mat-icon>
+        <mat-icon>add_circle_outline</mat-icon>
         <span>{{ port.name }}</span>
       </button>
   </mat-menu>