Mercurial > hg > ugly-duckling
diff src/app/visualisations/curve/curve.component.ts @ 488:64ed45a0bad3
Introduce PlayheadRenderer, implement in the waves base. Make VerticallyBounded and VerticalScaleRenderer generic and remove bin equivalents. Forward calls for a PlayheadRenderer from VerticalScaleComponent on to its children. Also update other components accordingly.
author | Lucas Thompson <dev@lucas.im> |
---|---|
date | Wed, 05 Jul 2017 18:42:12 +0100 |
parents | 89674c064cda |
children | ab43880f1cd5 |
line wrap: on
line diff
--- a/src/app/visualisations/curve/curve.component.ts Wed Jul 05 17:28:24 2017 +0100 +++ b/src/app/visualisations/curve/curve.component.ts Wed Jul 05 18:42:12 2017 +0100 @@ -10,6 +10,8 @@ import {OnSeekHandler} from '../../playhead/PlayHeadHelpers'; import {VectorFeature} from 'piper/HigherLevelUtilities'; import { + PlayheadManager, + PlayheadRenderer, VerticallyBounded, VerticalScaleRenderer, VerticalValueInspectorRenderer, @@ -33,10 +35,13 @@ {provide: VerticallyBounded, useExisting: CurveComponent }, {provide: VerticalScaleRenderer, useExisting: CurveComponent}, {provide: VerticalValueInspectorRenderer, useExisting: CurveComponent}, + {provide: PlayheadRenderer, useExisting: CurveComponent }, {provide: WavesComponent, useExisting: CurveComponent} ] }) -export class CurveComponent implements VerticalValueInspectorRenderer { +export class CurveComponent + implements VerticalValueInspectorRenderer, PlayheadRenderer { + @Input() timeline: Timeline; // TODO refactor WaveComponents to have own Timeline, sharing a TimeContext @Input() onSeek: OnSeekHandler; @Input() width: number; @@ -45,6 +50,10 @@ @Input() duration: number; @ViewChild(TracksComponent) tracksComponent: TracksComponent; + renderPlayhead(initialTime: number, colour: string): PlayheadManager { + return this.tracksComponent.renderPlayhead(initialTime, colour); + } + renderInspector(range: [number, number], unit?: string): void { this.tracksComponent.renderInspector(range, unit); }