From: Keith Packard Date: Tue, 10 Jun 2014 18:35:30 +0000 (-0700) Subject: altosuilib: Move AltosFlightStatsTable to altosuilib X-Git-Tag: 1.4~79 X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=commitdiff_plain;h=73249dbf16382c91c2a220ff852a4f099fe0de3d altosuilib: Move AltosFlightStatsTable to altosuilib So that TeleGPS can share it Signed-off-by: Keith Packard --- diff --git a/altosui/Makefile.am b/altosui/Makefile.am index 1eb2d967..be817cb8 100644 --- a/altosui/Makefile.am +++ b/altosui/Makefile.am @@ -21,7 +21,6 @@ altosui_JAVA = \ AltosConfigTD.java \ AltosConfigTDUI.java \ AltosDescent.java \ - AltosFlightStatsTable.java \ AltosFlightStatus.java \ AltosFlightStatusUpdate.java \ AltosFlightUI.java \ diff --git a/altosuilib/AltosFlightStatsTable.java b/altosuilib/AltosFlightStatsTable.java index e7a8e728..ec106cf1 100644 --- a/altosuilib/AltosFlightStatsTable.java +++ b/altosuilib/AltosFlightStatsTable.java @@ -15,7 +15,7 @@ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -package altosui; +package org.altusmetrum.altosuilib_2; import java.awt.*; import javax.swing.*; @@ -30,11 +30,11 @@ public class AltosFlightStatsTable extends JComponent { public FlightStat(GridBagLayout layout, int y, String label_text, String ... values) { GridBagConstraints c = new GridBagConstraints(); - c.insets = new Insets(Altos.tab_elt_pad, Altos.tab_elt_pad, Altos.tab_elt_pad, Altos.tab_elt_pad); + c.insets = new Insets(AltosUILib.tab_elt_pad, AltosUILib.tab_elt_pad, AltosUILib.tab_elt_pad, AltosUILib.tab_elt_pad); c.weighty = 1; label = new JLabel(label_text); - label.setFont(Altos.label_font); + label.setFont(AltosUILib.label_font); label.setHorizontalAlignment(SwingConstants.LEFT); c.gridx = 0; c.gridy = y; c.anchor = GridBagConstraints.WEST; @@ -45,7 +45,7 @@ public class AltosFlightStatsTable extends JComponent { for (int j = 0; j < values.length; j++) { value = new JTextField(values[j]); - value.setFont(Altos.value_font); + value.setFont(AltosUILib.value_font); value.setHorizontalAlignment(SwingConstants.RIGHT); c.gridx = j+1; c.gridy = y; c.anchor = GridBagConstraints.EAST; @@ -88,9 +88,11 @@ public class AltosFlightStatsTable extends JComponent { new FlightStat(layout, y++, "Time", String.format("%02d:%02d:%02d UTC", stats.hour, stats.minute, stats.second)); } - new FlightStat(layout, y++, "Maximum height", - String.format("%5.0f m", stats.max_height), - String.format("%5.0f ft", AltosConvert.meters_to_feet(stats.max_height))); + if (stats.max_height != AltosLib.MISSING) { + new FlightStat(layout, y++, "Maximum height", + String.format("%5.0f m", stats.max_height), + String.format("%5.0f ft", AltosConvert.meters_to_feet(stats.max_height))); + } if (stats.max_gps_height != AltosLib.MISSING) { new FlightStat(layout, y++, "Maximum GPS height", String.format("%5.0f m", stats.max_gps_height), @@ -106,31 +108,36 @@ public class AltosFlightStatsTable extends JComponent { String.format("%5.0f ft/s²", AltosConvert.meters_to_feet(stats.max_acceleration)), String.format("%5.0f G", AltosConvert.meters_to_g(stats.max_acceleration))); new FlightStat(layout, y++, "Average boost acceleration", - String.format("%5.0f m/s²", stats.state_accel[Altos.ao_flight_boost]), - String.format("%5.0f ft/s²", AltosConvert.meters_to_feet(stats.state_accel[Altos.ao_flight_boost])), - String.format("%5.0f G", AltosConvert.meters_to_g(stats.state_accel[Altos.ao_flight_boost]))); + String.format("%5.0f m/s²", stats.state_accel[AltosLib.ao_flight_boost]), + String.format("%5.0f ft/s²", AltosConvert.meters_to_feet(stats.state_accel[AltosLib.ao_flight_boost])), + String.format("%5.0f G", AltosConvert.meters_to_g(stats.state_accel[AltosLib.ao_flight_boost]))); } - new FlightStat(layout, y++, "Drogue descent rate", - String.format("%5.0f m/s", stats.state_speed[Altos.ao_flight_drogue]), - String.format("%5.0f ft/s", AltosConvert.meters_to_feet(stats.state_speed[Altos.ao_flight_drogue]))); - new FlightStat(layout, y++, "Main descent rate", - String.format("%5.0f m/s", stats.state_speed[Altos.ao_flight_main]), - String.format("%5.0f ft/s", AltosConvert.meters_to_feet(stats.state_speed[Altos.ao_flight_main]))); - new FlightStat(layout, y++, "Ascent time", - String.format("%6.1f s %s", stats.state_end[AltosLib.ao_flight_boost] - stats.state_start[AltosLib.ao_flight_boost], - AltosLib.state_name(Altos.ao_flight_boost)), - String.format("%6.1f s %s", stats.state_end[AltosLib.ao_flight_fast] - stats.state_start[AltosLib.ao_flight_fast], - AltosLib.state_name(Altos.ao_flight_fast)), - String.format("%6.1f s %s", stats.state_end[AltosLib.ao_flight_coast] - stats.state_start[AltosLib.ao_flight_coast], - AltosLib.state_name(Altos.ao_flight_coast))); - new FlightStat(layout, y++, "Descent time", - String.format("%6.1f s %s", stats.state_end[AltosLib.ao_flight_drogue] - stats.state_start[AltosLib.ao_flight_drogue], - AltosLib.state_name(Altos.ao_flight_drogue)), - String.format("%6.1f s %s", stats.state_end[AltosLib.ao_flight_main] - stats.state_start[AltosLib.ao_flight_main], - AltosLib.state_name(Altos.ao_flight_main))); - new FlightStat(layout, y++, "Flight time", - String.format("%6.1f s", stats.state_end[Altos.ao_flight_main] - - stats.state_start[Altos.ao_flight_boost])); + if (stats.state_speed[AltosLib.ao_flight_drogue] != AltosLib.MISSING) + new FlightStat(layout, y++, "Drogue descent rate", + String.format("%5.0f m/s", stats.state_speed[AltosLib.ao_flight_drogue]), + String.format("%5.0f ft/s", AltosConvert.meters_to_feet(stats.state_speed[AltosLib.ao_flight_drogue]))); + if (stats.state_speed[AltosLib.ao_flight_main] != AltosLib.MISSING) + new FlightStat(layout, y++, "Main descent rate", + String.format("%5.0f m/s", stats.state_speed[AltosLib.ao_flight_main]), + String.format("%5.0f ft/s", AltosConvert.meters_to_feet(stats.state_speed[AltosLib.ao_flight_main]))); + if (stats.state_start[AltosLib.ao_flight_boost] < stats.state_end[AltosLib.ao_flight_coast]) + new FlightStat(layout, y++, "Ascent time", + String.format("%6.1f s %s", stats.state_end[AltosLib.ao_flight_boost] - stats.state_start[AltosLib.ao_flight_boost], + AltosLib.state_name(AltosLib.ao_flight_boost)), + String.format("%6.1f s %s", stats.state_end[AltosLib.ao_flight_fast] - stats.state_start[AltosLib.ao_flight_fast], + AltosLib.state_name(AltosLib.ao_flight_fast)), + String.format("%6.1f s %s", stats.state_end[AltosLib.ao_flight_coast] - stats.state_start[AltosLib.ao_flight_coast], + AltosLib.state_name(AltosLib.ao_flight_coast))); + if (stats.state_start[AltosLib.ao_flight_drogue] < stats.state_end[AltosLib.ao_flight_main]) + new FlightStat(layout, y++, "Descent time", + String.format("%6.1f s %s", stats.state_end[AltosLib.ao_flight_drogue] - stats.state_start[AltosLib.ao_flight_drogue], + AltosLib.state_name(AltosLib.ao_flight_drogue)), + String.format("%6.1f s %s", stats.state_end[AltosLib.ao_flight_main] - stats.state_start[AltosLib.ao_flight_main], + AltosLib.state_name(AltosLib.ao_flight_main))); + if (stats.state_start[AltosLib.ao_flight_boost] < stats.state_end[AltosLib.ao_flight_main]) + new FlightStat(layout, y++, "Flight time", + String.format("%6.1f s", stats.state_end[AltosLib.ao_flight_main] - + stats.state_start[AltosLib.ao_flight_boost])); if (stats.has_gps) { new FlightStat(layout, y++, "Pad location", pos(stats.pad_lat,"N","S"), @@ -141,4 +148,4 @@ public class AltosFlightStatsTable extends JComponent { } } -} \ No newline at end of file +} diff --git a/altosuilib/Makefile.am b/altosuilib/Makefile.am index e415fc5b..b90669ce 100644 --- a/altosuilib/Makefile.am +++ b/altosuilib/Makefile.am @@ -58,6 +58,7 @@ altosuilib_JAVA = \ AltosRomconfigUI.java \ AltosInfoTable.java \ AltosFlightInfoTableModel.java \ + AltosFlightStatsTable.java \ AltosGraph.java \ AltosGraphDataPoint.java \ AltosGraphDataSet.java \