diff --git a/projects/common/ui-elements/toggle-button/toggle-button.component.ts b/projects/common/ui-elements/toggle-button/toggle-button.component.ts index 08b8307e6ab50e42107c59d9ff6094e8f9bca1db..2ca71171d6eda9f0fa4e287e5a9062c4d2181bb1 100644 --- a/projects/common/ui-elements/toggle-button/toggle-button.component.ts +++ b/projects/common/ui-elements/toggle-button/toggle-button.component.ts @@ -7,6 +7,7 @@ import { FormElementComponent } from '../../directives/form-element-component.di template: ` <div class="mat-form-field"> <mat-button-toggle-group [formControl]="elementFormControl" + [value]="elementModel.value" [style.height.px]="elementModel.height"> <mat-button-toggle *ngFor="let option of elementModel.options; let i = index" [value]="i" diff --git a/projects/player/src/app/components/element-container/element-container.component.ts b/projects/player/src/app/components/element-container/element-container.component.ts index 50de60e539ca8481e7d6ecd035ae6783a96f62dc..0485a3cb07507e5d52272dbd80bfc3bf5c2c1ea5 100644 --- a/projects/player/src/app/components/element-container/element-container.component.ts +++ b/projects/player/src/app/components/element-container/element-container.component.ts @@ -1,5 +1,5 @@ import { - Component, OnInit, Input, ComponentFactoryResolver, ViewChild, ViewContainerRef, QueryList + Component, OnInit, Input, ComponentFactoryResolver, ViewChild, ViewContainerRef, QueryList, ChangeDetectorRef } from '@angular/core'; import { FormBuilder, FormControl, FormGroup, ValidatorFn @@ -59,7 +59,8 @@ export class ElementContainerComponent implements OnInit { private veronaPostService: VeronaPostService, private mediaPlayerService: MediaPlayerService, private unitStateElementMapperService: UnitStateElementMapperService, - private markingService: MarkingService) { + private markingService: MarkingService, + private changeDetectorRef: ChangeDetectorRef) { } ngOnInit(): void { @@ -119,8 +120,8 @@ export class ElementContainerComponent implements OnInit { elementComponent.parentForm = elementForm; const compoundChildren = elementComponent.getFormElementModelChildren(); this.subscribeCompoundChildren(elementComponent, compoundChildren); + this.registerFormGroup(elementForm); compoundChildren.forEach((element: InputElement) => { - this.registerFormGroup(elementForm); this.formService.registerFormControl({ id: element.id, formControl: new FormControl(element.value), @@ -165,7 +166,12 @@ export class ElementContainerComponent implements OnInit { child.domElement, this.pageIndex ); + const formChild = (child as FormElementComponent); + if (formChild) { + formChild.setFormValue(child.elementModel.value); + } }); + this.changeDetectorRef.detectChanges(); }); } }