|
Lines 14-19
Link Here
|
| 14 |
import org.eclipse.emf.ecore.EEnum; |
14 |
import org.eclipse.emf.ecore.EEnum; |
| 15 |
import org.eclipse.emf.ecore.EEnumLiteral; |
15 |
import org.eclipse.emf.ecore.EEnumLiteral; |
| 16 |
import org.eclipse.emf.ecore.EObject; |
16 |
import org.eclipse.emf.ecore.EObject; |
|
|
17 |
import org.eclipse.emf.edit.provider.IItemLabelProvider; |
| 17 |
import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; |
18 |
import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; |
| 18 |
import org.eclipse.jface.databinding.swt.SWTObservables; |
19 |
import org.eclipse.jface.databinding.swt.SWTObservables; |
| 19 |
import org.eclipse.swt.SWT; |
20 |
import org.eclipse.swt.SWT; |
|
Lines 45-53
Link Here
|
| 45 |
this.attribute = (EAttribute) feature; |
46 |
this.attribute = (EAttribute) feature; |
| 46 |
combo = new Combo(parent, style | SWT.DROP_DOWN | SWT.READ_ONLY); |
47 |
combo = new Combo(parent, style | SWT.DROP_DOWN | SWT.READ_ONLY); |
| 47 |
IObservableValue model = EMFEditObservables.observeValue(getEditingDomain(), getModelElement(), attribute); |
48 |
IObservableValue model = EMFEditObservables.observeValue(getEditingDomain(), getModelElement(), attribute); |
|
|
49 |
IItemLabelProvider labelProvider = getItemPropertyDescriptor().getLabelProvider(getModelElement()); |
| 48 |
EList<EEnumLiteral> list = ((EEnum) attribute.getEType()).getELiterals(); |
50 |
EList<EEnumLiteral> list = ((EEnum) attribute.getEType()).getELiterals(); |
| 49 |
for (EEnumLiteral literal : list) { |
51 |
for (EEnumLiteral literal : list) { |
| 50 |
combo.add(literal.getLiteral()); |
52 |
final String literalName = labelProvider.getText(literal.getInstance()); |
|
|
53 |
combo.add(literalName); |
| 51 |
} |
54 |
} |
| 52 |
EMFDataBindingContext dbc = new EMFDataBindingContext(); |
55 |
EMFDataBindingContext dbc = new EMFDataBindingContext(); |
| 53 |
dbc.bindValue(SWTObservables.observeSelection(combo), model, null, null); |
56 |
dbc.bindValue(SWTObservables.observeSelection(combo), model, null, null); |