# Class ComboBoxCellEditor

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

@NoExtend public class ComboBoxCellEditor extends CellEditor
A cell editor that presents a list of items in a combo box. The cell editor's value is the zero-based index of the selected item.

This class may be instantiated; it is not intended to be subclassed.

## Nested Class Summary

### Nested classes/interfaces inherited from class CellEditor

`CellEditor.LayoutData`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final int`
`DROP_DOWN_ON_KEY_ACTIVATION`
The list is dropped down when the activation is done through the keyboard
`static final int`
`DROP_DOWN_ON_MOUSE_ACTIVATION`
The list is dropped down when the activation is done through the mouse
`static final int`
`DROP_DOWN_ON_PROGRAMMATIC_ACTIVATION`
The list is dropped down when the activation is done without ui-interaction
`static final int`
`DROP_DOWN_ON_TRAVERSE_ACTIVATION`
The list is dropped down when the activation is done by traversing from cell to cell

### Fields inherited from class CellEditor

`COPY, CUT, DELETE, FIND, PASTE, REDO, SELECT_ALL, UNDO`

## Constructor Summary

Constructors
Constructor
Description
`ComboBoxCellEditor()`
Creates a new cell editor with no control and no st of choices.
`ComboBoxCellEditor(Composite parent, String[] items)`
Creates a new cell editor with a combo containing the given list of choices and parented under the given control.
`ComboBoxCellEditor(Composite parent, String[] items, int style)`
Creates a new cell editor with a combo containing the given list of choices and parented under the given control.

## Method Summary

Modifier and Type
Method
Description
`void`
`activate(ColumnViewerEditorActivationEvent activationEvent)`
Activate the editor but also inform the editor which event triggered its activation.
`protected Control`
`createControl(Composite parent)`
Creates the control for this cell editor under the given parent control.
`protected Object`
`doGetValue()`
The `ComboBoxCellEditor` implementation of this `CellEditor` framework method returns the zero-based index of the current selection.
`protected void`
`doSetFocus()`
Sets the focus to the cell editor's control.
`protected void`
`doSetValue(Object value)`
The `ComboBoxCellEditor` implementation of this `CellEditor` framework method accepts a zero-based index of a selection.
`protected void`
`focusLost()`
Processes a focus lost event that occurred in this cell editor.
`String[]`
`getItems()`
Returns the list of choices for the combo box
`CellEditor.LayoutData`
`getLayoutData()`
The `ComboBoxCellEditor` implementation of this `CellEditor` framework method sets the minimum width of the cell.
`protected void`
`keyReleaseOccured(KeyEvent keyEvent)`
Processes a key release event that occurred in this cell editor.
`void`
`setActivationStyle(int activationStyle)`
This method allows to control how the combo reacts when activated
`void`
`setItems(String[] items)`
Sets the list of choices for the combo box

### Methods inherited from class CellEditor

`activate, addListener, addPropertyChangeListener, create, deactivate, deactivate, dependsOnExternalFocusListener, dispose, fireApplyEditorValue, fireCancelEditor, fireEditorValueChanged, fireEnablementChanged, getControl, getDoubleClickTimeout, getErrorMessage, getStyle, getValidator, getValue, isActivated, isCopyEnabled, isCorrect, isCutEnabled, isDeleteEnabled, isDirty, isFindEnabled, isPasteEnabled, isRedoEnabled, isSelectAllEnabled, isUndoEnabled, isValueValid, markDirty, performCopy, performCut, performDelete, performFind, performPaste, performRedo, performSelectAll, performUndo, removeListener, removePropertyChangeListener, setErrorMessage, setFocus, setStyle, setValidator, setValue, setValueValid, valueChanged`

### Methods inherited from class Object

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

## Field Details

### DROP_DOWN_ON_MOUSE_ACTIVATION

public static final int DROP_DOWN_ON_MOUSE_ACTIVATION
The list is dropped down when the activation is done through the mouse

See Also:
  - Constant Field Values

### DROP_DOWN_ON_KEY_ACTIVATION

public static final int DROP_DOWN_ON_KEY_ACTIVATION
The list is dropped down when the activation is done through the keyboard

See Also:
  - Constant Field Values

### DROP_DOWN_ON_PROGRAMMATIC_ACTIVATION

public static final int DROP_DOWN_ON_PROGRAMMATIC_ACTIVATION
The list is dropped down when the activation is done without ui-interaction

See Also:
  - Constant Field Values

### DROP_DOWN_ON_TRAVERSE_ACTIVATION

public static final int DROP_DOWN_ON_TRAVERSE_ACTIVATION
The list is dropped down when the activation is done by traversing from cell to cell

See Also:
  - Constant Field Values

## Constructor Details

### ComboBoxCellEditor

public ComboBoxCellEditor()
Creates a new cell editor with no control and no st of choices. Initially, the cell editor has no cell validator.

Since:
  2.1
See Also:
  - `CellEditor.setStyle(int)`
  - `CellEditor.create(Composite)`
  - `setItems(String[])`
  - `CellEditor.dispose()`

### ComboBoxCellEditor

public ComboBoxCellEditor(Composite parent, String[] items)
Creates a new cell editor with a combo containing the given list of choices and parented under the given control. The cell editor value is the zero-based index of the selected item. Initially, the cell editor has no cell validator and the first item in the list is selected.

Parameters:
  `parent` - the parent control
  `items` - the list of strings for the combo box

### ComboBoxCellEditor

public ComboBoxCellEditor(Composite parent, String[] items, int style)
Creates a new cell editor with a combo containing the given list of choices and parented under the given control. The cell editor value is the zero-based index of the selected item. Initially, the cell editor has no cell validator and the first item in the list is selected.

Parameters:
  `parent` - the parent control
  `items` - the list of strings for the combo box
  `style` - the style bits
Since:
  2.1

## Method Details

### getItems

public String[] getItems()
Returns the list of choices for the combo box

Returns:
  the list of choices for the combo box

### setItems

public void setItems(String[] items)
Sets the list of choices for the combo box

Parameters:
  `items` - the list of choices for the combo box

### createControl

protected Control createControl(Composite parent)
Description copied from class: `CellEditor`
Creates the control for this cell editor under the given parent control.

This framework method must be implemented by concrete subclasses.

Specified by:
  `createControl` in class `CellEditor`
Parameters:
  `parent` - the parent control
Returns:
  the new control, or `null` if this cell editor has no control

### doGetValue

protected Object doGetValue()
The `ComboBoxCellEditor` implementation of this `CellEditor` framework method returns the zero-based index of the current selection.

Specified by:
  `doGetValue` in class `CellEditor`
Returns:
  the zero-based index of the current selection wrapped as an `Integer`
See Also:
  - `CellEditor.getValue()`

### doSetFocus

protected void doSetFocus()
Description copied from class: `CellEditor`
Sets the focus to the cell editor's control.

This framework method must be implemented by concrete subclasses.

Specified by:
  `doSetFocus` in class `CellEditor`
See Also:
  - `CellEditor.setFocus()`

### getLayoutData

public CellEditor.LayoutData getLayoutData()
The `ComboBoxCellEditor` implementation of this `CellEditor` framework method sets the minimum width of the cell. The minimum width is 10 characters if `comboBox` is not `null` or `disposed` else it is 60 pixels to make sure the arrow button and some text is visible. The list of CCombo will be wide enough to show its longest item.

Overrides:
  `getLayoutData` in class `CellEditor`
Returns:
  the layout data object

### doSetValue

protected void doSetValue(Object value)
The `ComboBoxCellEditor` implementation of this `CellEditor` framework method accepts a zero-based index of a selection.

Specified by:
  `doSetValue` in class `CellEditor`
Parameters:
  `value` - the zero-based index of the selection wrapped as an `Integer`
See Also:
  - `CellEditor.setValue(Object)`

### focusLost

protected void focusLost()
Description copied from class: `CellEditor`
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.

Overrides:
  `focusLost` in class `CellEditor`

### keyReleaseOccured

protected void keyReleaseOccured(KeyEvent keyEvent)
Description copied from class: `CellEditor`
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.

Overrides:
  `keyReleaseOccured` in class `CellEditor`
Parameters:
  `keyEvent` - the key event

### activate

public void activate(ColumnViewerEditorActivationEvent activationEvent)
Description copied from class: `CellEditor`
Activate the editor but also inform the editor which event triggered its activation. The default implementation simply calls `CellEditor.activate()`

Overrides:
  `activate` in class `CellEditor`
Parameters:
  `activationEvent` - the editor activation event

### setActivationStyle

public void setActivationStyle(int activationStyle)
This method allows to control how the combo reacts when activated

Parameters:
  `activationStyle` - the style used