Fix stage selection toggle display

Fixes the stage selection buttons to only be active when the stage
is active and properly reflect the displayed stage state.

Signed-off-by: Billy Olsen <billy.olsen@gmail.com>
This commit is contained in:
Billy Olsen 2020-03-22 20:46:13 -07:00
parent 3f17363807
commit 33e912833f

View File

@ -10,21 +10,17 @@ import javax.swing.JPanel;
import javax.swing.JToggleButton; import javax.swing.JToggleButton;
import net.miginfocom.swing.MigLayout; import net.miginfocom.swing.MigLayout;
import net.sf.openrocket.l10n.Translator;
import net.sf.openrocket.rocketcomponent.AxialStage; import net.sf.openrocket.rocketcomponent.AxialStage;
import net.sf.openrocket.rocketcomponent.ComponentChangeEvent; import net.sf.openrocket.rocketcomponent.ComponentChangeEvent;
import net.sf.openrocket.rocketcomponent.FlightConfiguration; import net.sf.openrocket.rocketcomponent.FlightConfiguration;
import net.sf.openrocket.rocketcomponent.Rocket; import net.sf.openrocket.rocketcomponent.Rocket;
import net.sf.openrocket.rocketcomponent.RocketComponent; import net.sf.openrocket.rocketcomponent.RocketComponent;
import net.sf.openrocket.startup.Application;
import net.sf.openrocket.util.StateChangeListener; import net.sf.openrocket.util.StateChangeListener;
@SuppressWarnings("serial") @SuppressWarnings("serial")
public class StageSelector extends JPanel implements StateChangeListener { public class StageSelector extends JPanel implements StateChangeListener {
private static final Translator trans = Application.getTranslator();
private final Rocket rocket; private final Rocket rocket;
private List<JToggleButton> buttons = new ArrayList<JToggleButton>(); private List<JToggleButton> buttons = new ArrayList<JToggleButton>();
@ -41,7 +37,7 @@ public class StageSelector extends JPanel implements StateChangeListener {
this.removeAll(); this.removeAll();
for(AxialStage stage : configuration.getRocket().getStageList()){ for(AxialStage stage : configuration.getRocket().getStageList()){
JToggleButton button = new JToggleButton(new StageAction(stage)); JToggleButton button = new JToggleButton(new StageAction(stage));
button.setSelected(true); button.setSelected(configuration.isStageActive(stage.getStageNumber()));
this.add(button); this.add(button);
buttons.add(button); buttons.add(button);
} }