[158116] - Fixed CCE on applying the value from EnumParser
diff --git a/plugins/org.eclipse.gmf.tooling.runtime/src/org/eclipse/gmf/tooling/runtime/parsers/EnumParser.java b/plugins/org.eclipse.gmf.tooling.runtime/src/org/eclipse/gmf/tooling/runtime/parsers/EnumParser.java
index 7f4e1b1..a498d14 100644
--- a/plugins/org.eclipse.gmf.tooling.runtime/src/org/eclipse/gmf/tooling/runtime/parsers/EnumParser.java
+++ b/plugins/org.eclipse.gmf.tooling.runtime/src/org/eclipse/gmf/tooling/runtime/parsers/EnumParser.java
@@ -15,19 +15,24 @@
 		super(enumFeature);

 	}

 

+	@SuppressWarnings("unchecked")

 	@Override

 	protected Collection<Object> getItems(EObject element) {

 		List<Object> result = new ArrayList<Object>();

 		EAttribute enumFeature = (EAttribute) getFeature();

 		EEnum type = (EEnum) enumFeature.getEType();

-		for (EEnumLiteral literal : type.getELiterals()) {

-			result.add(literal.getLiteral());

+		@SuppressWarnings("rawtypes")

+		Class<? extends Enum> enumeratorClass = (Class<? extends Enum>) type.getInstanceClass();

+		for (EEnumLiteral eLiteral : type.getELiterals()) {

+			Object literalValue = Enum.valueOf(enumeratorClass, eLiteral.getLiteral());

+			result.add(literalValue);

 		}

 		return result;

 	}

 

 	@Override

 	protected String getEditChoice(EObject element, Object item) {

-		return item.toString();

+		return ((Enum<?>) item).name();

 	}

+

 }