Class 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

Abstract base class for all text entry widgets.

Use in UiBinder Templates

  • Constructor Details

    • 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 Details

    • 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<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 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 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 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 HasValue<T>
      Specified by:
      getValue in interface TakesValue<T>
      Returns:
      the object's value
      See Also:
    • getValueOrThrow

      public T getValueOrThrow() throws ParseException
      Return the parsed value, or null if the field is empty.
      Throws:
      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)
    • 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(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(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 HasValue<T>
      Specified by:
      setValue in interface TakesValue<T>
      Parameters:
      value - the object's new value
      See Also:
    • 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