map contextmenu
This commit is contained in:
parent
8e6dbe9bc3
commit
57470501c0
|
@ -58,19 +58,20 @@
|
|||
|
||||
<p-contextMenu #cmProbe [model]="contextMenuProbe"></p-contextMenu>
|
||||
<p-contextMenu #cmHost [model]="contextMenuHost"></p-contextMenu>
|
||||
<p-contextMenu #cmService [model]="contextMenuService"></p-contextMenu>
|
||||
<p-contextMenu #cmSensor [model]="contextMenuSensor"></p-contextMenu>
|
||||
|
||||
|
||||
<!-- <p-sidebar [(visible)]="visibleSidebar" position="bottom" [baseZIndex]="10000">
|
||||
<div *ngIf="selectedNodeType === 'probe'">
|
||||
<of-probe-summary [probe]="selectedNode" [visible]="visibleSidebar"></of-probe-summary>
|
||||
<p-sidebar [(visible)]="visibleSidebar" position="bottom" [baseZIndex]="10000" *ngIf="selectedNode">
|
||||
<div *ngIf="selectedNode.type === 'probe'">
|
||||
<of-probe-summary [probe]="targetNodeForView" [visible]="visibleSidebar"></of-probe-summary>
|
||||
</div>
|
||||
<div *ngIf="selectedNodeType === 'host'">
|
||||
<of-host-summary [host]="selectedNode" [visible]="visibleSidebar"></of-host-summary>
|
||||
<div *ngIf="selectedNode.type === 'host'">
|
||||
<of-host-summary [host]="targetNodeForView" [visible]="visibleSidebar"></of-host-summary>
|
||||
</div>
|
||||
<div *ngIf="selectedNodeType === 'service'">
|
||||
<of-service-summary [service]="selectedNode" [visible]="visibleSidebar"></of-service-summary>
|
||||
<div *ngIf="selectedNode.type === 'service'">
|
||||
<of-service-summary [service]="targetNodeForView" [visible]="visibleSidebar"></of-service-summary>
|
||||
</div>
|
||||
</p-sidebar> -->
|
||||
</p-sidebar>
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -54,15 +54,19 @@ export class MapComponent implements OnInit, AfterContentInit {
|
|||
|
||||
DEFAULT_EXPANDED: Boolean = true;
|
||||
|
||||
// visibleSidebar = false;
|
||||
// selectedNodeType: string;
|
||||
// selectedNode: Object = null;
|
||||
|
||||
contextMenuProbe: MenuItem[];
|
||||
contextMenuHost: MenuItem[];
|
||||
contextMenuService: MenuItem[];
|
||||
contextMenuSensor: MenuItem[];
|
||||
|
||||
@ViewChild('cmProbe') cmProbe: ContextMenu;
|
||||
@ViewChild('cmHost') cmHost: ContextMenu;
|
||||
@ViewChild('cmService') cmService: ContextMenu;
|
||||
@ViewChild('cmSensor') cmSensor: ContextMenu;
|
||||
|
||||
visibleSidebar = false;
|
||||
selectedNode: TreeNode = null;
|
||||
targetNodeForView: Object = null;
|
||||
|
||||
constructor(private router: Router,
|
||||
private listStore: Store<ListStore.State>,
|
||||
|
@ -122,13 +126,35 @@ export class MapComponent implements OnInit, AfterContentInit {
|
|||
|
||||
initContextMenu() {
|
||||
this.contextMenuProbe = [
|
||||
// { label: 'Delete file', icon: 'fa-delete', command: (event) => this.deleteFile(this.selectedMenuItem) }
|
||||
{ label: 'ProbeMenu', icon: 'fa-check' }
|
||||
{ label: 'Probe Menu', command: (event) => this.closeContextMenu() },
|
||||
{ label: 'View info', icon: 'fa-plus', command: (event) => this.viewInfo() }
|
||||
];
|
||||
this.contextMenuHost = [
|
||||
{ label: 'HostMenu1', icon: 'fa-check' },
|
||||
{ label: 'HostMenu2', icon: 'fa-check' },
|
||||
{ label: 'Host Menu', command: (event) => this.closeContextMenu() },
|
||||
{ label: 'View this Host', icon: 'fa-plus', command: (event) => this.viewInfo() },
|
||||
{ label: 'Add sensor', icon: 'fa-plus', command: (event) => this.addSensor() },
|
||||
{ label: 'Traceroute', icon: 'fa-plus' },
|
||||
{ label: 'ARP Test', icon: 'fa-plus' },
|
||||
{ label: 'Ping Test', icon: 'fa-plus' },
|
||||
];
|
||||
this.contextMenuService = [
|
||||
{ label: 'Service Menu', command: (event) => this.closeContextMenu() },
|
||||
{ label: 'View this Service', icon: 'fa-plus', command: (event) => this.viewInfo() },
|
||||
{ label: 'Add sensor', icon: 'fa-plus', command: (event) => this.addSensor() },
|
||||
];
|
||||
this.contextMenuSensor = [
|
||||
{ label: 'Sensor Menu', command: (event) => this.closeContextMenu() },
|
||||
{ label: 'Edit', icon: 'fa-plus', command: (event) => this.viewInfo() },
|
||||
{ label: 'Remove', icon: 'fa-plus', command: (event) => this.addSensor() },
|
||||
];
|
||||
}
|
||||
|
||||
closeContextMenu() {
|
||||
this.cmProbe.hide();
|
||||
this.cmHost.hide();
|
||||
this.cmService.hide();
|
||||
this.cmSensor.hide();
|
||||
|
||||
}
|
||||
|
||||
searchObj(treeList: any[], target: Target, searchList: any[]) {
|
||||
|
@ -241,7 +267,9 @@ export class MapComponent implements OnInit, AfterContentInit {
|
|||
expandedIcon: 'fa-folder-open',
|
||||
collapsedIcon: 'fa-folder',
|
||||
expanded: this.DEFAULT_EXPANDED.valueOf(),
|
||||
obj: key,
|
||||
obj: {
|
||||
id: key
|
||||
},
|
||||
children: [],
|
||||
};
|
||||
|
||||
|
@ -398,42 +426,46 @@ export class MapComponent implements OnInit, AfterContentInit {
|
|||
|
||||
onNodeSelect(event) {
|
||||
const nodeType = event.node.type;
|
||||
// this.selectedNodeType = nodeType;
|
||||
this.selectedNode = event.node;
|
||||
if (nodeType === 'probe') {
|
||||
this.router.navigate(['probe', event.node.obj, 'info']);
|
||||
this.router.navigate(['probe', event.node.obj.id, 'info']);
|
||||
} else if (nodeType === 'host') {
|
||||
}
|
||||
|
||||
// const nodeType = event.node.type;
|
||||
// if (nodeType !== 'probe' && nodeType !== 'host' && nodeType !== 'service') {
|
||||
// return;
|
||||
// }
|
||||
// this.selectedNodeType = nodeType;
|
||||
// if (nodeType === 'probe') {
|
||||
// const probe = {
|
||||
// id: event.node.obj
|
||||
// };
|
||||
// this.selectedNode = probe;
|
||||
// } else {
|
||||
// this.selectedNode = event.node.obj;
|
||||
// }
|
||||
|
||||
// this.visibleSidebar = true;
|
||||
}
|
||||
|
||||
public nodeMenu(event: MouseEvent, node: any) {
|
||||
viewInfo() {
|
||||
const nodeType = this.selectedNode.type;
|
||||
if (nodeType !== 'probe' && nodeType !== 'host' && nodeType !== 'service') {
|
||||
return;
|
||||
}
|
||||
this.targetNodeForView = this.selectedNode['obj'];
|
||||
this.visibleSidebar = true;
|
||||
}
|
||||
|
||||
nodeMenu(event: MouseEvent, node: any) {
|
||||
this.selectedNode = node;
|
||||
|
||||
this.cmProbe.hide();
|
||||
this.cmHost.hide();
|
||||
this.cmService.hide();
|
||||
this.cmSensor.hide();
|
||||
|
||||
if (node.type === 'probe') {
|
||||
this.cmProbe.show(event);
|
||||
}
|
||||
if (node.type === 'host') {
|
||||
} else if (node.type === 'host') {
|
||||
this.cmHost.show(event);
|
||||
} else if (node.type === 'service') {
|
||||
this.cmService.show(event);
|
||||
} else if (node.type === 'sensor') {
|
||||
this.cmSensor.show(event);
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
addSensor() {
|
||||
alert('으악 내일 할래');
|
||||
}
|
||||
}
|
||||
|
||||
const testInfraList = [
|
||||
|
|
Loading…
Reference in New Issue
Block a user