From 86d07ca8b8161c4e0b1ec40ba33b75554594e930 Mon Sep 17 00:00:00 2001 From: bkuker Date: Fri, 14 Dec 2012 11:47:31 -0500 Subject: [PATCH 1/6] I10n for color label --- core/resources/l10n/messages.properties | 1 + .../src/net/sf/openrocket/gui/configdialog/AppearancePanel.java | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/core/resources/l10n/messages.properties b/core/resources/l10n/messages.properties index 7f75f02f5..09862a8f8 100644 --- a/core/resources/l10n/messages.properties +++ b/core/resources/l10n/messages.properties @@ -725,6 +725,7 @@ AppearanceCfg.lbl.Usedefault = Use default AppearanceCfg.but.savedefault = Save as default appearance AppearanceCfg.lbl.Texture = Texture: AppearanceCfg.lbl.shine = Shine: +AppearanceCfg.lbl.color.Color = Color: AppearanceCfg.lbl.color.diffuse = Diffuse Color: AppearanceCfg.lbl.color.ambient = Ambient Color: AppearanceCfg.lbl.color.specular = Specular Color: diff --git a/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java b/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java index 4d86ae005..93fb231d8 100644 --- a/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java +++ b/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java @@ -249,7 +249,7 @@ public class AppearancePanel extends JPanel { }*/ { // Color - add(new JLabel("Color")); + add(new JLabel(trans.get("AppearanceCfg.lbl.color.Color"))); mDefault.addEnableComponent(colorButton, false); add(colorButton); } From 97b2c4002c3bcf47878781b02b0cf0b517573095 Mon Sep 17 00:00:00 2001 From: bkuker Date: Fri, 14 Dec 2012 11:52:04 -0500 Subject: [PATCH 2/6] Smaller sliders --- .../net/sf/openrocket/gui/configdialog/AppearancePanel.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java b/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java index 93fb231d8..eba8c5709 100644 --- a/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java +++ b/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java @@ -270,7 +270,7 @@ public class AppearancePanel extends JPanel { add(scaleV, "wrap, w 40"); } - {// Placeholder + {// Shine add(new JLabel(trans.get("AppearanceCfg.lbl.shine"))); IntegerModel shineModel = new IntegerModel(ab, "Shine", 0, 100); JSpinner spin = new JSpinner(shineModel.getSpinnerModel()); @@ -279,7 +279,7 @@ public class AppearancePanel extends JPanel { mDefault.addEnableComponent(spin, false); add(spin, "split 2, w 50"); - add(slide, "w 100"); + add(slide, "w 50"); } @@ -319,7 +319,7 @@ public class AppearancePanel extends JPanel { add(new UnitSelector(rotationModel)); BasicSlider bs = new BasicSlider(rotationModel.getSliderModel(-Math.PI, Math.PI)); mDefault.addEnableComponent(bs, false); - add(bs, "w 100, wrap"); + add(bs, "w 50, wrap"); } From d966973f7dc8d3d951b0e81d4e6da3255d35355b Mon Sep 17 00:00:00 2001 From: bkuker Date: Fri, 14 Dec 2012 11:54:53 -0500 Subject: [PATCH 3/6] Rename texture unit and use it for offset too --- .../gui/configdialog/AppearancePanel.java | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java b/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java index eba8c5709..5135bb715 100644 --- a/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java +++ b/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java @@ -49,7 +49,11 @@ public class AppearancePanel extends JPanel { private SimpleAppearanceBuilder ab; - private final static UnitGroup UNIT_FOR_SCALES = new UnitGroup(); + /** + * A non-unit that adjusts by a small amount, suitable for + * values that are on the 0-1 scale + */ + private final static UnitGroup TEXTURE_UNIT = new UnitGroup(); static { Unit no_unit = new GeneralUnit(1,"",2) { @Override @@ -63,7 +67,7 @@ public class AppearancePanel extends JPanel { } }; - UNIT_FOR_SCALES.addUnit(no_unit); + TEXTURE_UNIT.addUnit(no_unit); } private static final JColorChooser colorChooser = new JColorChooser(); @@ -258,13 +262,13 @@ public class AppearancePanel extends JPanel { add(new JLabel(trans.get("AppearanceCfg.lbl.texture.scale"))); add(new JLabel("x:"), "split 4"); - JSpinner scaleU = new JSpinner(new DoubleModel(ab, "ScaleX",UNIT_FOR_SCALES).getSpinnerModel()); + JSpinner scaleU = new JSpinner(new DoubleModel(ab, "ScaleX", TEXTURE_UNIT).getSpinnerModel()); scaleU.setEditor(new SpinnerEditor(scaleU)); mDefault.addEnableComponent(scaleU, false); add(scaleU, "w 40"); add(new JLabel("y:")); - JSpinner scaleV = new JSpinner(new DoubleModel(ab, "ScaleY",UNIT_FOR_SCALES).getSpinnerModel()); + JSpinner scaleV = new JSpinner(new DoubleModel(ab, "ScaleY", TEXTURE_UNIT).getSpinnerModel()); scaleV.setEditor(new SpinnerEditor(scaleV)); mDefault.addEnableComponent(scaleV, false); add(scaleV, "wrap, w 40"); @@ -287,13 +291,13 @@ public class AppearancePanel extends JPanel { add(new JLabel(trans.get("AppearanceCfg.lbl.texture.offset"))); add(new JLabel("x:"), "split 4"); - JSpinner offsetU = new JSpinner(new DoubleModel(ab, "OffsetU").getSpinnerModel()); + JSpinner offsetU = new JSpinner(new DoubleModel(ab, "OffsetU", TEXTURE_UNIT).getSpinnerModel()); offsetU.setEditor(new SpinnerEditor(offsetU)); mDefault.addEnableComponent(offsetU, false); add(offsetU, "w 40"); add(new JLabel("y:")); - JSpinner offsetV = new JSpinner(new DoubleModel(ab, "OffsetV").getSpinnerModel()); + JSpinner offsetV = new JSpinner(new DoubleModel(ab, "OffsetV", TEXTURE_UNIT).getSpinnerModel()); offsetV.setEditor(new SpinnerEditor(offsetV)); mDefault.addEnableComponent(offsetV, false); add(offsetV, "wrap, w 40"); From 787ef8e3476e07b9d5dc6b489fd036dd86f2221d Mon Sep 17 00:00:00 2001 From: bkuker Date: Fri, 14 Dec 2012 15:06:25 -0500 Subject: [PATCH 4/6] Clean out some comments --- .../gui/configdialog/AppearancePanel.java | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java b/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java index 5135bb715..c2371e99a 100644 --- a/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java +++ b/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java @@ -121,10 +121,6 @@ public class AppearancePanel extends JPanel { } final JButton figureColorButton = new JButton(new ColorIcon(figureColor)); - /*final JButton diffuseColorButton = new JButton(new ColorIcon(ab.getDiffuse())); - final JButton ambientColorButton = new JButton(new ColorIcon(ab.getAmbient())); - final JButton specularColorButton = new JButton(new ColorIcon(ab.getSpecular()));*/ - final JButton colorButton = new JButton(new ColorIcon(ab.getAmbient())); final JComboBox textureDropDown = new JComboBox( new DecalModel(this,document,ab));; @@ -133,9 +129,6 @@ public class AppearancePanel extends JPanel { @Override public void stateChanged(EventObject e) { figureColorButton.setIcon(new ColorIcon(c.getColor())); - /*diffuseColorButton.setIcon(new ColorIcon(ab.getDiffuse())); - ambientColorButton.setIcon(new ColorIcon(ab.getAmbient())); - specularColorButton.setIcon(new ColorIcon(ab.getSpecular()));*/ colorButton.setIcon(new ColorIcon(ab.getColor())); c.setAppearance(ab.getAppearance()); } @@ -154,9 +147,6 @@ public class AppearancePanel extends JPanel { figureColorButton.addActionListener(new ColorActionListener(c, "Color")); colorButton.addActionListener(new ColorActionListener(ab, "Color")); - /*diffuseColorButton.addActionListener(new ColorActionListener(ab, "Diffuse")); - ambientColorButton.addActionListener(new ColorActionListener(ab, "Ambient")); - specularColorButton.addActionListener(new ColorActionListener(ab, "Specular"));*/ BooleanModel mDefault = new BooleanModel(c.getAppearance() == null); BooleanModel fDefault = new BooleanModel(c.getColor() == null); @@ -245,12 +235,6 @@ public class AppearancePanel extends JPanel { p.add(textureDropDown, "grow"); add(p, "span 3, growx, wrap"); } - - /*{ // Diffuse - add(new JLabel(trans.get("AppearanceCfg.lbl.color.diffuse"))); - mDefault.addEnableComponent(diffuseColorButton, false); - add(diffuseColorButton); - }*/ { // Color add(new JLabel(trans.get("AppearanceCfg.lbl.color.Color"))); From f4a85993e60c8989e53c4af79d3f46e820d1c59d Mon Sep 17 00:00:00 2001 From: bkuker Date: Mon, 17 Dec 2012 12:09:56 -0500 Subject: [PATCH 5/6] Disable color choice when you have a texture selected. --- .../openrocket/gui/configdialog/AppearancePanel.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java b/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java index c2371e99a..bd6dc9f20 100644 --- a/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java +++ b/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java @@ -121,7 +121,7 @@ public class AppearancePanel extends JPanel { } final JButton figureColorButton = new JButton(new ColorIcon(figureColor)); - final JButton colorButton = new JButton(new ColorIcon(ab.getAmbient())); + final JButton colorButton = new JButton(new ColorIcon(ab.getColor())); final JComboBox textureDropDown = new JComboBox( new DecalModel(this,document,ab));; @@ -238,8 +238,15 @@ public class AppearancePanel extends JPanel { { // Color add(new JLabel(trans.get("AppearanceCfg.lbl.color.Color"))); - mDefault.addEnableComponent(colorButton, false); + //mDefault.addEnableComponent(colorButton, false); + colorButton.setEnabled(ab.getImage() == null); add(colorButton); + ab.addChangeListener(new StateChangeListener() { + @Override + public void stateChanged(EventObject e) { + colorButton.setEnabled(ab.getImage() == null); + } + }); } { // Scale From 31c351c9d58a2d89ee770af1419f0e3678295051 Mon Sep 17 00:00:00 2001 From: bkuker Date: Mon, 17 Dec 2012 12:14:18 -0500 Subject: [PATCH 6/6] Remove concept of material default for component --- .../gui/configdialog/AppearancePanel.java | 23 ------------------- 1 file changed, 23 deletions(-) diff --git a/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java b/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java index bd6dc9f20..99ed9c78e 100644 --- a/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java +++ b/core/src/net/sf/openrocket/gui/configdialog/AppearancePanel.java @@ -148,7 +148,6 @@ public class AppearancePanel extends JPanel { figureColorButton.addActionListener(new ColorActionListener(c, "Color")); colorButton.addActionListener(new ColorActionListener(ab, "Color")); - BooleanModel mDefault = new BooleanModel(c.getAppearance() == null); BooleanModel fDefault = new BooleanModel(c.getColor() == null); @@ -214,24 +213,11 @@ public class AppearancePanel extends JPanel { {// Texture Header Row add(new StyledLabel(trans.get("AppearanceCfg.lbl.Appearance"), Style.BOLD), "wrap"); - - final JCheckBox materialDefault = new JCheckBox(mDefault); - materialDefault.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - if (materialDefault.isSelected()) { - c.setAppearance(null); - } else { - c.setAppearance(ab.getAppearance()); - } - } - }); } {// Texture File add(new JLabel(trans.get("AppearanceCfg.lbl.Texture"))); JPanel p = new JPanel(new MigLayout("fill, ins 0", "[grow][]")); - mDefault.addEnableComponent(textureDropDown, false); p.add(textureDropDown, "grow"); add(p, "span 3, growx, wrap"); } @@ -255,13 +241,11 @@ public class AppearancePanel extends JPanel { add(new JLabel("x:"), "split 4"); JSpinner scaleU = new JSpinner(new DoubleModel(ab, "ScaleX", TEXTURE_UNIT).getSpinnerModel()); scaleU.setEditor(new SpinnerEditor(scaleU)); - mDefault.addEnableComponent(scaleU, false); add(scaleU, "w 40"); add(new JLabel("y:")); JSpinner scaleV = new JSpinner(new DoubleModel(ab, "ScaleY", TEXTURE_UNIT).getSpinnerModel()); scaleV.setEditor(new SpinnerEditor(scaleV)); - mDefault.addEnableComponent(scaleV, false); add(scaleV, "wrap, w 40"); } @@ -270,8 +254,6 @@ public class AppearancePanel extends JPanel { IntegerModel shineModel = new IntegerModel(ab, "Shine", 0, 100); JSpinner spin = new JSpinner(shineModel.getSpinnerModel()); JSlider slide = new JSlider(shineModel.getSliderModel()); - mDefault.addEnableComponent(slide, false); - mDefault.addEnableComponent(spin, false); add(spin, "split 2, w 50"); add(slide, "w 50"); @@ -284,13 +266,11 @@ public class AppearancePanel extends JPanel { add(new JLabel("x:"), "split 4"); JSpinner offsetU = new JSpinner(new DoubleModel(ab, "OffsetU", TEXTURE_UNIT).getSpinnerModel()); offsetU.setEditor(new SpinnerEditor(offsetU)); - mDefault.addEnableComponent(offsetU, false); add(offsetU, "w 40"); add(new JLabel("y:")); JSpinner offsetV = new JSpinner(new DoubleModel(ab, "OffsetV", TEXTURE_UNIT).getSpinnerModel()); offsetV.setEditor(new SpinnerEditor(offsetV)); - mDefault.addEnableComponent(offsetV, false); add(offsetV, "wrap, w 40"); } @@ -299,7 +279,6 @@ public class AppearancePanel extends JPanel { EdgeMode[] list = new EdgeMode[EdgeMode.values().length + 1]; System.arraycopy(EdgeMode.values(), 0, list, 1, EdgeMode.values().length); JComboBox combo = new JComboBox(new EnumModel(ab, "EdgeMode", list)); - mDefault.addEnableComponent(combo, false); add(combo); } @@ -309,11 +288,9 @@ public class AppearancePanel extends JPanel { DoubleModel rotationModel = new DoubleModel(ab, "Rotation", UnitGroup.UNITS_ANGLE); JSpinner rotation = new JSpinner(rotationModel.getSpinnerModel()); rotation.setEditor(new SpinnerEditor(rotation)); - mDefault.addEnableComponent(rotation, false); add(rotation, "split 3, w 50"); add(new UnitSelector(rotationModel)); BasicSlider bs = new BasicSlider(rotationModel.getSliderModel(-Math.PI, Math.PI)); - mDefault.addEnableComponent(bs, false); add(bs, "w 50, wrap"); }