mirror of
https://github.com/GNS3/gns3-web-ui.git
synced 2025-06-20 23:55:04 +00:00
Initial implementaion - global variables
This commit is contained in:
@ -545,7 +545,7 @@ export class ProjectMapComponent implements OnInit, OnDestroy {
|
|||||||
|
|
||||||
editProject() {
|
editProject() {
|
||||||
const dialogRef = this.dialog.open(EditProjectDialogComponent, {
|
const dialogRef = this.dialog.open(EditProjectDialogComponent, {
|
||||||
width: '500px',
|
width: '600px',
|
||||||
autoFocus: false
|
autoFocus: false
|
||||||
});
|
});
|
||||||
let instance = dialogRef.componentInstance;
|
let instance = dialogRef.componentInstance;
|
||||||
|
@ -1,5 +1,8 @@
|
|||||||
<h1 mat-dialog-title>Edit project</h1>
|
<h1 mat-dialog-title>Edit project</h1>
|
||||||
|
|
||||||
|
<div class="modal-form-container">
|
||||||
|
<mat-tab-group>
|
||||||
|
<mat-tab label="General">
|
||||||
<form [formGroup]="formGroup">
|
<form [formGroup]="formGroup">
|
||||||
<mat-form-field class="form-field">
|
<mat-form-field class="form-field">
|
||||||
<input matInput formControlName="projectName" placeholder="Project name" type="text">
|
<input matInput formControlName="projectName" placeholder="Project name" type="text">
|
||||||
@ -37,6 +40,21 @@
|
|||||||
<mat-checkbox [ngModelOptions]="{standalone: true}" [(ngModel)]="project.show_interface_labels">
|
<mat-checkbox [ngModelOptions]="{standalone: true}" [(ngModel)]="project.show_interface_labels">
|
||||||
Show interface labels at start
|
Show interface labels at start
|
||||||
</mat-checkbox>
|
</mat-checkbox>
|
||||||
|
</mat-tab>
|
||||||
|
<mat-tab label="Global variables">
|
||||||
|
<form [formGroup]="variableformGroup">
|
||||||
|
<mat-form-field class="form-field">
|
||||||
|
<input matInput formControlName="name" placeholder="Name" type="text">
|
||||||
|
</mat-form-field>
|
||||||
|
|
||||||
|
<mat-form-field class="form-field">
|
||||||
|
<input matInput formControlName="value" placeholder="Value" type="number">
|
||||||
|
</mat-form-field>
|
||||||
|
</form>
|
||||||
|
|
||||||
|
</mat-tab>
|
||||||
|
</mat-tab-group>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div mat-dialog-actions>
|
<div mat-dialog-actions>
|
||||||
<button mat-button (click)="onNoClick()" color="accent">Cancel</button>
|
<button mat-button (click)="onNoClick()" color="accent">Cancel</button>
|
||||||
|
@ -2,7 +2,7 @@ import { Component, OnInit, Injectable } from '@angular/core';
|
|||||||
import { MatDialogRef } from '@angular/material';
|
import { MatDialogRef } from '@angular/material';
|
||||||
import { FormGroup, FormBuilder, FormControl, Validators } from '@angular/forms';
|
import { FormGroup, FormBuilder, FormControl, Validators } from '@angular/forms';
|
||||||
import { Server } from '../../../models/server';
|
import { Server } from '../../../models/server';
|
||||||
import { Project } from '../../../models/project';
|
import { Project, ProjectVariable } from '../../../models/project';
|
||||||
import { ToasterService } from '../../../services/toaster.service';
|
import { ToasterService } from '../../../services/toaster.service';
|
||||||
import { NonNegativeValidator } from '../../../validators/non-negative-validator';
|
import { NonNegativeValidator } from '../../../validators/non-negative-validator';
|
||||||
import { ProjectService } from '../../../services/project.service';
|
import { ProjectService } from '../../../services/project.service';
|
||||||
@ -16,6 +16,8 @@ export class EditProjectDialogComponent implements OnInit {
|
|||||||
server: Server;
|
server: Server;
|
||||||
project: Project;
|
project: Project;
|
||||||
formGroup: FormGroup;
|
formGroup: FormGroup;
|
||||||
|
variableFormGroup: FormGroup;
|
||||||
|
projectVariables: ProjectVariable[];
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
public dialogRef: MatDialogRef<EditProjectDialogComponent>,
|
public dialogRef: MatDialogRef<EditProjectDialogComponent>,
|
||||||
@ -31,6 +33,11 @@ export class EditProjectDialogComponent implements OnInit {
|
|||||||
nodeGridSize: new FormControl('', [Validators.required, nonNegativeValidator.get]),
|
nodeGridSize: new FormControl('', [Validators.required, nonNegativeValidator.get]),
|
||||||
drawingGridSize: new FormControl('', [Validators.required, nonNegativeValidator.get])
|
drawingGridSize: new FormControl('', [Validators.required, nonNegativeValidator.get])
|
||||||
});
|
});
|
||||||
|
|
||||||
|
this.variableFormGroup = this.formBuilder.group({
|
||||||
|
name: new FormControl('', [Validators.required]),
|
||||||
|
value: new FormControl('', [Validators.required])
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
|
@ -16,4 +16,10 @@ export class Project {
|
|||||||
show_layers: boolean;
|
show_layers: boolean;
|
||||||
show_grid: boolean;
|
show_grid: boolean;
|
||||||
snap_to_grid: boolean;
|
snap_to_grid: boolean;
|
||||||
|
variables: ProjectVariable[];
|
||||||
|
}
|
||||||
|
|
||||||
|
export class ProjectVariable {
|
||||||
|
name: string;
|
||||||
|
value: string;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user