Class EditingSupport

    • Constructor Detail

      • EditingSupport

        public EditingSupport​(ColumnViewer viewer)
        Parameters:
        viewer - a new viewer
    • Method Detail

      • getCellEditor

        protected abstract CellEditor getCellEditor​(Object element)
        The editor to be shown
        Parameters:
        element - the model element
        Returns:
        the CellEditor
      • canEdit

        protected abstract boolean canEdit​(Object element)
        Is the cell editable
        Parameters:
        element - the model element
        Returns:
        true if editable
      • getValue

        protected abstract Object getValue​(Object element)
        Get the value to set to the editor
        Parameters:
        element - the model element
        Returns:
        the value shown
      • setValue

        protected abstract void setValue​(Object element,
                                         Object value)
        Sets the new value on the given element. Note that implementers need to ensure that getViewer().update(element, null) or similar methods are called, either directly or through some kind of listener mechanism on the implementer's model, to cause the new value to appear in the viewer.

        Subclasses should overwrite.

        Parameters:
        element - the model element
        value - the new value
      • getViewer

        public ColumnViewer getViewer()
        Returns:
        the viewer this editing support works for
      • initializeCellEditorValue

        protected void initializeCellEditorValue​(CellEditor cellEditor,
                                                 ViewerCell cell)
        Initialize the editor. Frameworks like Databinding can hook in here and provide a customized implementation.

        Standard customers should not overwrite this method but getValue(Object)

        Parameters:
        cellEditor - the cell editor
        cell - the cell the editor is working for
      • saveCellEditorValue

        protected void saveCellEditorValue​(CellEditor cellEditor,
                                           ViewerCell cell)
        Save the value of the cell editor back to the model. Frameworks like Databinding can hook in here and provide a customized implementation.

        Standard customers should not overwrite this method but setValue(Object, Object)

        Parameters:
        cellEditor - the cell-editor
        cell - the cell the editor is working for