trackeditor: only generate slider changed events when the user changes the slider

git-svn-id: https://svn.code.sf.net/p/speed-dreams/code/trunk@9251 30fe4595-0a0c-4342-8851-515496e4dcbd
This commit is contained in:
iobyte 2024-01-17 19:36:52 +00:00
parent ff0a08a9e5
commit 94b30199f9
4 changed files with 11 additions and 28 deletions

View File

@ -65,8 +65,6 @@ public class SegmentEditorDlg extends JDialog implements SliderListener
EditorFrame editorFrame;
public boolean dirty = false;
private boolean setSource = false;
private JPanel jContentPane = null; // @jve:decl-index=0:visual-constraint="377,10"
private JTabbedPane jTabbedPane = null;
@ -681,8 +679,6 @@ public class SegmentEditorDlg extends JDialog implements SliderListener
public void setShape(Segment shape)
{
setSource = true;
this.shape = shape;
addSurface(roadSurfaceVector, shape.getSurface());
this.getRightPanel().setSide(shape, shape.getRight());
@ -773,8 +769,6 @@ public class SegmentEditorDlg extends JDialog implements SliderListener
}
this.validate();
this.repaint();
setSource = false;
}
public void update()
@ -887,11 +881,6 @@ public class SegmentEditorDlg extends JDialog implements SliderListener
*/
public void sliderChanged(SegmentSlider slider)
{
// ignore when triggered by setShape
if (setSource)
{
return;
}
// TODO I don't know if this is the best way to fix this but it works
if (slider.getMethod() == null || slider.getMethod().isEmpty())
return;

View File

@ -112,8 +112,6 @@ public class SegmentSideProperties extends JPanel implements SliderListener
private SegmentSlider barrierWidthSlider = null;
private SegmentSlider borderHeightSlider = null;
private boolean setSource = false;
/**
*
*/
@ -326,7 +324,7 @@ public class SegmentSideProperties extends JPanel implements SliderListener
if (style == "none")
style = null;
side.setBorderStyle(style);
if (setSource || !styleChanged)
if (!styleChanged)
{
return;
}
@ -493,7 +491,7 @@ public class SegmentSideProperties extends JPanel implements SliderListener
if (style == "none")
style = null;
side.setBarrierStyle(style);
if (setSource || !styleChanged)
if (!styleChanged)
{
return;
}
@ -686,8 +684,6 @@ public class SegmentSideProperties extends JPanel implements SliderListener
public void setSide(Segment segment, SegmentSide side)
{
setSource = true;
this.side = side;
// update side
@ -860,8 +856,6 @@ public class SegmentSideProperties extends JPanel implements SliderListener
this.validate();
this.repaint();
setSource = false;
}
private void checkBorderPlan(Segment segment, SegmentSide side)
@ -1233,11 +1227,6 @@ public class SegmentSideProperties extends JPanel implements SliderListener
*/
public void sliderChanged(SegmentSlider slider)
{
// ignore when triggered by setSide
if (setSource)
{
return;
}
Interpreter line = new Interpreter();
String command = "";

View File

@ -20,6 +20,8 @@
*/
package gui.segment;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.text.NumberFormat;
@ -532,9 +534,9 @@ public class SegmentSlider extends JPanel
{
SliderLink()
{
checkBox.addChangeListener(new ChangeListener()
checkBox.addActionListener(new ActionListener()
{
public void stateChanged(ChangeEvent e)
public void actionPerformed(ActionEvent actionEvent)
{
checkBoxChanged();
}
@ -553,7 +555,10 @@ public class SegmentSlider extends JPanel
{
public void stateChanged(ChangeEvent e)
{
sliderChanged();
if (slider.getValueIsAdjusting())
{
sliderChanged();
}
}
});
}

View File

@ -34,7 +34,7 @@ public class Properties
private static Properties instance = new Properties();
private Vector<ActionListener> propertiesListeners = new Vector<ActionListener>();
public final String title = "sd2-trackeditor";
public final String version = "1.3.37";
public final String version = "1.3.38";
private String path;
private double imageScale = 1;