diff --git a/projects/editor/src/app/dialog.service.ts b/projects/editor/src/app/dialog.service.ts index d959365248e7ae801012fad1aec2c6d5907267dd..ab988a1a5efd356b1c29f54dbcdd9b32253b9bec 100644 --- a/projects/editor/src/app/dialog.service.ts +++ b/projects/editor/src/app/dialog.service.ts @@ -196,11 +196,12 @@ export class RichTextEditDialog { <input matInput type="text" [value]="newPlayerConfig.hintLabel || data.player.hintLabel" (input)="newPlayerConfig.hintLabel = $any($event.target).value"> </mat-form-field> - <mat-form-field *ngIf="newPlayerConfig.hintLabel !== ''" appearance="fill"> + <mat-form-field *ngIf="newPlayerConfig.hintLabel || data.player.hintLabel" + appearance="fill"> <mat-label>{{ 'player.hintLabelDelay' | translate }}</mat-label> - <input matInput type="number" step="1000" - [value]="newPlayerConfig.hintLabelDelay" - (input)="newPlayerConfig.hintLabelDelay = $any($event.target).value"> + <input matInput type="number" step="1000" min="0" + [ngModel]="newPlayerConfig.hintLabelDelay || data.player.hintLabelDelay" + (ngModelChange)="newPlayerConfig.hintLabelDelay = $event"> </mat-form-field> </div> </mat-tab> @@ -235,13 +236,15 @@ export class RichTextEditDialog { </mat-form-field> <mat-form-field appearance="fill"> <mat-label>{{ 'player.minRuns' | translate }}</mat-label> - <input matInput type="number" [value]="newPlayerConfig.minRuns || data.player.minRuns" - (input)="newPlayerConfig.minRuns = $any($event.target).value"> + <input matInput type="number" min="0" + [ngModel]="newPlayerConfig.minRuns || data.player.minRuns" + (ngModelChange)="newPlayerConfig.minRuns = $event"> </mat-form-field> <mat-form-field appearance="fill"> <mat-label>{{ 'player.maxRuns' | translate }}</mat-label> - <input matInput type="number" [value]="newPlayerConfig.maxRuns || data.player.maxRuns" - (input)="newPlayerConfig.maxRuns = $any($event.target).value"> + <input matInput type="number" min="0" + [ngModel]="newPlayerConfig.maxRuns || data.player.maxRuns" + (ngModelChange)="newPlayerConfig.maxRuns = $event"> </mat-form-field> </div> </mat-tab> diff --git a/projects/editor/src/app/unit-view/page-view/properties-panel/element-style-properties.component.ts b/projects/editor/src/app/unit-view/page-view/properties-panel/element-style-properties.component.ts index a936e1faffa02ef4aaafef9833961ba9a57db4ef..28791f651974e9a21ec5ce71691eaf01cb060861 100644 --- a/projects/editor/src/app/unit-view/page-view/properties-panel/element-style-properties.component.ts +++ b/projects/editor/src/app/unit-view/page-view/properties-panel/element-style-properties.component.ts @@ -34,14 +34,20 @@ import { UIElement } from '../../../../../../common/models/uI-element'; <mat-form-field *ngIf="combinedProperties.fontSize != null" appearance="fill" class="mdInput textsingleline"> <mat-label>Schriftgröße</mat-label> - <input matInput type="number" [value]="combinedProperties.fontSize" - (input)="updateModel.emit({ property: 'fontSize', value: $any($event.target).value })"> + <input matInput type="number" #fontSize="ngModel" min="0" + [ngModel]="combinedProperties.fontSize" + (ngModelChange)="updateModel.emit({ property: 'fontSize', + value: $event, + isInputValid: fontSize.valid && $event !== null})"> </mat-form-field> <mat-form-field *ngIf="combinedProperties.lineHeight != null" appearance="fill" class="mdInput textsingleline"> <mat-label>Zeilenhöhe</mat-label> - <input matInput type="number" [value]="combinedProperties.lineHeight" - (input)="updateModel.emit({ property: 'lineHeight', value: $any($event.target).value })"> + <input matInput type="number" #lineHeight="ngModel" min="0" + [ngModel]="combinedProperties.lineHeight" + (ngModelChange)="updateModel.emit({ property: 'lineHeight', + value: $event, + isInputValid: lineHeight.valid && $event !== null })"> </mat-form-field> <mat-checkbox *ngIf="combinedProperties.bold != null" @@ -64,5 +70,5 @@ import { UIElement } from '../../../../../../common/models/uI-element'; }) export class ElementStylePropertiesComponent { @Input() combinedProperties: UIElement = {} as UIElement; - @Output() updateModel = new EventEmitter<{ property: string; value: string | boolean }>(); + @Output() updateModel = new EventEmitter<{ property: string; value: string | boolean, isInputValid?: boolean | null }>(); }