Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.eclipse.jface.viewers
Class CellEditor

    java.lang.Object
      org.eclipse.jface.viewers.CellEditor

Direct Known Subclasses:
  CheckboxCellEditor, ComboBoxCellEditor, DialogCellEditor, TextCellEditor

public abstract class CellEditor
extends Object

Abstract base class for cell editors. Implements property change listener handling, and SWT window management.

Subclasses implement particular kinds of cell editors. This package contains various specialized cell editors:

- `TextCellEditor` - for simple text strings
- `ColorCellEditor` - for colors
- `ComboBoxCellEditor` - value selected from drop-down combo box
- `CheckboxCellEditor` - boolean valued checkbox
- `DialogCellEditor` - value from arbitrary dialog

Nested Class Summary
`static class` | `CellEditor.LayoutData` Struct-like layout data for cell editors, with reasonable defaults for all fields.

Field Summary
`static String` | `COPY` Property name for the copy action
`static String` | `CUT` Property name for the cut action
`static String` | `DELETE` Property name for the delete action
`static String` | `FIND` Property name for the find action
`static String` | `PASTE` Property name for the paste action
`static String` | `REDO` Property name for the redo action
`static String` | `SELECT_ALL` Property name for the select all action
`static String` | `UNDO` Property name for the undo action

Constructor Summary
`protected` | `CellEditor()` Creates a new cell editor with no control The cell editor has no cell validator.
`protected` | `CellEditor(Composite parent)` Creates a new cell editor under the given parent control.
`protected` | `CellEditor(Composite parent, int style)` Creates a new cell editor under the given parent control.

Method Summary
`void` | `activate()` Activates this cell editor.
`void` | `addListener(ICellEditorListener listener)` Adds a listener to this cell editor.
`void` | `addPropertyChangeListener(IPropertyChangeListener listener)` Adds a property change listener to this cell editor.
`void` | `create(Composite parent)` Creates the control for this cell editor under the given parent control.
`protected abstract Control` | `createControl(Composite parent)` Creates the control for this cell editor under the given parent control.
`void` | `deactivate()` Hides this cell editor's control.
`void` | `dispose()` Disposes of this cell editor and frees any associated SWT resources.
`protected abstract Object` | `doGetValue()` Returns this cell editor's value.
`protected abstract void` | `doSetFocus()` Sets the focus to the cell editor's control.
`protected abstract void` | `doSetValue(Object value)` Sets this cell editor's value.
`protected void` | `fireApplyEditorValue()` Notifies all registered cell editor listeners of an apply event.
`protected void` | `fireCancelEditor()` Notifies all registered cell editor listeners that editing has been canceled.
`protected void` | `fireEditorValueChanged(boolean oldValidState, boolean newValidState)` Notifies all registered cell editor listeners of a value change.
`protected void` | `fireEnablementChanged(String actionId)` Notifies all registered property listeners of an enablement change.
`protected void` | `focusLost()` Processes a focus lost event that occurred in this cell editor.
`Control` | `getControl()` Returns the control used to implement this cell editor.
`String` | `getErrorMessage()` Returns the current error message for this cell editor.
`CellEditor.LayoutData` | `getLayoutData()` Returns a layout data object for this cell editor.
`int` | `getStyle()` Returns the style bits for this cell editor.
`ICellEditorValidator` | `getValidator()` Returns the input validator for this cell editor.
`Object` | `getValue()` Returns this cell editor's value provided that it has a valid one.
`boolean` | `isActivated()` Returns whether this cell editor is activated.
`boolean` | `isCopyEnabled()` Returns `true` if this cell editor is able to perform the copy action.
`protected boolean` | `isCorrect(Object value)` Returns whether the given value is valid for this cell editor.
`boolean` | `isCutEnabled()` Returns `true` if this cell editor is able to perform the cut action.
`boolean` | `isDeleteEnabled()` Returns `true` if this cell editor is able to perform the delete action.
`boolean` | `isDirty()` Returns whether the value of this cell editor has changed since the last call to `setValue`.
`boolean` | `isFindEnabled()` Returns `true` if this cell editor is able to perform the find action.
`boolean` | `isPasteEnabled()` Returns `true` if this cell editor is able to perform the paste action.
`boolean` | `isRedoEnabled()` Returns `true` if this cell editor is able to perform the redo action.
`boolean` | `isSelectAllEnabled()` Returns `true` if this cell editor is able to perform the select all action.
`boolean` | `isUndoEnabled()` Returns `true` if this cell editor is able to perform the undo action.
`boolean` | `isValueValid()` Returns whether this cell editor has a valid value.
`protected void` | `keyReleaseOccured(KeyEvent keyEvent)` Processes a key release event that occurred in this cell editor.
`protected void` | `markDirty()` Marks this cell editor as dirty.
`void` | `performCopy()` Performs the copy action.
`void` | `performCut()` Performs the cut action.
`void` | `performDelete()` Performs the delete action.
`void` | `performFind()` Performs the find action.
`void` | `performPaste()` Performs the paste action.
`void` | `performRedo()` Performs the redo action.
`void` | `performSelectAll()` Performs the select all action.
`void` | `performUndo()` Performs the undo action.
`void` | `removeListener(ICellEditorListener listener)` Removes the given listener from this cell editor.
`void` | `removePropertyChangeListener(IPropertyChangeListener listener)` Removes the given property change listener from this cell editor.
`protected void` | `setErrorMessage(String message)` Sets or clears the current error message for this cell editor.
`void` | `setFocus()` Sets the focus to the cell editor's control.
`void` | `setStyle(int style)` Sets the style bits for this cell editor.
`void` | `setValidator(ICellEditorValidator validator)` Sets the input validator for this cell editor.
`void` | `setValue(Object value)` Sets this cell editor's value.
`protected void` | `setValueValid(boolean valid)` Sets the valid state of this cell editor.
`protected void` | `valueChanged(boolean oldValidState, boolean newValidState)` The value has changed.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### COPY

    public static final String COPY

  Property name for the copy action

  See Also:
    Constant Field Values

### CUT

    public static final String CUT

  Property name for the cut action

  See Also:
    Constant Field Values

### DELETE

    public static final String DELETE

  Property name for the delete action

  See Also:
    Constant Field Values

### FIND

    public static final String FIND

  Property name for the find action

  See Also:
    Constant Field Values

### PASTE

    public static final String PASTE

  Property name for the paste action

  See Also:
    Constant Field Values

### REDO

    public static final String REDO

  Property name for the redo action

  See Also:
    Constant Field Values

### SELECT_ALL

    public static final String SELECT_ALL

  Property name for the select all action

  See Also:
    Constant Field Values

### UNDO

    public static final String UNDO

  Property name for the undo action

  See Also:
    Constant Field Values

Constructor Detail

### CellEditor

    protected CellEditor()

  Creates a new cell editor with no control The cell editor has no cell validator.

Since:
  2.1

### CellEditor

    protected CellEditor(Composite parent)

  Creates a new cell editor under the given parent control. The cell editor has no cell validator.

Parameters:
  `parent` - the parent control

### CellEditor

    protected CellEditor(Composite parent,
                         int style)

  Creates a new cell editor under the given parent control. The cell editor has no cell validator.

Parameters:
  `parent` - the parent control
  `style` - the style bits
Since:
  2.1

Method Detail

### activate

    public void activate()

  Activates this cell editor.

  The default implementation of this framework method does nothing. Subclasses may reimplement.

### addListener

    public void addListener(ICellEditorListener listener)

  Adds a listener to this cell editor. Has no effect if an identical listener is already registered.

  Parameters:
    `listener` - a cell editor listener

### addPropertyChangeListener

    public void addPropertyChangeListener(IPropertyChangeListener listener)

  Adds a property change listener to this cell editor. Has no effect if an identical property change listener is already registered.

  Parameters:
    `listener` - a property change listener

### createControl

    protected abstract Control createControl(Composite parent)

  Creates the control for this cell editor under the given parent control.

  This framework method must be implemented by concrete subclasses.

  Parameters:
    `parent` - the parent control
  Returns:
    the new control, or `null` if this cell editor has no control

### create

    public void create(Composite parent)

  Creates the control for this cell editor under the given parent control.

  Parameters:
    `parent` - the parent control
  Since:
    2.1

### deactivate

    public void deactivate()

  Hides this cell editor's control. Does nothing if this cell editor is not visible.

### dispose

    public void dispose()

  Disposes of this cell editor and frees any associated SWT resources.

### doGetValue

    protected abstract Object doGetValue()

  Returns this cell editor's value.

  This framework method must be implemented by concrete subclasses.

  Returns:
    the value of this cell editor
  See Also:
    `getValue()`

### doSetFocus

    protected abstract void doSetFocus()

  Sets the focus to the cell editor's control.

  This framework method must be implemented by concrete subclasses.

  See Also:
    `setFocus()`

### doSetValue

    protected abstract void doSetValue(Object value)

  Sets this cell editor's value.

  This framework method must be implemented by concrete subclasses.

  Parameters:
    `value` - the value of this cell editor
  See Also:
    `setValue(java.lang.Object)`

### fireApplyEditorValue

    protected void fireApplyEditorValue()

  Notifies all registered cell editor listeners of an apply event. Only listeners registered at the time this method is called are notified.

  See Also:
    `ICellEditorListener.applyEditorValue()`

### fireCancelEditor

    protected void fireCancelEditor()

  Notifies all registered cell editor listeners that editing has been canceled.

  See Also:
    `ICellEditorListener.cancelEditor()`

### fireEditorValueChanged

    protected void fireEditorValueChanged(boolean oldValidState,
                                          boolean newValidState)

  Notifies all registered cell editor listeners of a value change.

  Parameters:
    `oldValidState` - the valid state before the end user changed the value
    `newValidState` - the current valid state
  See Also:
    `ICellEditorListener.editorValueChanged(boolean, boolean)`

### fireEnablementChanged

    protected void fireEnablementChanged(String actionId)

  Notifies all registered property listeners of an enablement change.

  Parameters:
    `actionId` - the id indicating what action's enablement has changed.

### setStyle

    public void setStyle(int style)

  Sets the style bits for this cell editor.

  Parameters:
    `style` - the SWT style bits for this cell editor
  Since:
    2.1

### getStyle

    public int getStyle()

  Returns the style bits for this cell editor.

  Returns:
    the style for this cell editor
  Since:
    2.1

### getControl

    public Control getControl()

  Returns the control used to implement this cell editor.

  Returns:
    the control, or `null` if this cell editor has no control

### getErrorMessage

    public String getErrorMessage()

  Returns the current error message for this cell editor.

  Returns:
    the error message if the cell editor is in an invalid state, and `null` if the cell editor is valid

### getLayoutData

    public CellEditor.LayoutData getLayoutData()

  Returns a layout data object for this cell editor. This is called each time the cell editor is activated and controls the layout of the SWT table editor.

  The default implementation of this method sets the minimum width to the control's preferred width. Subclasses may extend or reimplement.

  Returns:
    the layout data object

### getValidator

    public ICellEditorValidator getValidator()

  Returns the input validator for this cell editor.

  Returns:
    the input validator, or `null` if none

### getValue

    public final Object getValue()

  Returns this cell editor's value provided that it has a valid one.

  Returns:
    the value of this cell editor, or `null` if the cell editor does not contain a valid value

### isActivated

    public boolean isActivated()

  Returns whether this cell editor is activated.

  Returns:
    `true` if this cell editor's control is currently visible, and `false` if not visible

### isCopyEnabled

    public boolean isCopyEnabled()

  Returns `true` if this cell editor is able to perform the copy action.

  This default implementation always returns `false`.

  Subclasses may override

  Returns:
    `true` if copy is possible, `false` otherwise

### isCorrect

    protected boolean isCorrect(Object value)

  Returns whether the given value is valid for this cell editor. This cell editor's validator (if any) makes the actual determination.

  Returns:
    `true` if the value is valid, and `false` if invalid

### isCutEnabled

    public boolean isCutEnabled()

  Returns `true` if this cell editor is able to perform the cut action.

  This default implementation always returns `false`.

  Subclasses may override

  Returns:
    `true` if cut is possible, `false` otherwise

### isDeleteEnabled

    public boolean isDeleteEnabled()

  Returns `true` if this cell editor is able to perform the delete action.

  This default implementation always returns `false`.

  Subclasses may override

  Returns:
    `true` if delete is possible, `false` otherwise

### isDirty

    public boolean isDirty()

  Returns whether the value of this cell editor has changed since the last call to `setValue`.

  Returns:
    `true` if the value has changed, and `false` if unchanged

### markDirty

    protected void markDirty()

  Marks this cell editor as dirty.

  Since:
    2.1

### isFindEnabled

    public boolean isFindEnabled()

  Returns `true` if this cell editor is able to perform the find action.

  This default implementation always returns `false`.

  Subclasses may override

  Returns:
    `true` if find is possible, `false` otherwise

### isPasteEnabled

    public boolean isPasteEnabled()

  Returns `true` if this cell editor is able to perform the paste action.

  This default implementation always returns `false`.

  Subclasses may override

  Returns:
    `true` if paste is possible, `false` otherwise

### isRedoEnabled

    public boolean isRedoEnabled()

  Returns `true` if this cell editor is able to perform the redo action.

  This default implementation always returns `false`.

  Subclasses may override

  Returns:
    `true` if redo is possible, `false` otherwise

### isSelectAllEnabled

    public boolean isSelectAllEnabled()

  Returns `true` if this cell editor is able to perform the select all action.

  This default implementation always returns `false`.

  Subclasses may override

  Returns:
    `true` if select all is possible, `false` otherwise

### isUndoEnabled

    public boolean isUndoEnabled()

  Returns `true` if this cell editor is able to perform the undo action.

  This default implementation always returns `false`.

  Subclasses may override

  Returns:
    `true` if undo is possible, `false` otherwise

### isValueValid

    public boolean isValueValid()

  Returns whether this cell editor has a valid value. The default value is false.

  Returns:
    `true` if the value is valid, and `false` if invalid
  See Also:
    `setValueValid(boolean)`

### keyReleaseOccured

    protected void keyReleaseOccured(KeyEvent keyEvent)

  Processes a key release event that occurred in this cell editor.

  The default implementation of this framework method cancels editing when the ESC key is pressed. When the RETURN key is pressed the current value is applied and the cell editor deactivates. Subclasses should call this method at appropriate times. Subclasses may also extend or reimplement.

  Parameters:
    `keyEvent` - the key event

### focusLost

    protected void focusLost()

  Processes a focus lost event that occurred in this cell editor.

  The default implementation of this framework method applies the current value and deactivates the cell editor. Subclasses should call this method at appropriate times. Subclasses may also extend or reimplement.

### performCopy

    public void performCopy()

  Performs the copy action. This default implementation does nothing.

  Subclasses may override

### performCut

    public void performCut()

  Performs the cut action. This default implementation does nothing.

  Subclasses may override

### performDelete

    public void performDelete()

  Performs the delete action. This default implementation does nothing.

  Subclasses may override

### performFind

    public void performFind()

  Performs the find action. This default implementation does nothing.

  Subclasses may override

### performPaste

    public void performPaste()

  Performs the paste action. This default implementation does nothing.

  Subclasses may override

### performRedo

    public void performRedo()

  Performs the redo action. This default implementation does nothing.

  Subclasses may override

### performSelectAll

    public void performSelectAll()

  Performs the select all action. This default implementation does nothing.

  Subclasses may override

### performUndo

    public void performUndo()

  Performs the undo action. This default implementation does nothing.

  Subclasses may override

### removeListener

    public void removeListener(ICellEditorListener listener)

  Removes the given listener from this cell editor. Has no affect if an identical listener is not registered.

  Parameters:
    `listener` - a cell editor listener

### removePropertyChangeListener

    public void removePropertyChangeListener(IPropertyChangeListener listener)

  Removes the given property change listener from this cell editor. Has no affect if an identical property change listener is not registered.

  Parameters:
    `listener` - a property change listener

### setErrorMessage

    protected void setErrorMessage(String message)

  Sets or clears the current error message for this cell editor.

  Parameters:
    `message` - the error message, or `null` to clear

### setFocus

    public void setFocus()

  Sets the focus to the cell editor's control.

### setValidator

    public void setValidator(ICellEditorValidator validator)

  Sets the input validator for this cell editor.

  Parameters:
    `validator` - the input validator, or `null` if none

### setValue

    public final void setValue(Object value)

  Sets this cell editor's value.

  Parameters:
    `value` - the value of this cell editor

### setValueValid

    protected void setValueValid(boolean valid)

  Sets the valid state of this cell editor. The default value is false. Subclasses should call this method on construction.

  Parameters:
    `valid` - `true` if the current valie is valid, and `false` if invalid
  See Also:
    `isValueValid()`

### valueChanged

    protected void valueChanged(boolean oldValidState,
                                boolean newValidState)

  The value has changed. Updates the valid state flag, marks this cell editor as dirty, and notifies all registered cell editor listeners of a value change.

  Parameters:
    `oldValidState` - the valid state before the end user changed the value
    `newValidState` - the current valid state
  See Also:
    `ICellEditorListener.editorValueChanged(boolean, boolean)`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2004. All rights reserved.