X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altosuilib%2FAltosInfoTable.java;h=8e6558b19b5cdead5bfa771c672846dd44a8a15f;hp=23ae4ae507ce5fd795540abd4971e2dfc74aeeb8;hb=73ce3f73526edfabccd3b98e6e67de6d82a84b63;hpb=2903f0911e79e381c6125022bb84096321c258eb diff --git a/altosuilib/AltosInfoTable.java b/altosuilib/AltosInfoTable.java index 23ae4ae5..8e6558b1 100644 --- a/altosuilib/AltosInfoTable.java +++ b/altosuilib/AltosInfoTable.java @@ -15,13 +15,13 @@ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -package org.altusmetrum.altosuilib_2; +package org.altusmetrum.altosuilib_9; import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.table.*; -import org.altusmetrum.altoslib_4.*; +import org.altusmetrum.altoslib_9.*; public class AltosInfoTable extends JTable implements AltosFlightDisplay, HierarchyListener { private AltosFlightInfoTableModel model; @@ -137,6 +137,8 @@ public class AltosInfoTable extends JTable implements AltosFlightDisplay, Hierar if (state != null) { if (state.device_type != AltosLib.MISSING) info_add_row(0, "Device", "%s", AltosLib.product_name(state.device_type)); + else if (state.product != null) + info_add_row(0, "Device", "%s", state.product); if (state.altitude() != AltosLib.MISSING) info_add_row(0, "Altitude", "%6.0f m", state.altitude()); if (state.ground_altitude() != AltosLib.MISSING) @@ -198,24 +200,28 @@ public class AltosInfoTable extends JTable implements AltosFlightDisplay, Hierar if (state.gps_height != AltosLib.MISSING) info_add_row(1, "GPS height", "%8.1f", state.gps_height); - /* The SkyTraq GPS doesn't report these values */ - /* - if (false) { - info_add_row(1, "GPS ground speed", "%8.1f m/s %3d°", - state.gps.ground_speed, - state.gps.course); - info_add_row(1, "GPS climb rate", "%8.1f m/s", - state.gps.climb_rate); - info_add_row(1, "GPS error", "%6d m(h)%3d m(v)", - state.gps.h_error, state.gps.v_error); - } - */ - - info_add_row(1, "GPS hdop", "%8.1f", state.gps.hdop); + if (state.gps.ground_speed != AltosLib.MISSING && state.gps.course != AltosLib.MISSING) + info_add_row(1, "GPS ground speed", "%6.1f m/s %3d°", + state.gps.ground_speed, + state.gps.course); + if (state.gps.climb_rate != AltosLib.MISSING) + info_add_row(1, "GPS climb rate", "%6.1f m/s", + state.gps.climb_rate); + + if (state.gps.h_error != AltosLib.MISSING && state.gps.v_error != AltosLib.MISSING) + info_add_row(1, "GPS error", "%6.0f m(h)%6.0f m(v)", + state.gps.h_error, state.gps.v_error); + if (state.gps.pdop != AltosLib.MISSING && + state.gps.hdop != AltosLib.MISSING && + state.gps.vdop != AltosLib.MISSING) + info_add_row(1, "GPS dop", "%3.1fp/%3.1fh/%3.1fv", + state.gps.pdop, + state.gps.hdop, + state.gps.vdop); if (state.npad > 0) { if (state.from_pad != null) { - info_add_row(1, "Distance from pad", "%6d m", + info_add_row(1, "Ground pad dist", "%6d m", (int) (state.from_pad.distance + 0.5)); info_add_row(1, "Direction from pad", "%6d°", (int) (state.from_pad.bearing + 0.5)); @@ -234,12 +240,12 @@ public class AltosInfoTable extends JTable implements AltosFlightDisplay, Hierar info_add_row(1, "Pad GPS alt", "%6.0f m", state.pad_alt); } if (state.gps.year != AltosLib.MISSING) - info_add_row(1, "GPS date", "%04d-%02d-%02d", + info_add_row(2, "GPS date", "%04d-%02d-%02d", state.gps.year, state.gps.month, state.gps.day); if (state.gps.hour != AltosLib.MISSING) - info_add_row(1, "GPS time", " %02d:%02d:%02d", + info_add_row(2, "GPS time", " %02d:%02d:%02d", state.gps.hour, state.gps.minute, state.gps.second);