/**
* <p>Copyright: Copyright (c) 2012</p>
* <p>Company: �������ӹɷ�����˾</p>
*/
package com.hundsun.ares.studio.ui.editor.extend;
import org.eclipse.emf.ecore.EEnum;
import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.jface.viewers.CellEditor;
import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.swt.widgets.Composite;
import com.hundsun.ares.studio.ui.editor.celleditors.EEnumComboBoxCellEditor;
/**
* @author qinyuan
*
*/
public class ComboBoxEMPropertyDescriptor extends ReadonlyTextEMPropertyDescriptor{
EEnum eEnum;
ILabelProvider itemLabelProvider;
/**
* @param structuralFeature
*/
public ComboBoxEMPropertyDescriptor(EStructuralFeature structuralFeature,EEnum eEnum, ILabelProvider itemLabelProvider) {
super(structuralFeature);
this.eEnum = eEnum;
this.itemLabelProvider = itemLabelProvider;
}
/* (non-Javadoc)
* @see com.hundsun.ares.studio.jres.ui.pages.extend.ReadonlyTextEMPropertyDescriptor#createPropertyEditor(org.eclipse.swt.widgets.Composite)
*/
@Override
public CellEditor createPropertyEditor(Composite parent) {
EEnumComboBoxCellEditor ce = new EEnumComboBoxCellEditor(parent);
ce.setEEnum(eEnum, itemLabelProvider);
return ce;
}
/* (non-Javadoc)
* @see com.hundsun.ares.studio.jres.ui.pages.extend.ReadonlyTextEMPropertyDescriptor#getLabelProvider()
*/
@Override
public ILabelProvider getLabelProvider() {
if(null != itemLabelProvider) {
return itemLabelProvider;
}
return super.getLabelProvider();
}
}