diff options
Diffstat (limited to 'altosuilib/AltosUIFlightSeries.java')
| -rw-r--r-- | altosuilib/AltosUIFlightSeries.java | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/altosuilib/AltosUIFlightSeries.java b/altosuilib/AltosUIFlightSeries.java new file mode 100644 index 00000000..d15c4071 --- /dev/null +++ b/altosuilib/AltosUIFlightSeries.java @@ -0,0 +1,68 @@ +/* + * Copyright © 2017 Keith Packard <keithp@keithp.com> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + */ + +package org.altusmetrum.altosuilib_11; + +import java.util.*; +import java.awt.*; +import javax.swing.*; +import org.altusmetrum.altoslib_11.*; + +class AltosUITimeSeriesExtra { + Color color; + boolean enabled; + AltosUIAxis axis; + + public AltosUITimeSeriesExtra(Color color, boolean enabled, AltosUIAxis axis) { + this.color = color; + this.enabled = enabled; + this.axis = axis; + } +} + +public class AltosUIFlightSeries extends AltosFlightSeries { + + Hashtable<String,AltosUITimeSeriesExtra> extra; + + public void register_extra(String label, + Color color, + boolean enabled, + AltosUIAxis axis) { + + AltosUITimeSeriesExtra e = new AltosUITimeSeriesExtra(color, + enabled, + axis); + System.out.printf("register extra label %s extra %s\n", label, e); + extra.put(label, e); + } + + public AltosTimeSeries make_series(String label, AltosUnits units) { + + AltosUITimeSeriesExtra e = extra.get(label); + + if (e == null) + e = extra.get("default"); + return new AltosUITimeSeries(label, units, + e.color, e.enabled, e.axis); + } + + public AltosUITimeSeries[] series() { + return series.toArray(new AltosUITimeSeries[0]); + } + + public AltosUIFlightSeries () { + super(); + extra = new Hashtable<String,AltosUITimeSeriesExtra>(); + } +} |
