Package org.eclipse.pde.ui.templates

# Class ComboChoiceOption

java.lang.Object
org.eclipse.pde.ui.templates.TemplateField
org.eclipse.pde.ui.templates.TemplateOption
org.eclipse.pde.ui.templates.AbstractChoiceOption
org.eclipse.pde.ui.templates.ComboChoiceOption

public class ComboChoiceOption extends AbstractChoiceOption
Implementation of the AbstractTemplateOption that allows users to choose a value from the fixed set of options using a combo box.

Since:
  3.2

## Field Summary

### Fields inherited from class org.eclipse.pde.ui.templates.AbstractChoiceOption

`fChoices`

## Constructor Summary

Constructors
Constructor
Description
`ComboChoiceOption(BaseOptionTemplateSection section, String name, String label, String[][] choices)`
Constructor for ComboChoiceOption.

## Method Summary

Modifier and Type
Method
Description
`void`
`createControl(Composite parent, int span)`
Subclasses must implement this method to create the control of the template field.
`protected int`
`getIndexOfChoice(String choice)`
Get the index (in the collection) of the choice
`protected void`
`selectOptionChoice(String choice)`
`protected void`
`setOptionEnabled(boolean enabled)`
`protected void`
`setOptionValue(Object value)`

### Methods inherited from class org.eclipse.pde.ui.templates.AbstractChoiceOption

`createComposite, fill, getChoice, isBlocked, selectChoice, setEnabled, setValue, setValue`

### Methods inherited from class org.eclipse.pde.ui.templates.TemplateOption

`getMessageLabel, getName, getValue, isEmpty, isEnabled, isRequired, setName, setRequired`

### Methods inherited from class org.eclipse.pde.ui.templates.TemplateField

`createLabel, getLabel, getSection, setLabel`

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

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

## Constructor Details

### ComboChoiceOption

public ComboChoiceOption(BaseOptionTemplateSection section, String name, String label, String[][] choices)
Constructor for ComboChoiceOption.

Parameters:
  `section` - the parent section.
  `name` - the unique name
  `label` - the presentable label
  `choices` - the list of choices from which the value can be chosen. Each array entry should be an array of size 2, where position 0 will be interpeted as the choice unique name, and position 1 as the choice presentable label.

## Method Details

### createControl

public void createControl(Composite parent, int span)
Description copied from class: `TemplateField`
Subclasses must implement this method to create the control of the template field.

Specified by:
  `createControl` in class `TemplateField`
Parameters:
  `parent` - the parent composite the control should be created in
  `span` - number of columns that the control should span

### setOptionValue

protected void setOptionValue(Object value)

Specified by:
  `setOptionValue` in class `AbstractChoiceOption`

### setOptionEnabled

protected void setOptionEnabled(boolean enabled)

Specified by:
  `setOptionEnabled` in class `AbstractChoiceOption`

### selectOptionChoice

protected void selectOptionChoice(String choice)

Specified by:
  `selectOptionChoice` in class `AbstractChoiceOption`

### getIndexOfChoice

protected int getIndexOfChoice(String choice)
Get the index (in the collection) of the choice

Parameters:
  `choice` - The key of the item
Returns:
  The position in the list, or -1 if not found
Since:
  3.4