Mercurial > hg > ugly-duckling
comparison src/app/visualisations/waves-base.component.ts @ 489:ab43880f1cd5
Rename to something a bit more appropriate.
author | Lucas Thompson <dev@lucas.im> |
---|---|
date | Wed, 05 Jul 2017 18:52:12 +0100 |
parents | 64ed45a0bad3 |
children | 97ffab611a55 |
comparison
equal
deleted
inserted
replaced
488:64ed45a0bad3 | 489:ab43880f1cd5 |
---|---|
9 import {ShapedFeatureData} from './FeatureUtilities'; | 9 import {ShapedFeatureData} from './FeatureUtilities'; |
10 | 10 |
11 const trackIdGenerator = countingIdProvider(0); | 11 const trackIdGenerator = countingIdProvider(0); |
12 | 12 |
13 // has to be an abstract class vs as interface for Angular's DI | 13 // has to be an abstract class vs as interface for Angular's DI |
14 export abstract class VerticallyBounded<T> { | 14 export abstract class VerticallyLabelled<T> { |
15 abstract get range(): T; | 15 abstract get labels(): T; |
16 } | 16 } |
17 | 17 |
18 export abstract class VerticalScaleRenderer<T> extends VerticallyBounded<T> { | 18 export abstract class VerticalScaleRenderer<T> extends VerticallyLabelled<T> { |
19 abstract renderScale(range: T): void; | 19 abstract renderScale(labels: T): void; |
20 } | 20 } |
21 | 21 |
22 export abstract class VerticalValueInspectorRenderer | 22 export abstract class VerticalValueInspectorRenderer |
23 extends VerticalScaleRenderer<[number, number]> { | 23 extends VerticalScaleRenderer<[number, number]> { |
24 // TODO how do I know these layers are actually 'describable'? | 24 // TODO how do I know these layers are actually 'describable'? |
224 } | 224 } |
225 | 225 |
226 export abstract class VerticallyBoundedWavesComponent | 226 export abstract class VerticallyBoundedWavesComponent |
227 <T extends ShapedFeatureData> extends WavesComponent<T> | 227 <T extends ShapedFeatureData> extends WavesComponent<T> |
228 implements VerticalScaleRenderer<[number, number]> { | 228 implements VerticalScaleRenderer<[number, number]> { |
229 abstract range: [number, number]; | 229 abstract labels: [number, number]; |
230 | 230 |
231 renderScale(range: [number, number]): void { | 231 renderScale(labels: [number, number]): void { |
232 this.addLayer(new Waves.helpers.ScaleLayer({ | 232 this.addLayer(new Waves.helpers.ScaleLayer({ |
233 tickColor: this.colour, | 233 tickColor: this.colour, |
234 textColor: this.colour, | 234 textColor: this.colour, |
235 height: this.height, | 235 height: this.height, |
236 yDomain: range | 236 yDomain: labels |
237 })); | 237 })); |
238 } | 238 } |
239 } | 239 } |
240 | 240 |
241 export abstract class VerticallyBinnedWavesComponent | 241 export abstract class VerticallyBinnedWavesComponent |
242 <T extends ShapedFeatureData> extends WavesComponent<T> | 242 <T extends ShapedFeatureData> extends WavesComponent<T> |
243 implements VerticalScaleRenderer<string[]> { | 243 implements VerticalScaleRenderer<string[]> { |
244 abstract range: string[]; | 244 abstract labels: string[]; |
245 | 245 |
246 renderScale(binNames: string[]): void { | 246 renderScale(labels: string[]): void { |
247 this.addLayer(new Waves.helpers.DiscreteScaleLayer({ | 247 this.addLayer(new Waves.helpers.DiscreteScaleLayer({ |
248 tickColor: this.colour, | 248 tickColor: this.colour, |
249 textColor: this.colour, | 249 textColor: this.colour, |
250 height: this.height, | 250 height: this.height, |
251 binNames | 251 labels |
252 })); | 252 })); |
253 } | 253 } |
254 } | 254 } |
255 | 255 |
256 export abstract class InspectableVerticallyBoundedComponent | 256 export abstract class InspectableVerticallyBoundedComponent |