Class ComboBoxCellEditor


  • 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.

    Restriction:
    This class is not intended to be subclassed by clients.
    • Field Detail

      • 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 Detail

      • 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 Detail

      • 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(java.lang.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
      • setActivationStyle

        public void setActivationStyle​(int activationStyle)
        This method allows to control how the combo reacts when activated
        Parameters:
        activationStyle - the style used