X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altosui%2FAltosPad.java;h=2d9c832317845545b53ca303634732332faa8363;hp=f2deb165ef5ea7bbf9b48a1b7f3f9177e83a5252;hb=52d3cad4f744140e1aa06fdfc0d49a0cf8734fd4;hpb=6e0d672b8a516a604d8ea1abd2bed113c608143f diff --git a/altosui/AltosPad.java b/altosui/AltosPad.java index f2deb165..2d9c8323 100644 --- a/altosui/AltosPad.java +++ b/altosui/AltosPad.java @@ -30,6 +30,7 @@ public class AltosPad extends JComponent implements AltosFlightDisplay { AltosLights lights; void show(AltosState state, int crc_errors) {} + void reset() { value.setText(""); lights.set(false); @@ -41,6 +42,19 @@ public class AltosPad extends JComponent implements AltosFlightDisplay { lights.setVisible(true); } + void show(String s) { + show(); + value.setText(s); + } + + void show(String format, double value) { + show(String.format(format, value)); + } + + void show(String format, int value) { + show(String.format(format, value)); + } + public void hide() { label.setVisible(false); value.setVisible(false); @@ -108,9 +122,23 @@ public class AltosPad extends JComponent implements AltosFlightDisplay { value.setFont(Altos.value_font); } + void show(String s) { + show(); + value.setText(s); + } + + void show(AltosUnits units, double v) { + show(units.show(8, v)); + } + + void show(String format, double v) { + show(String.format(format, v)); + } + void reset() { value.setText(""); } + public LaunchValue (GridBagLayout layout, int y, String text) { GridBagConstraints c = new GridBagConstraints(); c.insets = new Insets(Altos.tab_elt_pad, Altos.tab_elt_pad, Altos.tab_elt_pad, Altos.tab_elt_pad); @@ -140,7 +168,7 @@ public class AltosPad extends JComponent implements AltosFlightDisplay { class Battery extends LaunchStatus { void show (AltosState state, int crc_errors) { - value.setText(String.format("%4.2f V", state.battery)); + show("%4.2f V", state.battery); lights.set(state.battery > 3.7); } public Battery (GridBagLayout layout, int y) { @@ -152,8 +180,7 @@ public class AltosPad extends JComponent implements AltosFlightDisplay { class Apogee extends LaunchStatus { void show (AltosState state, int crc_errors) { - show(); - value.setText(String.format("%4.2f V", state.drogue_sense)); + show("%4.2f V", state.drogue_sense); lights.set(state.drogue_sense > 3.2); } public Apogee (GridBagLayout layout, int y) { @@ -165,8 +192,7 @@ public class AltosPad extends JComponent implements AltosFlightDisplay { class Main extends LaunchStatus { void show (AltosState state, int crc_errors) { - show(); - value.setText(String.format("%4.2f V", state.main_sense)); + show("%4.2f V", state.main_sense); lights.set(state.main_sense > 3.2); } public Main (GridBagLayout layout, int y) { @@ -178,17 +204,16 @@ public class AltosPad extends JComponent implements AltosFlightDisplay { class LoggingReady extends LaunchStatus { void show (AltosState state, int crc_errors) { - show(); if (state.data.flight != 0) { if (state.data.state <= Altos.ao_flight_pad) - value.setText("Ready to record"); + show("Ready to record"); else if (state.data.state < Altos.ao_flight_landed) - value.setText("Recording data"); + show("Recording data"); else - value.setText("Recorded data"); + show("Recorded data"); } else - value.setText("Storage full"); + show("Storage full"); lights.set(state.data.flight != 0); } public LoggingReady (GridBagLayout layout, int y) { @@ -200,8 +225,7 @@ public class AltosPad extends JComponent implements AltosFlightDisplay { class GPSLocked extends LaunchStatus { void show (AltosState state, int crc_errors) { - show(); - value.setText(String.format("%4d sats", state.gps.nsat)); + show("%4d sats", state.gps.nsat); lights.set(state.gps.locked && state.gps.nsat >= 4); } public GPSLocked (GridBagLayout layout, int y) { @@ -213,11 +237,10 @@ public class AltosPad extends JComponent implements AltosFlightDisplay { class GPSReady extends LaunchStatus { void show (AltosState state, int crc_errors) { - show(); if (state.gps_ready) - value.setText("Ready"); + show("Ready"); else - value.setText(String.format("Waiting %d", state.gps_waiting)); + show("Waiting %d", state.gps_waiting); lights.set(state.gps_ready); } public GPSReady (GridBagLayout layout, int y) { @@ -240,8 +263,7 @@ public class AltosPad extends JComponent implements AltosFlightDisplay { class PadLat extends LaunchValue { void show (AltosState state, int crc_errors) { - show(); - value.setText(pos(state.pad_lat,"N", "S")); + show(pos(state.pad_lat,"N", "S")); } public PadLat (GridBagLayout layout, int y) { super (layout, y, "Pad Latitude"); @@ -252,8 +274,7 @@ public class AltosPad extends JComponent implements AltosFlightDisplay { class PadLon extends LaunchValue { void show (AltosState state, int crc_errors) { - show(); - value.setText(pos(state.pad_lon,"E", "W")); + show(pos(state.pad_lon,"E", "W")); } public PadLon (GridBagLayout layout, int y) { super (layout, y, "Pad Longitude"); @@ -264,7 +285,7 @@ public class AltosPad extends JComponent implements AltosFlightDisplay { class PadAlt extends LaunchValue { void show (AltosState state, int crc_errors) { - value.setText(String.format("%4.0f m", state.pad_alt)); + show("%4.0f m", state.pad_alt); } public PadAlt (GridBagLayout layout, int y) { super (layout, y, "Pad Altitude");