Move the preset drop down into RocketComponentConfig materials section. Only display it if the component has a non-null getPresetType().
This commit is contained in:
parent
0adf3a2734
commit
07218ba729
@ -27,8 +27,6 @@ public class BodyTubeConfig extends RocketComponentConfig {
|
||||
|
||||
private MotorConfig motorConfigPane = null;
|
||||
private DoubleModel maxLength;
|
||||
private JComboBox presetComboBox;
|
||||
private PresetModel presetModel;
|
||||
private static final Translator trans = Application.getTranslator();
|
||||
|
||||
public BodyTubeConfig(OpenRocketDocument d, RocketComponent c) {
|
||||
@ -38,15 +36,6 @@ public class BodyTubeConfig extends RocketComponentConfig {
|
||||
|
||||
|
||||
|
||||
//// Body tube template
|
||||
// FIXME: Move to proper location
|
||||
panel.add(new JLabel(trans.get("PresetModel.lbl.select")));
|
||||
presetModel = new PresetModel( this, component);
|
||||
((ComponentPresetDatabase)Application.getComponentPresetDao()).addDatabaseListener(presetModel);
|
||||
presetComboBox = new JComboBox(presetModel);
|
||||
presetComboBox.setEditable(false);
|
||||
panel.add(presetComboBox, "wrap para");
|
||||
|
||||
//// Body tube length
|
||||
panel.add(new JLabel(trans.get("BodyTubecfg.lbl.Bodytubelength")));
|
||||
|
||||
@ -136,11 +125,4 @@ public class BodyTubeConfig extends RocketComponentConfig {
|
||||
motorConfigPane.updateFields();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void invalidateModels() {
|
||||
super.invalidateModels();
|
||||
((ComponentPresetDatabase)Application.getComponentPresetDao()).removeChangeListener(presetModel);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@ -35,9 +35,6 @@ public class NoseConeConfig extends RocketComponentConfig {
|
||||
|
||||
private DescriptionArea description;
|
||||
|
||||
private JComboBox presetComboBox;
|
||||
private PresetModel presetModel;
|
||||
|
||||
private JLabel shapeLabel;
|
||||
private JSpinner shapeSpinner;
|
||||
private JSlider shapeSlider;
|
||||
@ -52,16 +49,6 @@ public class NoseConeConfig extends RocketComponentConfig {
|
||||
DoubleModel m;
|
||||
JPanel panel = new JPanel(new MigLayout("", "[][65lp::][30lp::]"));
|
||||
|
||||
|
||||
// FIXME: Move to proper location
|
||||
panel.add(new JLabel(trans.get("PresetModel.lbl.select")));
|
||||
presetModel = new PresetModel( this, component);
|
||||
((ComponentPresetDatabase)Application.getComponentPresetDao()).addDatabaseListener(presetModel);
|
||||
presetComboBox = new JComboBox(presetModel);
|
||||
presetComboBox.setEditable(false);
|
||||
panel.add(presetComboBox, "wrap para");
|
||||
|
||||
|
||||
//// Shape selection
|
||||
//// Nose cone shape:
|
||||
panel.add(new JLabel(trans.get("NoseConeCfg.lbl.Noseconeshape")));
|
||||
|
@ -25,12 +25,14 @@ import javax.swing.JTextArea;
|
||||
import javax.swing.JTextField;
|
||||
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
import net.sf.openrocket.database.ComponentPresetDatabase;
|
||||
import net.sf.openrocket.document.OpenRocketDocument;
|
||||
import net.sf.openrocket.gui.SpinnerEditor;
|
||||
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.MaterialModel;
|
||||
import net.sf.openrocket.gui.adaptors.PresetModel;
|
||||
import net.sf.openrocket.gui.components.BasicSlider;
|
||||
import net.sf.openrocket.gui.components.ColorIcon;
|
||||
import net.sf.openrocket.gui.components.StyledLabel;
|
||||
@ -61,7 +63,9 @@ public class RocketComponentConfig extends JPanel {
|
||||
|
||||
private final List<Invalidatable> invalidatables = new ArrayList<Invalidatable>();
|
||||
|
||||
|
||||
private JComboBox presetComboBox;
|
||||
private PresetModel presetModel;
|
||||
|
||||
protected final JTextField componentNameField;
|
||||
protected JTextArea commentTextArea;
|
||||
private final TextFieldListener textFieldListener;
|
||||
@ -198,6 +202,18 @@ public class RocketComponentConfig extends JPanel {
|
||||
|
||||
protected JPanel materialPanel(JPanel panel, Material.Type type,
|
||||
String materialString, String finishString) {
|
||||
|
||||
if ( component.getPresetType() != null ) {
|
||||
//// Body tube template
|
||||
// FIXME: Move to proper location
|
||||
panel.add(new JLabel(trans.get("PresetModel.lbl.select")));
|
||||
presetModel = new PresetModel( this, component);
|
||||
((ComponentPresetDatabase)Application.getComponentPresetDao()).addDatabaseListener(presetModel);
|
||||
presetComboBox = new JComboBox(presetModel);
|
||||
presetComboBox.setEditable(false);
|
||||
panel.add(presetComboBox, "wrap para");
|
||||
}
|
||||
|
||||
JLabel label = new JLabel(materialString);
|
||||
//// The component material affects the weight of the component.
|
||||
label.setToolTipText(trans.get("RocketCompCfg.lbl.ttip.componentmaterialaffects"));
|
||||
@ -636,6 +652,8 @@ public class RocketComponentConfig extends JPanel {
|
||||
for (Invalidatable i : invalidatables) {
|
||||
i.invalidate();
|
||||
}
|
||||
((ComponentPresetDatabase)Application.getComponentPresetDao()).removeChangeListener(presetModel);
|
||||
|
||||
}
|
||||
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user