AltosPad pad;
AltosIgnitor igniter;
- AltosAscent ascent;
- AltosDescent descent;
AltosLanded landed;
AltosCompanionInfo companion;
- AltosUIMap sitemap;
- boolean has_map;
boolean has_companion;
boolean has_state;
boolean has_igniter;
JComponent which_tab(AltosState state) {
if (state.state() < Altos.ao_flight_boost)
return pad;
- if (state.state() <= Altos.ao_flight_coast)
- return ascent;
- if (state.state() <= Altos.ao_flight_main)
- return descent;
- if (state.state() == AltosLib.ao_flight_stateless)
- return descent;
return landed;
}
if (state.state() != Altos.ao_flight_startup) {
if (!has_state) {
pane.setTitleAt(0, "Launch Pad");
- pane.add(ascent, 1);
- pane.add(descent, 2);
- pane.add(landed, 3);
+ pane.add(landed, 1);
has_state = true;
}
}
}
}
- if (state.gps != null) {
- if (!has_map) {
- pane.add("Site Map", sitemap);
- has_map = true;
- }
- } else {
- if (has_map) {
- pane.remove(sitemap);
- has_map = false;
- }
- }
-
for (AltosFlightDisplay d : displays) {
try {
d.show(state, listener_state);
igniter = new AltosIgnitor();
displays.add(igniter);
- ascent = new AltosAscent();
- displays.add(ascent);
- descent = new AltosDescent();
- displays.add(descent);
landed = new AltosLanded(reader);
displays.add(landed);
has_companion = false;
has_state = false;
- sitemap = new AltosUIMap();
- displays.add(sitemap);
- has_map = false;
-
/* Make the tabbed pane use the rest of the window space */
bag.add(pane, constraints(0, 4, GridBagConstraints.BOTH));