X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altosui%2FAltosFlightStatus.java;h=73b84f8d51cdd2dc59705cffafbc1a5a0e329284;hp=0be7bb51b811b9fdcec6d0d89beee9c454622f3f;hb=9a4c2c7fc6af922d052e23a1b99bf847fbf9b0e9;hpb=7ec1b97d278c7aec3199fb7270f0dcf9484c879f diff --git a/altosui/AltosFlightStatus.java b/altosui/AltosFlightStatus.java index 0be7bb51..73b84f8d 100644 --- a/altosui/AltosFlightStatus.java +++ b/altosui/AltosFlightStatus.java @@ -19,7 +19,8 @@ package altosui; import java.awt.*; import javax.swing.*; -import org.altusmetrum.altoslib_1.*; +import org.altusmetrum.altoslib_4.*; +import org.altusmetrum.altosuilib_2.*; public class AltosFlightStatus extends JComponent implements AltosFlightDisplay { GridBagLayout layout; @@ -39,6 +40,11 @@ public class AltosFlightStatus extends JComponent implements AltosFlightDisplay value.setFont(Altos.status_font); } + void setVisible(boolean visible) { + label.setVisible(visible); + value.setVisible(visible); + } + public FlightValue (GridBagLayout layout, int x, String text) { GridBagConstraints c = new GridBagConstraints(); c.insets = new Insets(5, 5, 5, 5); @@ -66,6 +72,10 @@ public class AltosFlightStatus extends JComponent implements AltosFlightDisplay class Call extends FlightValue { void show(AltosState state, AltosListenerState listener_state) { value.setText(state.callsign); + if (state.callsign == null) + setVisible(false); + else + setVisible(true); } public Call (GridBagLayout layout, int x) { super (layout, x, "Callsign"); @@ -76,7 +86,7 @@ public class AltosFlightStatus extends JComponent implements AltosFlightDisplay class Serial extends FlightValue { void show(AltosState state, AltosListenerState listener_state) { - if (state.serial == AltosRecord.MISSING) + if (state.serial == AltosLib.MISSING) value.setText("none"); else value.setText(String.format("%d", state.serial)); @@ -90,7 +100,7 @@ public class AltosFlightStatus extends JComponent implements AltosFlightDisplay class Flight extends FlightValue { void show(AltosState state, AltosListenerState listener_state) { - if (state.flight == AltosRecord.MISSING) + if (state.flight == AltosLib.MISSING) value.setText("none"); else value.setText(String.format("%d", state.flight)); @@ -116,6 +126,10 @@ public class AltosFlightStatus extends JComponent implements AltosFlightDisplay class RSSI extends FlightValue { void show(AltosState state, AltosListenerState listener_state) { value.setText(String.format("%d", state.rssi())); + if (state.rssi == AltosLib.MISSING) + setVisible(false); + else + setVisible(true); } public RSSI (GridBagLayout layout, int x) { super (layout, x, "RSSI"); @@ -126,7 +140,7 @@ public class AltosFlightStatus extends JComponent implements AltosFlightDisplay class LastPacket extends FlightValue { void show(AltosState state, AltosListenerState listener_state) { - long secs = (System.currentTimeMillis() - state.report_time + 500) / 1000; + long secs = (System.currentTimeMillis() - state.received_time + 500) / 1000; value.setText(String.format("%d", secs)); } public LastPacket(GridBagLayout layout, int x) {