com.google.gwt.user.client.ui

## Class FocusWidget

- java.lang.Object
- - com.google.gwt.user.client.ui.UIObject
  - - com.google.gwt.user.client.ui.Widget
    - - com.google.gwt.user.client.ui.FocusWidget

- All Implemented Interfaces:
    HasAllDragAndDropHandlers, HasAllFocusHandlers, HasAllGestureHandlers, HasAllKeyHandlers, HasAllMouseHandlers, HasAllTouchHandlers, HasBlurHandlers, 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, HasHandlers, EventListener, Focusable, HasEnabled, HasFocus, HasVisibility, IsWidget, SourcesClickEvents, SourcesFocusEvents, SourcesKeyboardEvents, SourcesMouseEvents
  Direct Known Subclasses:
    Anchor, ButtonBase, Canvas, FileUpload, ListBox, MediaBase, RichTextArea, SimpleCheckBox, ValueBoxBase

      public abstract class FocusWidget
      extends Widget
      implements SourcesClickEvents, HasClickHandlers, HasDoubleClickHandlers, HasFocus, HasEnabled, HasAllDragAndDropHandlers, HasAllFocusHandlers, HasAllGestureHandlers, HasAllKeyHandlers, HasAllMouseHandlers, HasAllTouchHandlers, SourcesMouseEvents

  Abstract base class for most widgets that can receive keyboard focus.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject

      `UIObject.DebugIdImpl, UIObject.DebugIdImplEnabled`

  - ### 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

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `FocusWidget()` Creates a new focus widget with no element.
    `protected` | `FocusWidget(Element elem)` Creates a new focus widget that wraps the specified browser element.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `HandlerRegistration` | `addBlurHandler(BlurHandler handler)` Adds a `BlurEvent` handler.
    `HandlerRegistration` | `addClickHandler(ClickHandler handler)` Adds a `ClickEvent` handler.
    `void` | `addClickListener(ClickListener listener)` Deprecated. Use `addClickHandler(com.google.gwt.event.dom.client.ClickHandler)` instead
    `HandlerRegistration` | `addDoubleClickHandler(DoubleClickHandler handler)` Adds a `DoubleClickEvent` handler.
    `HandlerRegistration` | `addDragEndHandler(DragEndHandler handler)` Adds a `DragEndEvent` handler.
    `HandlerRegistration` | `addDragEnterHandler(DragEnterHandler handler)` Adds a `DragEnterEvent` handler.
    `HandlerRegistration` | `addDragHandler(DragHandler handler)` Adds a `DragEvent` handler.
    `HandlerRegistration` | `addDragLeaveHandler(DragLeaveHandler handler)` Adds a `DragLeaveEvent` handler.
    `HandlerRegistration` | `addDragOverHandler(DragOverHandler handler)` Adds a `DragOverEvent` handler.
    `HandlerRegistration` | `addDragStartHandler(DragStartHandler handler)` Adds a `DragStartEvent` handler.
    `HandlerRegistration` | `addDropHandler(DropHandler handler)` Adds a `DropEvent` handler.
    `HandlerRegistration` | `addFocusHandler(FocusHandler handler)` Adds a `FocusEvent` handler.
    `void` | `addFocusListener(FocusListener listener)` Deprecated. Use `addFocusHandler(com.google.gwt.event.dom.client.FocusHandler)` instead
    `HandlerRegistration` | `addGestureChangeHandler(GestureChangeHandler handler)` Adds a `GestureChangeEvent` handler.
    `HandlerRegistration` | `addGestureEndHandler(GestureEndHandler handler)` Adds a `GestureEndEvent` handler.
    `HandlerRegistration` | `addGestureStartHandler(GestureStartHandler handler)` Adds a `GestureStartEvent` handler.
    `void` | `addKeyboardListener(KeyboardListener listener)` Deprecated. Use `addKeyDownHandler(com.google.gwt.event.dom.client.KeyDownHandler)`, `addKeyUpHandler(com.google.gwt.event.dom.client.KeyUpHandler)` and `addKeyPressHandler(com.google.gwt.event.dom.client.KeyPressHandler)` instead
    `HandlerRegistration` | `addKeyDownHandler(KeyDownHandler handler)` Adds a `KeyDownEvent` handler.
    `HandlerRegistration` | `addKeyPressHandler(KeyPressHandler handler)` Adds a `KeyPressEvent` handler.
    `HandlerRegistration` | `addKeyUpHandler(KeyUpHandler handler)` Adds a `KeyUpEvent` handler.
    `HandlerRegistration` | `addMouseDownHandler(MouseDownHandler handler)` Adds a `MouseDownEvent` handler.
    `void` | `addMouseListener(MouseListener listener)` Deprecated. Use `addMouseOverHandler(com.google.gwt.event.dom.client.MouseOverHandler)` `addMouseMoveHandler(com.google.gwt.event.dom.client.MouseMoveHandler)`, `addMouseDownHandler(com.google.gwt.event.dom.client.MouseDownHandler)`, `addMouseUpHandler(com.google.gwt.event.dom.client.MouseUpHandler)` and `addMouseOutHandler(com.google.gwt.event.dom.client.MouseOutHandler)` instead
    `HandlerRegistration` | `addMouseMoveHandler(MouseMoveHandler handler)` Adds a `MouseMoveEvent` handler.
    `HandlerRegistration` | `addMouseOutHandler(MouseOutHandler handler)` Adds a `MouseOutEvent` handler.
    `HandlerRegistration` | `addMouseOverHandler(MouseOverHandler handler)` Adds a `MouseOverEvent` handler.
    `HandlerRegistration` | `addMouseUpHandler(MouseUpHandler handler)` Adds a `MouseUpEvent` handler.
    `HandlerRegistration` | `addMouseWheelHandler(MouseWheelHandler handler)` Adds a `MouseWheelEvent` handler.
    `void` | `addMouseWheelListener(MouseWheelListener listener)` Deprecated. Use `addMouseWheelHandler(com.google.gwt.event.dom.client.MouseWheelHandler)` instead
    `HandlerRegistration` | `addTouchCancelHandler(TouchCancelHandler handler)` Adds a `TouchCancelEvent` handler.
    `HandlerRegistration` | `addTouchEndHandler(TouchEndHandler handler)` Adds a `TouchEndEvent` handler.
    `HandlerRegistration` | `addTouchMoveHandler(TouchMoveHandler handler)` Adds a `TouchMoveEvent` handler.
    `HandlerRegistration` | `addTouchStartHandler(TouchStartHandler handler)` Adds a `TouchStartEvent` handler.
    `protected static com.google.gwt.user.client.ui.impl.FocusImpl` | `getFocusImpl()` Gets the FocusImpl instance.
    `int` | `getTabIndex()` Gets the tab index.
    `boolean` | `isEnabled()` Gets whether this widget is enabled.
    `protected void` | `onAttach()` This method is called when a widget is attached to the browser's document.
    `void` | `removeClickListener(ClickListener listener)` Deprecated. Use the `HandlerRegistration.removeHandler()` method on the object returned by `addClickHandler(com.google.gwt.event.dom.client.ClickHandler)` instead
    `void` | `removeFocusListener(FocusListener listener)` Deprecated. Use the `HandlerRegistration.removeHandler()` method on the object returned by `addFocusHandler(com.google.gwt.event.dom.client.FocusHandler)` instead
    `void` | `removeKeyboardListener(KeyboardListener listener)` Deprecated. Use the `HandlerRegistration.removeHandler()` method on the object returned by an add*Handler method instead
    `void` | `removeMouseListener(MouseListener listener)` Deprecated. Use the `HandlerRegistration.removeHandler()` method on the object returned by an add*Handler method instead
    `void` | `removeMouseWheelListener(MouseWheelListener listener)` Deprecated. Use the `HandlerRegistration.removeHandler()` method on the object returned by `addMouseWheelHandler(com.google.gwt.event.dom.client.MouseWheelHandler)` instead
    `void` | `setAccessKey(char key)` Sets the widget's 'access key'.
    `void` | `setEnabled(boolean enabled)` Sets whether this widget is enabled.
    `void` | `setFocus(boolean focused)` Explicitly focus/unfocus this widget.
    `void` | `setTabIndex(int index)` Sets the widget's position in the tab index.

    - ### 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, onBrowserEvent, onDetach, onLoad, 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.shared.HasHandlers

      `fireEvent`

- - ### Constructor Detail

    - #### FocusWidget

          protected FocusWidget()

      Creates a new focus widget with no element. `UIObject.setElement(Element)` must be called before any other methods.

    - #### FocusWidget

          protected FocusWidget(Element elem)

      Creates a new focus widget that wraps the specified browser element.
      Parameters:
        `elem` - the element to be wrapped

  - ### Method Detail

    - #### getFocusImpl

          protected static com.google.gwt.user.client.ui.impl.FocusImpl getFocusImpl()

      Gets the FocusImpl instance.
      Returns:
        impl

    - #### addBlurHandler

          public HandlerRegistration addBlurHandler(BlurHandler handler)

      Description copied from interface: `HasBlurHandlers`
      Adds a `BlurEvent` handler.
      Specified by:
        `addBlurHandler` in interface `HasBlurHandlers`
      Parameters:
        `handler` - the blur handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addClickHandler

          public HandlerRegistration addClickHandler(ClickHandler handler)

      Description copied from interface: `HasClickHandlers`
      Adds a `ClickEvent` handler.
      Specified by:
        `addClickHandler` in interface `HasClickHandlers`
      Parameters:
        `handler` - the click handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addClickListener

          @Deprecated
          public void addClickListener(ClickListener listener)

      Deprecated. Use `addClickHandler(com.google.gwt.event.dom.client.ClickHandler)` instead
      Description copied from interface: `SourcesClickEvents`
      Adds a listener interface to receive click events.
      Specified by:
        `addClickListener` in interface `SourcesClickEvents`
      Parameters:
        `listener` - the listener interface to add

    - #### addDoubleClickHandler

          public HandlerRegistration addDoubleClickHandler(DoubleClickHandler handler)

      Description copied from interface: `HasDoubleClickHandlers`
      Adds a `DoubleClickEvent` handler.
      Specified by:
        `addDoubleClickHandler` in interface `HasDoubleClickHandlers`
      Parameters:
        `handler` - the double click handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addDragEndHandler

          public HandlerRegistration addDragEndHandler(DragEndHandler handler)

      Description copied from interface: `HasDragEndHandlers`
      Adds a `DragEndEvent` handler.
      Specified by:
        `addDragEndHandler` in interface `HasDragEndHandlers`
      Parameters:
        `handler` - the drag end handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addDragEnterHandler

          public HandlerRegistration addDragEnterHandler(DragEnterHandler handler)

      Description copied from interface: `HasDragEnterHandlers`
      Adds a `DragEnterEvent` handler.
      Specified by:
        `addDragEnterHandler` in interface `HasDragEnterHandlers`
      Parameters:
        `handler` - the drag end handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addDragHandler

          public HandlerRegistration addDragHandler(DragHandler handler)

      Description copied from interface: `HasDragHandlers`
      Adds a `DragEvent` handler.
      Specified by:
        `addDragHandler` in interface `HasDragHandlers`
      Parameters:
        `handler` - the drag handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addDragLeaveHandler

          public HandlerRegistration addDragLeaveHandler(DragLeaveHandler handler)

      Description copied from interface: `HasDragLeaveHandlers`
      Adds a `DragLeaveEvent` handler.
      Specified by:
        `addDragLeaveHandler` in interface `HasDragLeaveHandlers`
      Parameters:
        `handler` - the drag leave handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addDragOverHandler

          public HandlerRegistration addDragOverHandler(DragOverHandler handler)

      Description copied from interface: `HasDragOverHandlers`
      Adds a `DragOverEvent` handler.
      Specified by:
        `addDragOverHandler` in interface `HasDragOverHandlers`
      Parameters:
        `handler` - the drag over handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addDragStartHandler

          public HandlerRegistration addDragStartHandler(DragStartHandler handler)

      Description copied from interface: `HasDragStartHandlers`
      Adds a `DragStartEvent` handler.
      Specified by:
        `addDragStartHandler` in interface `HasDragStartHandlers`
      Parameters:
        `handler` - the drag start handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addDropHandler

          public HandlerRegistration addDropHandler(DropHandler handler)

      Description copied from interface: `HasDropHandlers`
      Adds a `DropEvent` handler.
      Specified by:
        `addDropHandler` in interface `HasDropHandlers`
      Parameters:
        `handler` - the drop handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addFocusHandler

          public HandlerRegistration addFocusHandler(FocusHandler handler)

      Description copied from interface: `HasFocusHandlers`
      Adds a `FocusEvent` handler.
      Specified by:
        `addFocusHandler` in interface `HasFocusHandlers`
      Parameters:
        `handler` - the focus handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addFocusListener

          @Deprecated
          public void addFocusListener(FocusListener listener)

      Deprecated. Use `addFocusHandler(com.google.gwt.event.dom.client.FocusHandler)` instead
      Description copied from interface: `SourcesFocusEvents`
      Adds a listener interface to receive focus events.
      Specified by:
        `addFocusListener` in interface `SourcesFocusEvents`
      Parameters:
        `listener` - the listener interface to add

    - #### addGestureChangeHandler

          public HandlerRegistration addGestureChangeHandler(GestureChangeHandler handler)

      Description copied from interface: `HasGestureChangeHandlers`
      Adds a `GestureChangeEvent` handler.
      Specified by:
        `addGestureChangeHandler` in interface `HasGestureChangeHandlers`
      Parameters:
        `handler` - the gesture change handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addGestureEndHandler

          public HandlerRegistration addGestureEndHandler(GestureEndHandler handler)

      Description copied from interface: `HasGestureEndHandlers`
      Adds a `GestureEndEvent` handler.
      Specified by:
        `addGestureEndHandler` in interface `HasGestureEndHandlers`
      Parameters:
        `handler` - the gesture end handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addGestureStartHandler

          public HandlerRegistration addGestureStartHandler(GestureStartHandler handler)

      Description copied from interface: `HasGestureStartHandlers`
      Adds a `GestureStartEvent` handler.
      Specified by:
        `addGestureStartHandler` in interface `HasGestureStartHandlers`
      Parameters:
        `handler` - the gesture start handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addKeyboardListener

          @Deprecated
          public void addKeyboardListener(KeyboardListener listener)

      Deprecated. Use `addKeyDownHandler(com.google.gwt.event.dom.client.KeyDownHandler)`, `addKeyUpHandler(com.google.gwt.event.dom.client.KeyUpHandler)` and `addKeyPressHandler(com.google.gwt.event.dom.client.KeyPressHandler)` instead
      Description copied from interface: `SourcesKeyboardEvents`
      Adds a listener interface to receive keyboard events.
      Specified by:
        `addKeyboardListener` in interface `SourcesKeyboardEvents`
      Parameters:
        `listener` - the listener interface to add

    - #### addKeyDownHandler

          public HandlerRegistration addKeyDownHandler(KeyDownHandler handler)

      Description copied from interface: `HasKeyDownHandlers`
      Adds a `KeyDownEvent` handler.
      Specified by:
        `addKeyDownHandler` in interface `HasKeyDownHandlers`
      Parameters:
        `handler` - the key down handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addKeyPressHandler

          public HandlerRegistration addKeyPressHandler(KeyPressHandler handler)

      Description copied from interface: `HasKeyPressHandlers`
      Adds a `KeyPressEvent` handler.
      Specified by:
        `addKeyPressHandler` in interface `HasKeyPressHandlers`
      Parameters:
        `handler` - the key press handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addKeyUpHandler

          public HandlerRegistration addKeyUpHandler(KeyUpHandler handler)

      Description copied from interface: `HasKeyUpHandlers`
      Adds a `KeyUpEvent` handler.
      Specified by:
        `addKeyUpHandler` in interface `HasKeyUpHandlers`
      Parameters:
        `handler` - the key up handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addMouseDownHandler

          public HandlerRegistration addMouseDownHandler(MouseDownHandler handler)

      Description copied from interface: `HasMouseDownHandlers`
      Adds a `MouseDownEvent` handler.
      Specified by:
        `addMouseDownHandler` in interface `HasMouseDownHandlers`
      Parameters:
        `handler` - the mouse down handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addMouseListener

          @Deprecated
          public void addMouseListener(MouseListener listener)

      Deprecated. Use `addMouseOverHandler(com.google.gwt.event.dom.client.MouseOverHandler)` `addMouseMoveHandler(com.google.gwt.event.dom.client.MouseMoveHandler)`, `addMouseDownHandler(com.google.gwt.event.dom.client.MouseDownHandler)`, `addMouseUpHandler(com.google.gwt.event.dom.client.MouseUpHandler)` and `addMouseOutHandler(com.google.gwt.event.dom.client.MouseOutHandler)` instead
      Description copied from interface: `SourcesMouseEvents`
      Adds a listener interface to receive mouse events.
      Specified by:
        `addMouseListener` in interface `SourcesMouseEvents`
      Parameters:
        `listener` - the listener interface to add

    - #### addMouseMoveHandler

          public HandlerRegistration addMouseMoveHandler(MouseMoveHandler handler)

      Description copied from interface: `HasMouseMoveHandlers`
      Adds a `MouseMoveEvent` handler.
      Specified by:
        `addMouseMoveHandler` in interface `HasMouseMoveHandlers`
      Parameters:
        `handler` - the mouse move handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addMouseOutHandler

          public HandlerRegistration addMouseOutHandler(MouseOutHandler handler)

      Description copied from interface: `HasMouseOutHandlers`
      Adds a `MouseOutEvent` handler.
      Specified by:
        `addMouseOutHandler` in interface `HasMouseOutHandlers`
      Parameters:
        `handler` - the mouse out handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addMouseOverHandler

          public HandlerRegistration addMouseOverHandler(MouseOverHandler handler)

      Description copied from interface: `HasMouseOverHandlers`
      Adds a `MouseOverEvent` handler.
      Specified by:
        `addMouseOverHandler` in interface `HasMouseOverHandlers`
      Parameters:
        `handler` - the mouse over handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addMouseUpHandler

          public HandlerRegistration addMouseUpHandler(MouseUpHandler handler)

      Description copied from interface: `HasMouseUpHandlers`
      Adds a `MouseUpEvent` handler.
      Specified by:
        `addMouseUpHandler` in interface `HasMouseUpHandlers`
      Parameters:
        `handler` - the mouse up handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addMouseWheelHandler

          public HandlerRegistration addMouseWheelHandler(MouseWheelHandler handler)

      Description copied from interface: `HasMouseWheelHandlers`
      Adds a `MouseWheelEvent` handler.
      Specified by:
        `addMouseWheelHandler` in interface `HasMouseWheelHandlers`
      Parameters:
        `handler` - the mouse wheel handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addMouseWheelListener

          @Deprecated
          public void addMouseWheelListener(MouseWheelListener listener)

      Deprecated. Use `addMouseWheelHandler(com.google.gwt.event.dom.client.MouseWheelHandler)` instead

    - #### addTouchCancelHandler

          public HandlerRegistration addTouchCancelHandler(TouchCancelHandler handler)

      Description copied from interface: `HasTouchCancelHandlers`
      Adds a `TouchCancelEvent` handler.
      Specified by:
        `addTouchCancelHandler` in interface `HasTouchCancelHandlers`
      Parameters:
        `handler` - the touch cancel handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addTouchEndHandler

          public HandlerRegistration addTouchEndHandler(TouchEndHandler handler)

      Description copied from interface: `HasTouchEndHandlers`
      Adds a `TouchEndEvent` handler.
      Specified by:
        `addTouchEndHandler` in interface `HasTouchEndHandlers`
      Parameters:
        `handler` - the touch end handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addTouchMoveHandler

          public HandlerRegistration addTouchMoveHandler(TouchMoveHandler handler)

      Description copied from interface: `HasTouchMoveHandlers`
      Adds a `TouchMoveEvent` handler.
      Specified by:
        `addTouchMoveHandler` in interface `HasTouchMoveHandlers`
      Parameters:
        `handler` - the touch move handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addTouchStartHandler

          public HandlerRegistration addTouchStartHandler(TouchStartHandler handler)

      Description copied from interface: `HasTouchStartHandlers`
      Adds a `TouchStartEvent` handler.
      Specified by:
        `addTouchStartHandler` in interface `HasTouchStartHandlers`
      Parameters:
        `handler` - the touch start handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### getTabIndex

          public int getTabIndex()

      Gets the tab index.
      Specified by:
        `getTabIndex` in interface `Focusable`
      Returns:
        the tab index

    - #### isEnabled

          public boolean isEnabled()

      Gets whether this widget is enabled.
      Specified by:
        `isEnabled` in interface `HasEnabled`
      Returns:
        `true` if the widget is enabled

    - #### removeClickListener

          @Deprecated
          public void removeClickListener(ClickListener listener)

      Deprecated. Use the `HandlerRegistration.removeHandler()` method on the object returned by `addClickHandler(com.google.gwt.event.dom.client.ClickHandler)` instead
      Description copied from interface: `SourcesClickEvents`
      Removes a previously added listener interface.
      Specified by:
        `removeClickListener` in interface `SourcesClickEvents`
      Parameters:
        `listener` - the listener interface to remove

    - #### removeFocusListener

          @Deprecated
          public void removeFocusListener(FocusListener listener)

      Deprecated. Use the `HandlerRegistration.removeHandler()` method on the object returned by `addFocusHandler(com.google.gwt.event.dom.client.FocusHandler)` instead
      Description copied from interface: `SourcesFocusEvents`
      Removes a previously added listener interface.
      Specified by:
        `removeFocusListener` in interface `SourcesFocusEvents`
      Parameters:
        `listener` - the listener interface to remove

    - #### removeKeyboardListener

          @Deprecated
          public void removeKeyboardListener(KeyboardListener listener)

      Deprecated. Use the `HandlerRegistration.removeHandler()` method on the object returned by an add*Handler method instead
      Description copied from interface: `SourcesKeyboardEvents`
      Removes a previously added listener interface.
      Specified by:
        `removeKeyboardListener` in interface `SourcesKeyboardEvents`
      Parameters:
        `listener` - the listener interface to remove

    - #### removeMouseListener

          @Deprecated
          public void removeMouseListener(MouseListener listener)

      Deprecated. Use the `HandlerRegistration.removeHandler()` method on the object returned by an add*Handler method instead
      Description copied from interface: `SourcesMouseEvents`
      Removes a previously added listener interface.
      Specified by:
        `removeMouseListener` in interface `SourcesMouseEvents`
      Parameters:
        `listener` - the listener interface to remove

    - #### removeMouseWheelListener

          @Deprecated
          public void removeMouseWheelListener(MouseWheelListener listener)

      Deprecated. Use the `HandlerRegistration.removeHandler()` method on the object returned by `addMouseWheelHandler(com.google.gwt.event.dom.client.MouseWheelHandler)` instead

    - #### setAccessKey

          public void setAccessKey(char key)

      Description copied from interface: `Focusable`
      Sets the widget's 'access key'. This key is used (in conjunction with a browser-specific modifier key) to automatically focus the widget.
      Specified by:
        `setAccessKey` in interface `Focusable`
      Parameters:
        `key` - the widget's access key

    - #### setEnabled

          public void setEnabled(boolean enabled)

      Sets whether this widget is enabled.
      Specified by:
        `setEnabled` in interface `HasEnabled`
      Parameters:
        `enabled` - `true` to enable the widget, `false` to disable it

    - #### setFocus

          public void setFocus(boolean focused)

      Description copied from interface: `Focusable`
      Explicitly focus/unfocus this widget. Only one widget can have focus at a time, and the widget that does will receive all keyboard events. NOTE: Most browsers fire FocusEvents asynchronously. Especially within GWT tests, you'll need to make your test asynchronous to properly do verifications. See `GWTTestCase#delayTestFinish` for more information on how to do this.
      Specified by:
        `setFocus` in interface `Focusable`
      Parameters:
        `focused` - whether this widget should take focus or release it

    - #### setTabIndex

          public void setTabIndex(int index)

      Description copied from interface: `Focusable`
      Sets the widget's position in the tab index. If more than one widget has the same tab index, each such widget will receive focus in an arbitrary order. Setting the tab index to `-1` will cause this widget to be removed from the tab order.
      Specified by:
        `setTabIndex` in interface `Focusable`
      Parameters:
        `index` - the widget's tab index

    - #### onAttach

          protected void onAttach()

      Description copied from class: `Widget`

      This method is called when a widget is attached to the browser's document. To receive notification after a Widget has been added to the document, override the `Widget.onLoad()` method or use `Widget.addAttachHandler(com.google.gwt.event.logical.shared.AttachEvent.Handler)`.

      It is strongly recommended that you override `Widget.onLoad()` or `Widget.doAttachChildren()` instead of this method to avoid inconsistencies between logical and physical attachment states.

      Subclasses that override this method must call `super.onAttach()` to ensure that the Widget has been attached to its underlying Element.

      Overrides:
        `onAttach` in class `Widget`
      See Also:
        `Widget.onLoad()`, `Widget.doAttachChildren()`