trackeditor: fix save object scale attributes

git-svn-id: https://svn.code.sf.net/p/speed-dreams/code/trunk@8417 30fe4595-0a0c-4342-8851-515496e4dcbd

Former-commit-id: 10dba7440da87681e87fb4156497550922919c16
Former-commit-id: e62c5701a89dd4734e9c8c3f9be92f93c836c7ef
This commit is contained in:
iobyte 2022-08-20 01:08:26 +00:00
parent e4952a5469
commit 8ad9a8c195

View file

@ -223,7 +223,6 @@ public class ObjectProperties extends PropertyPanel
private class ObjectPanel extends JPanel private class ObjectPanel extends JPanel
{ {
private TrackObject object;
private JLabel nameLabel = new JLabel(); private JLabel nameLabel = new JLabel();
private JTextField nameTextField = new JTextField(); private JTextField nameTextField = new JTextField();
private JLabel objectLabel = new JLabel(); private JLabel objectLabel = new JLabel();
@ -256,14 +255,13 @@ public class ObjectProperties extends PropertyPanel
public ObjectPanel(TrackObject object) public ObjectPanel(TrackObject object)
{ {
super(); super();
this.object = object; initialize(object);
initialize();
} }
/** /**
* *
*/ */
private void initialize() private void initialize(TrackObject object)
{ {
setLayout(null); setLayout(null);
@ -371,38 +369,33 @@ public class ObjectProperties extends PropertyPanel
private void scaleTypeChanged() private void scaleTypeChanged()
{ {
String type = scaleTypeComboBox.getSelectedItem().toString(); String type = scaleTypeComboBox.getSelectedItem().toString();
object.setScaleType(type);
if (type.equals("none")) if (type.equals("none"))
{ {
scaleTextField.setEnabled(false); scaleTextField.setEnabled(false);
scaleTextField.setText(null);
scaleMinTextField.setEnabled(false); scaleMinTextField.setEnabled(false);
scaleMinTextField.setText(null);
scaleMaxTextField.setEnabled(false); scaleMaxTextField.setEnabled(false);
object.setScale(Double.NaN); scaleMaxTextField.setText(null);
object.setScaleMin(Double.NaN);
object.setScaleMax(Double.NaN);
} }
else if (type.equals("random")) else if (type.equals("random"))
{ {
scaleTextField.setEnabled(false); scaleTextField.setEnabled(false);
scaleTextField.setText(null);
scaleMinTextField.setEnabled(true); scaleMinTextField.setEnabled(true);
scaleMinTextField.setText(getString(0.5));
scaleMaxTextField.setEnabled(true); scaleMaxTextField.setEnabled(true);
object.setScale(Double.NaN); scaleMaxTextField.setText(getString(2.0));
object.setScaleMin(0.5);
object.setScaleMax(2.0);
} }
else if (type.equals("fixed")) else if (type.equals("fixed"))
{ {
scaleTextField.setEnabled(true); scaleTextField.setEnabled(true);
scaleTextField.setText(getString(1.0));
scaleMinTextField.setEnabled(false); scaleMinTextField.setEnabled(false);
scaleMinTextField.setText(null);
scaleMaxTextField.setEnabled(false); scaleMaxTextField.setEnabled(false);
object.setScale(1.0); scaleMaxTextField.setText(null);
object.setScaleMin(Double.NaN);
object.setScaleMax(Double.NaN);
} }
scaleTextField.setText(getString(object.getScale()));
scaleMinTextField.setText(getString(object.getScaleMin()));
scaleMaxTextField.setText(getString(object.getScaleMax()));
} }
/** /**
@ -573,6 +566,10 @@ public class ObjectProperties extends PropertyPanel
object.setOrientation(getDouble(panel.orientationTextField.getText())); object.setOrientation(getDouble(panel.orientationTextField.getText()));
object.setDeltaHeight(getDouble(panel.deltaHeightTextField.getText())); object.setDeltaHeight(getDouble(panel.deltaHeightTextField.getText()));
object.setDeltaVert(getDouble(panel.deltaVertTextField.getText())); object.setDeltaVert(getDouble(panel.deltaVertTextField.getText()));
object.setScaleType(getString(panel.scaleTypeComboBox.getSelectedItem().toString()));
object.setScale(getDouble(panel.scaleTextField.getText()));
object.setScaleMin(getDouble(panel.scaleMinTextField.getText()));
object.setScaleMax(getDouble(panel.scaleMaxTextField.getText()));
} }
private void setPanelFromObject(TrackObject object, ObjectPanel panel) private void setPanelFromObject(TrackObject object, ObjectPanel panel)
@ -584,6 +581,10 @@ public class ObjectProperties extends PropertyPanel
panel.orientationTextField.setText(setDouble(object.getOrientation())); panel.orientationTextField.setText(setDouble(object.getOrientation()));
panel.deltaHeightTextField.setText(setDouble(object.getDeltaHeight())); panel.deltaHeightTextField.setText(setDouble(object.getDeltaHeight()));
panel.deltaVertTextField.setText(setDouble(object.getDeltaVert())); panel.deltaVertTextField.setText(setDouble(object.getDeltaVert()));
panel.scaleTypeComboBox.setSelectedItem(getString(object.getScaleType()));
panel.scaleTextField.setText(setDouble(object.getScale()));
panel.scaleMinTextField.setText(setDouble(object.getScaleMin()));
panel.scaleMaxTextField.setText(setDouble(object.getScaleMax()));
} }
private String setInteger(int value) private String setInteger(int value)