Mercurial > hg > ugly-duckling
annotate src/app/visualisations/vertical-scale.component.ts @ 403:40ea40ebc2b3
Have animation controlled by a prop, clearing up animation tasks when set to false. Wire up accordingly.
author | Lucas Thompson <dev@lucas.im> |
---|---|
date | Fri, 02 Jun 2017 19:12:38 +0100 |
parents | a02e6ec4a9d2 |
children | 64ed45a0bad3 |
rev | line source |
---|---|
dev@388 | 1 /** |
dev@388 | 2 * Created by lucas on 01/06/2017. |
dev@388 | 3 */ |
dev@393 | 4 import {VerticalScaleRenderer} from './waves-base.component'; |
dev@388 | 5 import { |
dev@388 | 6 ChangeDetectionStrategy, |
dev@388 | 7 Component, |
dev@388 | 8 ContentChildren, |
dev@388 | 9 QueryList, |
dev@388 | 10 AfterViewInit |
dev@393 | 11 } from '@angular/core'; |
dev@388 | 12 |
dev@388 | 13 @Component({ |
dev@388 | 14 selector: 'ugly-vertical-scale', |
dev@388 | 15 template: '<ng-content></ng-content>', |
dev@388 | 16 changeDetection: ChangeDetectionStrategy.OnPush |
dev@388 | 17 }) |
dev@388 | 18 export class VerticalScaleComponent implements AfterViewInit { |
dev@388 | 19 |
dev@393 | 20 @ContentChildren( |
dev@393 | 21 VerticalScaleRenderer |
dev@393 | 22 ) bounded: QueryList<VerticalScaleRenderer>; |
dev@403 | 23 protected cachedRange: [number, number]; |
dev@388 | 24 |
dev@388 | 25 ngAfterViewInit(): void { |
dev@388 | 26 this.bounded.forEach(component => { |
dev@403 | 27 this.cachedRange = component.range; |
dev@403 | 28 if (this.cachedRange) { |
dev@403 | 29 component.renderScale(this.cachedRange); |
dev@388 | 30 } |
dev@388 | 31 }); |
dev@388 | 32 } |
dev@388 | 33 } |