import javax.swing.event.ChangeListener;
import net.miginfocom.swing.MigLayout;
-import net.sf.openrocket.gui.BasicSlider;
import net.sf.openrocket.gui.SpinnerEditor;
-import net.sf.openrocket.gui.UnitSelector;
import net.sf.openrocket.gui.adaptors.BooleanModel;
import net.sf.openrocket.gui.adaptors.DoubleModel;
import net.sf.openrocket.gui.adaptors.EnumModel;
import net.sf.openrocket.gui.adaptors.MotorConfigurationModel;
-import net.sf.openrocket.gui.main.MotorChooserDialog;
+import net.sf.openrocket.gui.components.BasicSlider;
+import net.sf.openrocket.gui.components.StyledLabel;
+import net.sf.openrocket.gui.components.UnitSelector;
+import net.sf.openrocket.gui.dialogs.MotorChooserDialog;
+import net.sf.openrocket.motor.Motor;
import net.sf.openrocket.rocketcomponent.Configuration;
-import net.sf.openrocket.rocketcomponent.Motor;
import net.sf.openrocket.rocketcomponent.MotorMount;
import net.sf.openrocket.rocketcomponent.Rocket;
import net.sf.openrocket.rocketcomponent.RocketComponent;
spin.setEditor(new SpinnerEditor(spin));
panel.add(spin,"gap rel rel");
- panel.add(new JLabel("seconds"),"wrap paragraph");
+ panel.add(new JLabel("seconds"),"wrap unrel");
+ // Check stage count
+ RocketComponent c = (RocketComponent)mount;
+ c = c.getRocket();
+ int stages = c.getChildCount();
+
+ if (stages == 1) {
+ panel.add(new StyledLabel("The current design has only one stage. " +
+ "Stages can be added by clicking \"New stage\".", -1),
+ "spanx, right, wrap para");
+ } else {
+ panel.add(new StyledLabel("The current design has " + stages + " stages.", -1),
+ "skip 1, spanx, wrap para");
+ }
+
// Select etc. buttons
button = new JButton("Select motor");
updateFields();
}
});
- panel.add(button,"span, split, grow");
+ panel.add(button,"span, split, growx");
button = new JButton("Remove motor");
button.addActionListener(new ActionListener() {
updateFields();
}
});
- panel.add(button,"grow, wrap");
+ panel.add(button,"growx, wrap");
if (m == null)
motorLabel.setText("None");
else
- motorLabel.setText(m.getManufacturer() + " " +
+ motorLabel.setText(m.getManufacturer().getDisplayName() + " " +
m.getDesignation(mount.getMotorDelay(id)));
}