GWT 2.7.0

com.google.gwt.user.client.ui
Class ValueBoxBase<T>

java.lang.Object
  extended by com.google.gwt.user.client.ui.UIObject
      extended by com.google.gwt.user.client.ui.Widget
          extended by com.google.gwt.user.client.ui.FocusWidget
              extended by com.google.gwt.user.client.ui.ValueBoxBase<T>
Type Parameters:
T - the value type
All Implemented Interfaces:
IsEditor<ValueBoxEditor<T>>, HasAllDragAndDropHandlers, HasAllFocusHandlers, HasAllGestureHandlers, HasAllKeyHandlers, HasAllMouseHandlers, HasAllTouchHandlers, HasBlurHandlers, HasChangeHandlers, HasClickHandlers, HasDoubleClickHandlers, HasDragEndHandlers, HasDragEnterHandlers, HasDragHandlers, HasDragLeaveHandlers, HasDragOverHandlers, HasDragStartHandlers, HasDropHandlers, HasFocusHandlers, HasGestureChangeHandlers, HasGestureEndHandlers, HasGestureStartHandlers, HasKeyDownHandlers, HasKeyPressHandlers, HasKeyUpHandlers, HasMouseDownHandlers, HasMouseMoveHandlers, HasMouseOutHandlers, HasMouseOverHandlers, HasMouseUpHandlers, HasMouseWheelHandlers, HasTouchCancelHandlers, HasTouchEndHandlers, HasTouchMoveHandlers, HasTouchStartHandlers, HasAttachHandlers, HasValueChangeHandlers<T>, HasHandlers, AutoDirectionHandler.Target, HasDirection, HasDirectionEstimator, EventListener, TakesValue<T>, Focusable, HasEnabled, HasFocus, HasName, HasText, HasValue<T>, HasVisibility, IsWidget, SourcesClickEvents, SourcesFocusEvents, SourcesKeyboardEvents, SourcesMouseEvents
Direct Known Subclasses:
TextBoxBase, ValueBox

public class ValueBoxBase<T>
extends FocusWidget
implements HasChangeHandlers, HasName, HasDirectionEstimator, HasValue<T>, HasText, AutoDirectionHandler.Target, IsEditor<ValueBoxEditor<T>>

Abstract base class for all text entry widgets.

Use in UiBinder Templates


Nested Class Summary
static class ValueBoxBase.TextAlignment
          Alignment values for setAlignment(com.google.gwt.user.client.ui.ValueBoxBase.TextAlignment).
 
Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject
UIObject.DebugIdImpl, UIObject.DebugIdImplEnabled
 
Nested classes/interfaces inherited from interface com.google.gwt.i18n.client.HasDirection
HasDirection.Direction
 
Field Summary
 
Fields inherited from class com.google.gwt.user.client.ui.Widget
eventsToSink
 
Fields inherited from class com.google.gwt.user.client.ui.UIObject
DEBUG_ID_PREFIX, MISSING_ELEMENT_ERROR, SETELEMENT_TWICE_ERROR
 
Constructor Summary
protected ValueBoxBase(Element elem, Renderer<T> renderer, Parser<T> parser)
          Creates a value box that wraps the given browser element handle.
 
Method Summary
 HandlerRegistration addChangeHandler(ChangeHandler handler)
          Adds a ChangeEvent handler.
 HandlerRegistration addValueChangeHandler(ValueChangeHandler<T> handler)
          Adds a ValueChangeEvent handler.
 ValueBoxEditor<T> asEditor()
          Returns an Editor that is backed by the ValueBoxBase.
 void cancelKey()
          If a keyboard event is currently being handled on this text box, calling this method will suppress it.
 int getCursorPos()
          Gets the current position of the cursor (this also serves as the beginning of the text selection).
 HasDirection.Direction getDirection()
          Gets the directionality of the widget.
 DirectionEstimator getDirectionEstimator()
          Gets the direction estimation model of the auto-dir handler.
protected  com.google.gwt.user.client.ui.impl.TextBoxImpl getImpl()
           
 java.lang.String getName()
          Gets the widget's name.
 java.lang.String getSelectedText()
          Gets the text currently selected within this text box.
 int getSelectionLength()
          Gets the length of the current text selection.
 java.lang.String getText()
          Gets this object's text.
 T getValue()
          Return the parsed value, or null if the field is empty or parsing fails.
 T getValueOrThrow()
          Return the parsed value, or null if the field is empty.
 boolean isReadOnly()
          Determines whether or not the widget is read-only.
 void onBrowserEvent(Event event)
          Fired whenever a browser event is received.
protected  void onLoad()
          This method is called immediately after a widget becomes attached to the browser's document.
 void removeChangeListener(ChangeListener listener)
          Deprecated. Use the HandlerRegistration.removeHandler() method on the object returned by addChangeHandler(com.google.gwt.event.dom.client.ChangeHandler) instead
 void selectAll()
          Selects all of the text in the box.
 void setAlignment(ValueBoxBase.TextAlignment align)
           
 void setCursorPos(int pos)
          Sets the cursor position.
 void setDirection(HasDirection.Direction direction)
          Sets the directionality for a widget.
 void setDirectionEstimator(boolean enabled)
          Toggles on / off direction estimation.
 void setDirectionEstimator(DirectionEstimator directionEstimator)
          Sets the direction estimation model of the auto-dir handler.
 void setKey(char key)
          Deprecated. this method only works in IE and should not have been added to the API
 void setName(java.lang.String name)
          Sets the widget's name.
 void setReadOnly(boolean readOnly)
          Turns read-only mode on or off.
 void setSelectionRange(int pos, int length)
          Sets the range of text to be selected.
 void setText(java.lang.String text)
          Sets this object's text.
 void setValue(T value)
          Sets this object's value without firing any events.
 void setValue(T value, boolean fireEvents)
          Sets this object's value.
 
Methods inherited from class com.google.gwt.user.client.ui.FocusWidget
addBlurHandler, addClickHandler, addClickListener, addDoubleClickHandler, addDragEndHandler, addDragEnterHandler, addDragHandler, addDragLeaveHandler, addDragOverHandler, addDragStartHandler, addDropHandler, addFocusHandler, addFocusListener, addGestureChangeHandler, addGestureEndHandler, addGestureStartHandler, addKeyboardListener, addKeyDownHandler, addKeyPressHandler, addKeyUpHandler, addMouseDownHandler, addMouseListener, addMouseMoveHandler, addMouseOutHandler, addMouseOverHandler, addMouseUpHandler, addMouseWheelHandler, addMouseWheelListener, addTouchCancelHandler, addTouchEndHandler, addTouchMoveHandler, addTouchStartHandler, getFocusImpl, getTabIndex, isEnabled, onAttach, removeClickListener, removeFocusListener, removeKeyboardListener, removeMouseListener, removeMouseWheelListener, setAccessKey, setEnabled, setFocus, setTabIndex
 
Methods inherited from class com.google.gwt.user.client.ui.Widget
addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, doAttachChildren, doDetachChildren, ensureHandlers, fireEvent, getHandlerCount, getHandlerManager, getLayoutData, getParent, isAttached, isOrWasAttached, onDetach, onUnload, removeFromParent, replaceElement, setLayoutData, setParent, sinkEvents, unsinkEvents
 
Methods inherited from class com.google.gwt.user.client.ui.UIObject
addStyleDependentName, addStyleName, ensureDebugId, ensureDebugId, ensureDebugId, getAbsoluteLeft, getAbsoluteTop, getElement, getOffsetHeight, getOffsetWidth, getStyleElement, getStyleName, getStyleName, getStylePrimaryName, getStylePrimaryName, getTitle, isVisible, isVisible, onEnsureDebugId, removeStyleDependentName, removeStyleName, resolvePotentialElement, setElement, setElement, setHeight, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setTitle, setVisible, setVisible, setWidth, sinkBitlessEvent, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.google.gwt.event.dom.client.HasKeyUpHandlers
addKeyUpHandler
 
Methods inherited from interface com.google.gwt.event.shared.HasHandlers
fireEvent
 

Constructor Detail

ValueBoxBase

protected ValueBoxBase(Element elem,
                       Renderer<T> renderer,
                       Parser<T> parser)
Creates a value box that wraps the given browser element handle. This is only used by subclasses.

Parameters:
elem - the browser element to wrap
Method Detail

addChangeHandler

public HandlerRegistration addChangeHandler(ChangeHandler handler)
Description copied from interface: HasChangeHandlers
Adds a ChangeEvent handler.

Specified by:
addChangeHandler in interface HasChangeHandlers
Parameters:
handler - the change handler
Returns:
HandlerRegistration used to remove this handler

addValueChangeHandler

public HandlerRegistration addValueChangeHandler(ValueChangeHandler<T> handler)
Description copied from interface: HasValueChangeHandlers
Adds a ValueChangeEvent handler.

Specified by:
addValueChangeHandler in interface HasValueChangeHandlers<T>
Parameters:
handler - the handler
Returns:
the registration for the event

asEditor

public ValueBoxEditor<T> asEditor()
Returns an Editor that is backed by the ValueBoxBase. The default implementation returns ValueBoxEditor.of(ValueBoxBase). Subclasses may override this method to provide custom error-handling when using the Editor framework.

Specified by:
asEditor in interface IsEditor<ValueBoxEditor<T>>
Returns:
an Editor of type E

cancelKey

public void cancelKey()
If a keyboard event is currently being handled on this text box, calling this method will suppress it. This allows listeners to easily filter keyboard input.


getCursorPos

public int getCursorPos()
Gets the current position of the cursor (this also serves as the beginning of the text selection).

Returns:
the cursor's position

getDirection

public HasDirection.Direction getDirection()
Description copied from interface: HasDirection
Gets the directionality of the widget.

Specified by:
getDirection in interface HasDirection
Returns:
RTL if the directionality is right-to-left, LTR if the directionality is left-to-right, or DEFAULT if the directionality is not explicitly specified

getDirectionEstimator

public DirectionEstimator getDirectionEstimator()
Gets the direction estimation model of the auto-dir handler.

Specified by:
getDirectionEstimator in interface HasDirectionEstimator

getName

public java.lang.String getName()
Description copied from interface: HasName
Gets the widget's name.

Specified by:
getName in interface HasName
Returns:
the widget's name

getSelectedText

public java.lang.String getSelectedText()
Gets the text currently selected within this text box.

Returns:
the selected text, or an empty string if none is selected

getSelectionLength

public int getSelectionLength()
Gets the length of the current text selection.

Returns:
the text selection length

getText

public java.lang.String getText()
Description copied from interface: HasText
Gets this object's text.

Specified by:
getText in interface AutoDirectionHandler.Target
Specified by:
getText in interface HasText
Returns:
the object's text

getValue

public T getValue()
Return the parsed value, or null if the field is empty or parsing fails.

Specified by:
getValue in interface TakesValue<T>
Specified by:
getValue in interface HasValue<T>
Returns:
the object's value
See Also:
TakesValue.setValue(V)

getValueOrThrow

public T getValueOrThrow()
                  throws java.text.ParseException
Return the parsed value, or null if the field is empty.

Throws:
java.text.ParseException - if the value cannot be parsed

isReadOnly

public boolean isReadOnly()
Determines whether or not the widget is read-only.

Returns:
true if the widget is currently read-only, false if the widget is currently editable

onBrowserEvent

public void onBrowserEvent(Event event)
Description copied from interface: EventListener
Fired whenever a browser event is received.

Specified by:
onBrowserEvent in interface EventListener
Overrides:
onBrowserEvent in class Widget
Parameters:
event - the event received

removeChangeListener

@Deprecated
public void removeChangeListener(ChangeListener listener)
Deprecated. Use the HandlerRegistration.removeHandler() method on the object returned by addChangeHandler(com.google.gwt.event.dom.client.ChangeHandler) instead


selectAll

public void selectAll()
Selects all of the text in the box. This will only work when the widget is attached to the document and not hidden.


setAlignment

public void setAlignment(ValueBoxBase.TextAlignment align)

setCursorPos

public void setCursorPos(int pos)
Sets the cursor position. This will only work when the widget is attached to the document and not hidden.

Parameters:
pos - the new cursor position

setDirection

public void setDirection(HasDirection.Direction direction)
Description copied from interface: HasDirection
Sets the directionality for a widget.

Specified by:
setDirection in interface HasDirection
Parameters:
direction - RTL if the directionality should be set to right-to-left, LTR if the directionality should be set to left-to-right DEFAULT if the directionality should not be explicitly set

setDirectionEstimator

public void setDirectionEstimator(boolean enabled)
Toggles on / off direction estimation.

Specified by:
setDirectionEstimator in interface HasDirectionEstimator
Parameters:
enabled - Whether to enable direction estimation. If true, sets the DirectionEstimator object to a default DirectionEstimator.

setDirectionEstimator

public void setDirectionEstimator(DirectionEstimator directionEstimator)
Sets the direction estimation model of the auto-dir handler.

Specified by:
setDirectionEstimator in interface HasDirectionEstimator
Parameters:
directionEstimator - The DirectionEstimator to be set. null means turning off direction estimation.

setKey

@Deprecated
public void setKey(char key)
Deprecated. this method only works in IE and should not have been added to the API

If a keyboard event is currently being handled by the text box, this method replaces the unicode character or key code associated with it. This allows listeners to easily filter keyboard input.

Parameters:
key - the new key value

setName

public void setName(java.lang.String name)
Description copied from interface: HasName
Sets the widget's name.

Specified by:
setName in interface HasName
Parameters:
name - the widget's new name

setReadOnly

public void setReadOnly(boolean readOnly)
Turns read-only mode on or off.

Parameters:
readOnly - if true, the widget becomes read-only; if false the widget becomes editable

setSelectionRange

public void setSelectionRange(int pos,
                              int length)
Sets the range of text to be selected. This will only work when the widget is attached to the document and not hidden.

Parameters:
pos - the position of the first character to be selected
length - the number of characters to be selected

setText

public void setText(java.lang.String text)
Sets this object's text. Note that some browsers will manipulate the text before adding it to the widget. For example, most browsers will strip all \r from the text, except IE which will add a \r before each \n. Use getText() to get the text directly from the widget.

Specified by:
setText in interface AutoDirectionHandler.Target
Specified by:
setText in interface HasText
Parameters:
text - the object's new text

setValue

public void setValue(T value)
Description copied from interface: HasValue
Sets this object's value without firing any events. This should be identical to calling setValue(value, false).

It is acceptable to fail assertions or throw (documented) unchecked exceptions in response to bad values.

Widgets must accept null as a valid value. By convention, setting a widget to null clears value, calling getValue() on a cleared widget returns null. Widgets that can not be cleared (e.g. CheckBox) must find another valid meaning for null input.

Specified by:
setValue in interface TakesValue<T>
Specified by:
setValue in interface HasValue<T>
Parameters:
value - the object's new value
See Also:
TakesValue.getValue()

setValue

public void setValue(T value,
                     boolean fireEvents)
Description copied from interface: HasValue
Sets this object's value. Fires ValueChangeEvent when fireEvents is true and the new value does not equal the existing value.

It is acceptable to fail assertions or throw (documented) unchecked exceptions in response to bad values.

Specified by:
setValue in interface HasValue<T>
Parameters:
value - the object's new value
fireEvents - fire events if true and value is new

getImpl

protected com.google.gwt.user.client.ui.impl.TextBoxImpl getImpl()

onLoad

protected void onLoad()
Description copied from class: Widget
This method is called immediately after a widget becomes attached to the browser's document.

Overrides:
onLoad in class Widget

GWT 2.7.0