diff options
-rw-r--r-- | bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/DateTime.java | 81 |
1 files changed, 40 insertions, 41 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/DateTime.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/DateTime.java index 0790957d09..86fbd53bb7 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/DateTime.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/DateTime.java @@ -150,11 +150,11 @@ void createSpinText (boolean dropDown) { // FOR SPINNER }); createDropDownButton(); createPopupShell(-1, -1, -1); - setSpinText(dateTimeString); + setText(dateTimeString); } else { /*SWT.TIME and SWT.DATE */ if (dateTimeString != null) { - setSpinText(dateTimeString); - selectSpinField(0); // set focus on first field + setText(dateTimeString); + selectField(0); // set focus on first field } } } @@ -1409,13 +1409,12 @@ boolean onTextVerify(int key) { int length = end - start; char keyChar = (char) key; String newText =""+ keyChar; - System.out.println(newText); if (fieldName == Calendar.AM_PM) { String[] ampm = formatSymbols.getAmPmStrings(); if (newText.equalsIgnoreCase(ampm[Calendar.AM].substring(0, 1)) || newText.equalsIgnoreCase(ampm[Calendar.AM])) { - setSpinTextField(fieldName, Calendar.AM, true, false); + setTextField(fieldName, Calendar.AM, true, false); } else if (newText.equalsIgnoreCase(ampm[Calendar.PM].substring(0, 1)) || newText.equalsIgnoreCase(ampm[Calendar.PM])) { - setSpinTextField(fieldName, Calendar.PM, true, false); + setTextField(fieldName, Calendar.PM, true, false); } return false; } @@ -1441,9 +1440,9 @@ boolean onTextVerify(int key) { return false; } if (first && newValue == 0 && length > 1) { - setSpinTextField(fieldName, newValue, false, false); + setTextField(fieldName, newValue, false, false); } else if (min <= newValue && newValue <= max) { - setSpinTextField(fieldName, newValue, characterCount == 0, characterCount == 0); + setTextField(fieldName, newValue, characterCount == 0, characterCount == 0); } else { if (newTextLength >= length) { newText = newText.substring(newTextLength - length + 1); @@ -1451,7 +1450,7 @@ boolean onTextVerify(int key) { if (newValue != -1) { characterCount = length - 1; if (min <= newValue && newValue <= max) { - setSpinTextField(fieldName, newValue, characterCount == 0, true); + setTextField(fieldName, newValue, characterCount == 0, true); } } } @@ -1462,7 +1461,7 @@ boolean onTextVerify(int key) { String getSpinText (int start, int end) { checkWidget (); if (!(start <= end && 0 <= end)) return ""; - String str = getSpinText (); + String str = getText (); int length = str.length (); end = Math.min (end, length - 1); if (start > end) return ""; @@ -1496,7 +1495,7 @@ void updateControl() { if (((style & SWT.CALENDAR) == 0) && handle != 0) { String string = getFormattedString(style); ignoreVerify = true; - setSpinText(string); + setText(string); ignoreVerify = false; } redraw(); @@ -1566,8 +1565,8 @@ void createSpinHandle () { * Calculates appropriate width of GtkEntry and * adds Date/Time string to the Date/Time Spinner */ -void setSpinText (String text) { - if ((style & SWT.DROP_DOWN) == 0 ) { +void setText (String text) { + if ((style & SWT.DROP_DOWN) == 0 ) { // Drop down button implemention is not based on GtkSpinButton OS.gtk_spin_button_set_numeric (handle, false); } if (text != null){ @@ -1590,8 +1589,8 @@ long /*int*/ gtk_key_press_event (long /*int*/ widget, long /*int*/ event) { Only drop_down should be hooked to keys, thus when spinner is used up is not called twice on key_press and on gtk_output*/ if((style & SWT.DROP_DOWN) != 0) { - incrementSpinField(+1); - commitCurrentSpinField(); + incrementField(+1); + commitCurrentField(); } break; case OS.GDK_Down: @@ -1599,29 +1598,29 @@ long /*int*/ gtk_key_press_event (long /*int*/ widget, long /*int*/ event) { Only drop_down should be hooked to keys, thus when spinner is used up is not called twice on key_press and on gtk_output*/ if((style & SWT.DROP_DOWN) != 0) { - incrementSpinField(-1); - commitCurrentSpinField(); + incrementField(-1); + commitCurrentField(); } break; case SWT.KEYPAD_DIVIDE: case OS.GDK_Right: - selectSpinField((currentField + 1) % fieldCount); + selectField((currentField + 1) % fieldCount); sendEvent(SWT.Traverse); break; case OS.GDK_Left: int index = currentField - 1; - selectSpinField(index < 0 ? fieldCount - 1 : index); + selectField(index < 0 ? fieldCount - 1 : index); sendEvent(SWT.Traverse); break; case OS.GDK_Home: /* Set the value of the current field to its minimum */ fieldName = fieldNames[currentField]; - setSpinTextField(fieldName, calendar.getActualMinimum(fieldName), true, true); + setTextField(fieldName, calendar.getActualMinimum(fieldName), true, true); break; case OS.GDK_End: /* Set the value of the current field to its maximum */ fieldName = fieldNames[currentField]; - setSpinTextField(fieldName, calendar.getActualMaximum(fieldName), true, true); + setTextField(fieldName, calendar.getActualMaximum(fieldName), true, true); break; default: if (!onTextVerify(key)) @@ -1632,17 +1631,17 @@ long /*int*/ gtk_key_press_event (long /*int*/ widget, long /*int*/ event) { return result; } -void commitCurrentSpinField() { +void commitCurrentField() { if (characterCount > 0) { characterCount = 0; int fieldName = fieldNames[currentField]; int start = fieldIndices[currentField].x; int end = fieldIndices[currentField].y; - String value = getSpinText(getSpinText(),start, end - 1); + String value = getText(getText(),start, end - 1); int s = value.lastIndexOf(' '); if (s != -1) value = value.substring(s + 1); int newValue = unformattedIntValue(fieldName, value, characterCount == 0, calendar.getActualMaximum(fieldName)); - if (newValue != -1) setSpinTextField(fieldName, newValue, true, true); + if (newValue != -1) setTextField(fieldName, newValue, true, true); } } /** returns selected text **/ @@ -1672,7 +1671,7 @@ Point getSelection () { * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li> * </ul> */ -String getSpinText () { +String getText () { checkWidget(); if (handle != 0) { long /*int*/ str = OS.gtk_entry_get_text (handle); @@ -1689,7 +1688,7 @@ String getSpinText () { * returns GtkEntry starting from index and ending with index * provided by the user */ -String getSpinText (String str,int start, int end) { +String getText (String str,int start, int end) { checkWidget (); if (!(start <= end && 0 <= end)) return ""; int length = str.length (); @@ -1714,9 +1713,9 @@ void setSelection (int start, int end) { } -void selectSpinField(int index) { +void selectField(int index) { if (index != currentField) { - commitCurrentSpinField(); + commitCurrentField(); } final int start = fieldIndices[index].x; final int end = fieldIndices[index].y; @@ -1726,7 +1725,7 @@ void selectSpinField(int index) { display.asyncExec(new Runnable() { public void run() { if (handle != 0) { - String value = getSpinText(getSpinText(),start, end - 1); + String value = getText(getText(),start, end - 1); int s = value.lastIndexOf(' '); if (s == -1) s = start; else s = start + s + 1; @@ -1736,7 +1735,7 @@ void selectSpinField(int index) { }); } -void setSpinTextField(int fieldName, int value, boolean commit, boolean adjust) { +void setTextField(int fieldName, int value, boolean commit, boolean adjust) { if (commit) { int max = calendar.getActualMaximum(fieldName); int min = calendar.getActualMinimum(fieldName); @@ -1774,11 +1773,11 @@ void setSpinTextField(int fieldName, int value, boolean commit, boolean adjust) ignoreVerify = true; insert(newValue); ignoreVerify = false; - selectSpinField(currentField); + selectField(currentField); if (commit) setField(fieldName, value); } -void incrementSpinField(int amount) { +void incrementField(int amount) { int fieldName = fieldNames[currentField]; int value = calendar.get(fieldName); if (fieldName == Calendar.HOUR) { @@ -1787,11 +1786,11 @@ void incrementSpinField(int amount) { if ((value == max && amount == 1) || (value == min && amount == -1)) { int temp = currentField; currentField = getFieldIndex(Calendar.AM_PM); - setSpinTextField(Calendar.AM_PM, (calendar.get(Calendar.AM_PM) + 1) % 2, true, true); + setTextField(Calendar.AM_PM, (calendar.get(Calendar.AM_PM) + 1) % 2, true, true); currentField = temp; } } - setSpinTextField(fieldName, value + amount, true, true); + setTextField(fieldName, value + amount, true, true); } long /*int*/ gtk_button_press_event (long /*int*/ widget, long /*int*/ event) { @@ -1799,7 +1798,7 @@ long /*int*/ gtk_button_press_event (long /*int*/ widget, long /*int*/ event) { GdkEventButton gdkEvent = new GdkEventButton (); OS.memmove (gdkEvent, event, GdkEventButton.sizeof); if (gdkEvent.type == OS.GDK_BUTTON_PRESS && gdkEvent.button == 1) { - onSpinTextMouseClick(gdkEvent); + onTextMouseClick(gdkEvent); return gtk_button_press_event(widget, event, false); } } @@ -1816,12 +1815,12 @@ long /*int*/ gtk_output (long /*int*/ widget) { int arrowType = getArrow(widget); switch (arrowType) { case SWT.ARROW_UP: - commitCurrentSpinField(); - incrementSpinField(+1); + commitCurrentField(); + incrementField(+1); break; case SWT.ARROW_DOWN: - commitCurrentSpinField(); - incrementSpinField(-1); + commitCurrentField(); + incrementField(-1); break; } return 1; @@ -1838,7 +1837,7 @@ void insert (String string) { OS.gtk_editable_set_position (handle, start [0]); } -void onSpinTextMouseClick(GdkEventButton event) { +void onTextMouseClick(GdkEventButton event) { Point sel = getSelection(); for (int i = 0; i < fieldCount; i++) { if (sel.x >= fieldIndices[i].x && sel.x <= fieldIndices[i].y) { @@ -1846,7 +1845,7 @@ void onSpinTextMouseClick(GdkEventButton event) { break; } } - selectSpinField(currentField); + selectField(currentField); } void hideDateTime () { |