Class EditTextCell

    • Constructor Detail

      • 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 Cell.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 Cell.Context of the cell
        parent - the parent element
        value - the current value