From 1c8c3de0a8539defc22f9f1dd473be60f884fb9c Mon Sep 17 00:00:00 2001 From: jojohoch <joachim.hoch@iqb.hu-berlin.de> Date: Tue, 18 Jan 2022 17:29:03 +0100 Subject: [PATCH] [player] Use elementComponent in ElementContainerComponent as property --- .../element-container.component.ts | 31 ++++++++++--------- 1 file changed, 16 insertions(+), 15 deletions(-) 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 eb63512fa..e1cddc1ab 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 @@ -41,6 +41,7 @@ export class ElementContainerComponent implements OnInit { @Input() parentArrayIndex!: number; @Input() pageIndex!: number; + elementComponent!: ElementComponent; isKeyboardOpen!: boolean; selectedColor!: string | null; selectedMode!: 'mark' | 'delete' | null; @@ -64,30 +65,30 @@ export class ElementContainerComponent implements OnInit { } ngOnInit(): void { - const elementComponent: ElementComponent = this.initElementComponent(); - this.registerAtUnitStateService(elementComponent); + this.elementComponent = this.initElementComponent(); + this.registerAtUnitStateService(this.elementComponent); - if (elementComponent instanceof FormElementComponent) { - this.initFormElement(elementComponent); - } else if (elementComponent instanceof CompoundElementComponent) { - this.initCompoundElement(elementComponent); - } else if (elementComponent instanceof MediaPlayerElementComponent) { + if (this.elementComponent instanceof FormElementComponent) { + this.initFormElement(this.elementComponent); + } else if (this.elementComponent instanceof CompoundElementComponent) { + this.initCompoundElement(this.elementComponent); + } else if (this.elementComponent instanceof MediaPlayerElementComponent) { this.mediaPlayerService.registerMediaElement( this.elementModel.id, - elementComponent, + this.elementComponent, this.elementModel.playerProps?.activeAfterID as string, this.elementModel.playerProps?.minRuns as number === 0 ); } - this.subscribeStartSelection(elementComponent as TextComponent); - this.subscribeApplySelection(elementComponent as TextComponent); - this.subscribeMediaPlayStatusChanged(elementComponent as MediaPlayerElementComponent); - this.subscribeMediaValidStatusChanged(elementComponent as MediaPlayerElementComponent); - this.subscribeNavigationRequested(elementComponent as ButtonComponent); + this.subscribeStartSelection(this.elementComponent as TextComponent); + this.subscribeApplySelection(this.elementComponent as TextComponent); + this.subscribeMediaPlayStatusChanged(this.elementComponent as MediaPlayerElementComponent); + this.subscribeMediaValidStatusChanged(this.elementComponent as MediaPlayerElementComponent); + this.subscribeNavigationRequested(this.elementComponent as ButtonComponent); this.subscribeElementValueChanged( - elementComponent as FormElementComponent | TextComponent | ImageComponent | MediaPlayerElementComponent + this.elementComponent as FormElementComponent | TextComponent | ImageComponent | MediaPlayerElementComponent ); - this.subscribeForKeyboardEvents(elementComponent as TextFieldComponent | TextAreaComponent); + this.subscribeForKeyboardEvents(this.elementComponent as TextFieldComponent | TextAreaComponent); } private initElementComponent(): ElementComponent { -- GitLab