Package org.eclipse.nebula.widgets.grid

## Class GridEditor

- java.lang.Object
- - org.eclipse.swt.custom.ControlEditor
  - - org.eclipse.nebula.widgets.grid.GridEditor

    public class GridEditor
    extends ControlEditor

A GridEditor is a manager for a Control that appears above a cell in a Grid and tracks with the moving and resizing of that cell. It can be used to display a text widget above a cell in a Grid so that the user can edit the contents of that cell. It can also be used to display a button that can launch a dialog for modifying the contents of the associated cell.

See Also:
  `TableEditor`

### Field Summary

### Fields inherited from class org.eclipse.swt.custom.ControlEditor

`grabHorizontal, grabVertical, horizontalAlignment, minimumHeight, minimumWidth, verticalAlignment`

### Constructor Summary

Constructors
`GridEditor​(Grid table)` Creates a TableEditor for the specified Table.

### Method Summary

All Methods Instance Methods Concrete Methods
`protected Rectangle` `computeBounds()` Returns the bounds of the editor.
`void` `dispose()` Removes all associations between the TableEditor and the cell in the table.
`int` `getColumn()` Returns the zero based index of the column of the cell being tracked by this editor.
`GridItem` `getItem()` Returns the TableItem for the row of the cell being tracked by this editor.
`void` `layout()` Lays out the control within the underlying composite.
`void` `setColumn​(int column)` Sets the zero based index of the column of the cell being tracked by this editor.
`void` `setEditor​(Control editor, GridItem item, int column)` Specify the Control that is to be displayed and the cell in the table that it is to be positioned above.
`void` `setItem​(GridItem item)` Sets the item that this editor will function over.

### Methods inherited from class org.eclipse.swt.custom.ControlEditor

`getEditor, setEditor`

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

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

### Constructor Detail

#### GridEditor

    public GridEditor​(Grid table)

Creates a TableEditor for the specified Table.

Parameters:
  `table` - the Table Control above which this editor will be displayed

### Method Detail

#### computeBounds

    protected Rectangle computeBounds()

Returns the bounds of the editor.

Returns:
  bounds of the editor.

#### dispose

    public void dispose()

Removes all associations between the TableEditor and the cell in the table. The Table and the editor Control are not disposed.

Overrides:
  `dispose` in class `ControlEditor`

#### getColumn

    public int getColumn()

Returns the zero based index of the column of the cell being tracked by this editor.

Returns:
  the zero based index of the column of the cell being tracked by this editor

#### getItem

    public GridItem getItem()

Returns the TableItem for the row of the cell being tracked by this editor.

Returns:
  the TableItem for the row of the cell being tracked by this editor

#### setColumn

    public void setColumn​(int column)

Sets the zero based index of the column of the cell being tracked by this editor.

Parameters:
  `column` - the zero based index of the column of the cell being tracked by this editor

#### setItem

    public void setItem​(GridItem item)

Sets the item that this editor will function over.

Parameters:
  `item` - editing item.

#### setEditor

    public void setEditor​(Control editor,
                          GridItem item,
                          int column)

Specify the Control that is to be displayed and the cell in the table that it is to be positioned above.

Note: The Control provided as the editor must be created with its parent being the Table control specified in the TableEditor constructor.

Parameters:
  `editor` - the Control that is displayed above the cell being edited
  `item` - the TableItem for the row of the cell being tracked by this editor
  `column` - the zero based index of the column of the cell being tracked by this editor

#### layout

    public void layout()

Lays out the control within the underlying composite. This method should be called after changing one or more fields to force the Editor to resize.

Overrides:
  `layout` in class `ControlEditor`