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 MotorConfig motorConfigPane = null;
|
||||||
private DoubleModel maxLength;
|
private DoubleModel maxLength;
|
||||||
private JComboBox presetComboBox;
|
|
||||||
private PresetModel presetModel;
|
|
||||||
private static final Translator trans = Application.getTranslator();
|
private static final Translator trans = Application.getTranslator();
|
||||||
|
|
||||||
public BodyTubeConfig(OpenRocketDocument d, RocketComponent c) {
|
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
|
//// Body tube length
|
||||||
panel.add(new JLabel(trans.get("BodyTubecfg.lbl.Bodytubelength")));
|
panel.add(new JLabel(trans.get("BodyTubecfg.lbl.Bodytubelength")));
|
||||||
|
|
||||||
@ -136,11 +125,4 @@ public class BodyTubeConfig extends RocketComponentConfig {
|
|||||||
motorConfigPane.updateFields();
|
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 DescriptionArea description;
|
||||||
|
|
||||||
private JComboBox presetComboBox;
|
|
||||||
private PresetModel presetModel;
|
|
||||||
|
|
||||||
private JLabel shapeLabel;
|
private JLabel shapeLabel;
|
||||||
private JSpinner shapeSpinner;
|
private JSpinner shapeSpinner;
|
||||||
private JSlider shapeSlider;
|
private JSlider shapeSlider;
|
||||||
@ -52,16 +49,6 @@ public class NoseConeConfig extends RocketComponentConfig {
|
|||||||
DoubleModel m;
|
DoubleModel m;
|
||||||
JPanel panel = new JPanel(new MigLayout("", "[][65lp::][30lp::]"));
|
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
|
//// Shape selection
|
||||||
//// Nose cone shape:
|
//// Nose cone shape:
|
||||||
panel.add(new JLabel(trans.get("NoseConeCfg.lbl.Noseconeshape")));
|
panel.add(new JLabel(trans.get("NoseConeCfg.lbl.Noseconeshape")));
|
||||||
|
@ -25,12 +25,14 @@ import javax.swing.JTextArea;
|
|||||||
import javax.swing.JTextField;
|
import javax.swing.JTextField;
|
||||||
|
|
||||||
import net.miginfocom.swing.MigLayout;
|
import net.miginfocom.swing.MigLayout;
|
||||||
|
import net.sf.openrocket.database.ComponentPresetDatabase;
|
||||||
import net.sf.openrocket.document.OpenRocketDocument;
|
import net.sf.openrocket.document.OpenRocketDocument;
|
||||||
import net.sf.openrocket.gui.SpinnerEditor;
|
import net.sf.openrocket.gui.SpinnerEditor;
|
||||||
import net.sf.openrocket.gui.adaptors.BooleanModel;
|
import net.sf.openrocket.gui.adaptors.BooleanModel;
|
||||||
import net.sf.openrocket.gui.adaptors.DoubleModel;
|
import net.sf.openrocket.gui.adaptors.DoubleModel;
|
||||||
import net.sf.openrocket.gui.adaptors.EnumModel;
|
import net.sf.openrocket.gui.adaptors.EnumModel;
|
||||||
import net.sf.openrocket.gui.adaptors.MaterialModel;
|
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.BasicSlider;
|
||||||
import net.sf.openrocket.gui.components.ColorIcon;
|
import net.sf.openrocket.gui.components.ColorIcon;
|
||||||
import net.sf.openrocket.gui.components.StyledLabel;
|
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 final List<Invalidatable> invalidatables = new ArrayList<Invalidatable>();
|
||||||
|
|
||||||
|
private JComboBox presetComboBox;
|
||||||
|
private PresetModel presetModel;
|
||||||
|
|
||||||
protected final JTextField componentNameField;
|
protected final JTextField componentNameField;
|
||||||
protected JTextArea commentTextArea;
|
protected JTextArea commentTextArea;
|
||||||
private final TextFieldListener textFieldListener;
|
private final TextFieldListener textFieldListener;
|
||||||
@ -198,6 +202,18 @@ public class RocketComponentConfig extends JPanel {
|
|||||||
|
|
||||||
protected JPanel materialPanel(JPanel panel, Material.Type type,
|
protected JPanel materialPanel(JPanel panel, Material.Type type,
|
||||||
String materialString, String finishString) {
|
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);
|
JLabel label = new JLabel(materialString);
|
||||||
//// The component material affects the weight of the component.
|
//// The component material affects the weight of the component.
|
||||||
label.setToolTipText(trans.get("RocketCompCfg.lbl.ttip.componentmaterialaffects"));
|
label.setToolTipText(trans.get("RocketCompCfg.lbl.ttip.componentmaterialaffects"));
|
||||||
@ -636,6 +652,8 @@ public class RocketComponentConfig extends JPanel {
|
|||||||
for (Invalidatable i : invalidatables) {
|
for (Invalidatable i : invalidatables) {
|
||||||
i.invalidate();
|
i.invalidate();
|
||||||
}
|
}
|
||||||
|
((ComponentPresetDatabase)Application.getComponentPresetDao()).removeChangeListener(presetModel);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user