diff options
Diffstat (limited to 'ao-tools/altosui/AltosFlightUI.java')
| -rw-r--r-- | ao-tools/altosui/AltosFlightUI.java | 34 | 
1 files changed, 9 insertions, 25 deletions
| diff --git a/ao-tools/altosui/AltosFlightUI.java b/ao-tools/altosui/AltosFlightUI.java index 732f7395..b0cc521d 100644 --- a/ao-tools/altosui/AltosFlightUI.java +++ b/ao-tools/altosui/AltosFlightUI.java @@ -47,23 +47,17 @@ public class AltosFlightUI extends JFrame implements AltosFlightDisplay {  	private AltosFlightStatus flightStatus;  	private AltosInfoTable flightInfo; -	static final int tab_pad = 1; -	static final int tab_ascent = 2; -	static final int tab_descent = 3; -	static final int tab_landed = 4; - -	int cur_tab = 0; -  	boolean exit_on_close = false; -	int which_tab(AltosState state) { +	JComponent cur_tab = null; +	JComponent which_tab(AltosState state) {  		if (state.state < Altos.ao_flight_boost) -			return tab_pad; +			return pad;  		if (state.state <= Altos.ao_flight_coast) -			return tab_ascent; +			return ascent;  		if (state.state <= Altos.ao_flight_main) -			return tab_descent; -		return tab_landed; +			return descent; +		return landed;  	}  	void stop_display() { @@ -90,24 +84,14 @@ public class AltosFlightUI extends JFrame implements AltosFlightDisplay {  	}  	public void show(AltosState state, int crc_errors) { -		int	tab = which_tab(state); +		JComponent tab = which_tab(state);  		pad.show(state, crc_errors);  		ascent.show(state, crc_errors);  		descent.show(state, crc_errors);  		landed.show(state, crc_errors);  		if (tab != cur_tab) { -			switch (tab) { -			case tab_pad: -				pane.setSelectedComponent(pad); -				break; -			case tab_ascent: -				pane.setSelectedComponent(ascent); -				break; -			case tab_descent: -				pane.setSelectedComponent(descent); -				break; -			case tab_landed: -				pane.setSelectedComponent(landed); +			if (cur_tab == pane.getSelectedComponent()) { +				pane.setSelectedComponent(tab);  			}  			cur_tab = tab;  		} | 
