altosuilib: Move AltosFlightStatsTable to altosuilib
authorKeith Packard <keithp@keithp.com>
Tue, 10 Jun 2014 18:35:30 +0000 (11:35 -0700)
committerKeith Packard <keithp@keithp.com>
Tue, 10 Jun 2014 18:35:30 +0000 (11:35 -0700)
So that TeleGPS can share it

Signed-off-by: Keith Packard <keithp@keithp.com>
altosui/Makefile.am
altosuilib/AltosFlightStatsTable.java
altosuilib/Makefile.am

index 1eb2d9675744f165cfd6a9d0736e6de756038933..be817cb8393f5388ed12d1e010f1262b3ba67b50 100644 (file)
@@ -21,7 +21,6 @@ altosui_JAVA = \
        AltosConfigTD.java \
        AltosConfigTDUI.java \
        AltosDescent.java \
        AltosConfigTD.java \
        AltosConfigTDUI.java \
        AltosDescent.java \
-       AltosFlightStatsTable.java \
        AltosFlightStatus.java \
        AltosFlightStatusUpdate.java \
        AltosFlightUI.java \
        AltosFlightStatus.java \
        AltosFlightStatusUpdate.java \
        AltosFlightUI.java \
index e7a8e728f220fa36b481e7b44bbbcc3718cdf66f..ec106cf1f0e973156a55a4183ed5e591b8716f84 100644 (file)
@@ -15,7 +15,7 @@
  * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
  */
 
  * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
  */
 
-package altosui;
+package org.altusmetrum.altosuilib_2;
 
 import java.awt.*;
 import javax.swing.*;
 
 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();
 
                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);
                        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;
                        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]);
 
                        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;
                                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++, "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),
                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 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"),
                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
+}
index e415fc5b65773060a1dd5d7a81f286ad9d4775bd..b90669ce271afded252375540dc00fcfe3145a58 100644 (file)
@@ -58,6 +58,7 @@ altosuilib_JAVA = \
        AltosRomconfigUI.java \
        AltosInfoTable.java \
        AltosFlightInfoTableModel.java \
        AltosRomconfigUI.java \
        AltosInfoTable.java \
        AltosFlightInfoTableModel.java \
+       AltosFlightStatsTable.java \
        AltosGraph.java \
        AltosGraphDataPoint.java \
        AltosGraphDataSet.java \
        AltosGraph.java \
        AltosGraphDataPoint.java \
        AltosGraphDataSet.java \