com.google.gwt.cell.client

## Class EditTextCell

- java.lang.Object
- - com.google.gwt.cell.client.AbstractCell<C>
  - - com.google.gwt.cell.client.AbstractEditableCell<java.lang.String,EditTextCell.ViewData>
    - - com.google.gwt.cell.client.EditTextCell

- All Implemented Interfaces:
    Cell<java.lang.String>

      public class EditTextCell
      extends AbstractEditableCell<java.lang.String,EditTextCell.ViewData>

  An editable text cell. Click to edit, escape to cancel, return to commit.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `(package private) static interface` | `EditTextCell.Template`
    `(package private) static class` | `EditTextCell.ViewData` The view data object used by this cell.

    - ### Nested classes/interfaces inherited from interface com.google.gwt.cell.client.Cell

      `Cell.Context`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `EditTextCell()` Construct a new EditTextCell that will use a `SimpleSafeHtmlRenderer`.
    `EditTextCell(SafeHtmlRenderer<java.lang.String> renderer)` Construct a new EditTextCell that will use a given `SafeHtmlRenderer` to render the value when not in edit mode.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `edit(Cell.Context context, Element parent, java.lang.String value)` Convert the cell to edit mode.
    `boolean` | `isEditing(Cell.Context context, Element parent, java.lang.String value)` Returns true if the cell is currently editing the data identified by the given element and key.
    `void` | `onBrowserEvent(Cell.Context context, Element parent, java.lang.String value, NativeEvent event, ValueUpdater<java.lang.String> valueUpdater)` Handle a browser event that took place within the cell.
    `void` | `render(Cell.Context context, java.lang.String value, SafeHtmlBuilder sb)` Render a cell as HTML into a `SafeHtmlBuilder`, suitable for passing to `Element.setInnerHTML(String)` on a container element.
    `boolean` | `resetFocus(Cell.Context context, Element parent, java.lang.String value)` Reset focus on the Cell.

    - ### Methods inherited from class com.google.gwt.cell.client.AbstractEditableCell

      `clearViewData, getViewData, setViewData`

    - ### Methods inherited from class com.google.gwt.cell.client.AbstractCell

      `dependsOnSelection, getConsumedEvents, handlesSelection, onEnterKeyDown, setValue`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### EditTextCell

          public EditTextCell()

      Construct a new EditTextCell that will use a `SimpleSafeHtmlRenderer`.

    - #### EditTextCell

          public EditTextCell(SafeHtmlRenderer<java.lang.String> renderer)

      Construct a new EditTextCell that will use a given `SafeHtmlRenderer` to render the value when not in edit mode.
      Parameters:
        `renderer` - a `SafeHtmlRenderer` instance

  - ### Method Detail

    - #### isEditing

          public boolean isEditing(Cell.Context context,
                                   Element parent,
                                   java.lang.String value)

      Description copied from class: `AbstractEditableCell`
      Returns true if the cell is currently editing the data identified by the given element and key. While a cell is editing, widgets containing the cell may choose to pass keystrokes directly to the cell rather than using them for navigation purposes.
      Specified by:
        `isEditing` in interface `Cell<java.lang.String>`
      Specified by:
        `isEditing` in class `AbstractEditableCell<java.lang.String,EditTextCell.ViewData>`
      Parameters:
        `context` - the `Context` of the cell
        `parent` - the parent Element
        `value` - the value associated with the cell
      Returns:
        true if the cell is in edit mode

    - #### onBrowserEvent

          public void onBrowserEvent(Cell.Context context,
                                     Element parent,
                                     java.lang.String value,
                                     NativeEvent event,
                                     ValueUpdater<java.lang.String> valueUpdater)

      Description copied from class: `AbstractCell`
      Handle a browser event that took place within the cell. The default implementation returns null.

      If you override this method to add support for events, remember to pass the event types that the cell expects into the constructor.

      Specified by:
        `onBrowserEvent` in interface `Cell<java.lang.String>`
      Overrides:
        `onBrowserEvent` in class `AbstractCell<java.lang.String>`
      Parameters:
        `context` - the `Cell.Context` of the cell
        `parent` - the parent Element
        `value` - the value associated with the cell
        `event` - the native browser event
        `valueUpdater` - a `ValueUpdater`, or null if not specified

    - #### render

          public void render(Cell.Context context,
                             java.lang.String value,
                             SafeHtmlBuilder sb)

      Description copied from interface: `Cell`
      Render a cell as HTML into a `SafeHtmlBuilder`, suitable for passing to `Element.setInnerHTML(String)` on a container element.

      Note: If your cell contains natively focusable elements, such as buttons or input elements, be sure to set the tabIndex to -1 so that they do not steal focus away from the containing widget.

      Specified by:
        `render` in interface `Cell<java.lang.String>`
      Specified by:
        `render` in class `AbstractCell<java.lang.String>`
      Parameters:
        `context` - the `Cell.Context` of the cell
        `value` - the cell value to be rendered
        `sb` - the `SafeHtmlBuilder` to be written to

    - #### resetFocus

          public boolean resetFocus(Cell.Context context,
                                    Element parent,
                                    java.lang.String value)

      Description copied from class: `AbstractCell`
      Reset focus on the Cell. This method is called if the cell has focus when it is refreshed.

      This method is a no-op and returns false. If your cell is editable or can be focused by the user, override this method to reset focus when the containing widget is refreshed.

      Specified by:
        `resetFocus` in interface `Cell<java.lang.String>`
      Overrides:
        `resetFocus` in class `AbstractCell<java.lang.String>`
      Parameters:
        `context` - the `Cell.Context` of the cell
        `parent` - the parent Element
        `value` - the value associated with the cell
      Returns:
        true if focus is taken, false if not

    - #### edit

          protected void edit(Cell.Context context,
                              Element parent,
                              java.lang.String value)

      Convert the cell to edit mode.
      Parameters:
        `context` - the `Context` of the cell
        `parent` - the parent element
        `value` - the current value