X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altosui%2FAltosFlightUI.java;h=dcf852776a0904f4dd78850bb9300c3056440b6c;hp=d166c9aefbb30147d06118f0e11a55487903e2c5;hb=8610fdae8f47e1e8b6e8525227cc912664ecfafd;hpb=392a3107b9e9cc8c1ea51df6ff5ec54817adbc65 diff --git a/altosui/AltosFlightUI.java b/altosui/AltosFlightUI.java index d166c9ae..dcf85277 100644 --- a/altosui/AltosFlightUI.java +++ b/altosui/AltosFlightUI.java @@ -28,6 +28,21 @@ import java.text.*; import java.util.prefs.*; import java.util.concurrent.*; +class AltosFlightStatusUpdate implements ActionListener { + + public AltosState saved_state; + AltosFlightStatus flightStatus; + + public void actionPerformed (ActionEvent e) { + if (saved_state != null) + flightStatus.show(saved_state, 0); + } + + public AltosFlightStatusUpdate (AltosFlightStatus in_flightStatus) { + flightStatus = in_flightStatus; + } +} + public class AltosFlightUI extends AltosFrame implements AltosFlightDisplay, AltosFontListener { AltosVoice voice; AltosFlightReader reader; @@ -98,7 +113,11 @@ public class AltosFlightUI extends AltosFrame implements AltosFlightDisplay, Alt set_font(); } + + AltosFlightStatusUpdate status_update; + public void show(AltosState state, int crc_errors) { + status_update.saved_state = state; JComponent tab = which_tab(state); try { pad.show(state, crc_errors); @@ -151,6 +170,8 @@ public class AltosFlightUI extends AltosFrame implements AltosFlightDisplay, Alt AltosFreqList frequencies; JComboBox telemetries; + ActionListener show_timer; + public AltosFlightUI(AltosVoice in_voice, AltosFlightReader in_reader, final int serial) { AltosPreferences.set_component(this); @@ -289,6 +310,10 @@ public class AltosFlightUI extends AltosFrame implements AltosFlightDisplay, Alt thread = new AltosDisplayThread(this, voice, this, reader); + status_update = new AltosFlightStatusUpdate(flightStatus); + + new javax.swing.Timer(100, status_update).start(); + thread.start(); }