trackeditor: fix entering negative values in slider
git-svn-id: https://svn.code.sf.net/p/speed-dreams/code/trunk@9287 30fe4595-0a0c-4342-8851-515496e4dcbd Former-commit-id: 43e23f40b50792c31b8a47354dc72481eb29e7eb Former-commit-id: 2df3514f9b82b07b0ab8aba1be97cfcc9d9344df
This commit is contained in:
parent
393cf1b2ec
commit
2c0a55967a
1 changed files with 25 additions and 9 deletions
|
@ -192,7 +192,16 @@ public class SegmentSlider extends JPanel
|
|||
try
|
||||
{
|
||||
String s = document.getText(0, document.getLength());
|
||||
if (!s.equals(""))
|
||||
if (s.equals("-") || s.equals(""))
|
||||
{
|
||||
double oldValue = value;
|
||||
setValueInternal(defaultValue);
|
||||
if (Math.abs(oldValue - value) >= resolution)
|
||||
{
|
||||
valueChanged();
|
||||
}
|
||||
}
|
||||
else if (!s.equals(""))
|
||||
{
|
||||
try
|
||||
{
|
||||
|
@ -225,8 +234,8 @@ public class SegmentSlider extends JPanel
|
|||
{
|
||||
char c = e.getKeyChar();
|
||||
|
||||
// check for valid digit or a single decimal point
|
||||
if (!(Character.isDigit(c) || (!integerFormat && (c == '.' && !textField.getText().contains(".")))))
|
||||
// check for valid digit or a single decimal point or a minus when negative number allowed
|
||||
if (!(Character.isDigit(c) || (min < 0 && c == '-') || (!integerFormat && (c == '.' && !textField.getText().contains(".")))))
|
||||
{
|
||||
e.consume();
|
||||
return;
|
||||
|
@ -520,7 +529,7 @@ public class SegmentSlider extends JPanel
|
|||
value = val;
|
||||
setSliderValue(value);
|
||||
double textValue = 0;
|
||||
if (!getTextField().getText().equals(""))
|
||||
if (!getTextField().getText().equals("") && !getTextField().getText().equals("-"))
|
||||
{
|
||||
try
|
||||
{
|
||||
|
@ -675,6 +684,12 @@ public class SegmentSlider extends JPanel
|
|||
protected void textFieldChanged()
|
||||
{
|
||||
if (!getTextField().getText().equals(""))
|
||||
{
|
||||
if (getTextField().getText().equals("-"))
|
||||
{
|
||||
setValueInternal(defaultValue);
|
||||
}
|
||||
else
|
||||
{
|
||||
try
|
||||
{
|
||||
|
@ -688,4 +703,5 @@ public class SegmentSlider extends JPanel
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} // @jve:decl-index=0:visual-constraint="10,10"
|
||||
|
|
Loading…
Reference in a new issue