annotate src/app/visualisations/instants/instants.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 3ace7672638b
children
rev   line source
dev@381 1 /**
dev@381 2 * Created by lucast on 31/05/2017.
dev@381 3 */
dev@488 4 import {PlayheadRenderer, WavesComponent} from '../waves-base.component';
dev@381 5 import {
dev@381 6 ChangeDetectionStrategy,
dev@381 7 Component,
dev@381 8 Input,
dev@381 9 } from '@angular/core';
dev@381 10 import {Instant} from '../FeatureUtilities';
dev@381 11 import Waves from 'waves-ui-piper';
dev@381 12
dev@381 13 @Component({
dev@381 14 selector: 'ugly-instants',
dev@381 15 templateUrl: '../waves-template.html',
dev@381 16 styleUrls: ['../waves-template.css'],
dev@405 17 changeDetection: ChangeDetectionStrategy.OnPush,
dev@405 18 providers: [
dev@488 19 {provide: PlayheadRenderer, useExisting: InstantsComponent},
dev@405 20 {provide: WavesComponent, useExisting: InstantsComponent}
dev@405 21 ]
dev@381 22 })
dev@383 23 export class InstantsComponent extends WavesComponent<Instant[]> {
dev@381 24 @Input() set instants(instants: Instant[]) {
dev@383 25 this.feature = instants;
dev@381 26 }
dev@381 27
dev@383 28 protected get featureLayers(): Layer[] {
dev@383 29 return [
dev@381 30 new Waves.helpers.TickLayer(
dev@383 31 this.feature,
dev@381 32 {
dev@381 33 height: this.height,
dev@381 34 color: this.colour,
dev@381 35 labelPosition: 'bottom',
dev@381 36 shadeSegments: true
dev@381 37 }
dev@383 38 )
dev@383 39 ];
dev@381 40 }
dev@381 41 }