From 0f7ca39e5aaeb45d932701984ad32860f1a39afd Mon Sep 17 00:00:00 2001 From: Felipe Heidrich Date: Tue, 15 Jan 2008 15:51:26 +0000 Subject: don't accept + (part of Bug 91317) --- .../Eclipse SWT/gtk/org/eclipse/swt/widgets/Spinner.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Spinner.java') diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Spinner.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Spinner.java index 0180ccb49f..0df3ba0dc2 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Spinner.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Spinner.java @@ -1067,14 +1067,14 @@ String verifyText (String string, int start, int end) { } index = 0; } - int /*long*/ hAdjustment = OS.gtk_spin_button_get_adjustment (handle); - GtkAdjustment adjustment = new GtkAdjustment (); - OS.memmove (adjustment, hAdjustment); - boolean minNegative = adjustment.lower < 0; - boolean maxPositive = adjustment.upper > 0; + if (string.length () > 0) { + int /*long*/ hAdjustment = OS.gtk_spin_button_get_adjustment (handle); + GtkAdjustment adjustment = new GtkAdjustment (); + OS.memmove (adjustment, hAdjustment); + if (adjustment.lower < 0 && string.charAt (0) == '-') index++; + } while (index < string.length ()) { - char ch = string.charAt (index); - if (!(Character.isDigit (ch) || (minNegative && ch == '-') || (maxPositive && ch == '+'))) break; + if (!Character.isDigit (string.charAt (index))) break; index++; } event.doit = index == string.length (); -- cgit