package org.eclipse.uml2.diagram.clazz.details; import java.util.ArrayList; import java.util.List; import org.eclipse.emf.transaction.TransactionalEditingDomain; import org.eclipse.gmf.runtime.common.ui.services.parser.ParserOptions; import org.eclipse.gmf.runtime.diagram.core.util.ViewUtil; import org.eclipse.gmf.runtime.emf.type.core.commands.EditElementCommand; import org.eclipse.gmf.runtime.emf.type.core.commands.SetValueCommand; import org.eclipse.gmf.runtime.emf.type.core.requests.SetRequest; import org.eclipse.gmf.runtime.notation.NotationPackage; import org.eclipse.gmf.runtime.notation.View; import org.eclipse.uml2.diagram.clazz.part.CustomMessages; import org.eclipse.uml2.diagram.common.details.DetailLevelParserOptions; class DetailsSuppressedLevel extends UMLDetailLevel { @Override public void init(View view) { ViewUtil.setPropertyValue(view, NotationPackage.eINSTANCE.getView_Visible(), NotationPackage.eINSTANCE.getView(), false); } @Override public List<EditElementCommand> getApplyCommands(TransactionalEditingDomain editingDomain, View view) { List<EditElementCommand> result = new ArrayList<EditElementCommand>(1); SetRequest setVisibilityRequest = new SetRequest(editingDomain, view, NotationPackage.eINSTANCE.getView_Visible(), false); result.add(new SetValueCommand(setVisibilityRequest)); return result; } @Override public List<EditElementCommand> getUnapplyCommands(TransactionalEditingDomain editingDomain, View view) { List<EditElementCommand> result = new ArrayList<EditElementCommand>(1); SetRequest setVisibilityRequest = new SetRequest(editingDomain, view, NotationPackage.eINSTANCE.getView_Visible(), true); result.add(new SetValueCommand(setVisibilityRequest)); return result; } @Override public ParserOptions getParserOptions() { return DetailLevelParserOptions.OPTION_DETAILS_SUPPRESSED; } @Override public String getLabel() { return CustomMessages.DetailsSuppressedLevel_details_suppressed_label; } @Override public String getId() { return ID; } public static final String ID = "org.eclipse.uml2.diagram.clazz.detail_level_suppressed"; //$NON-NLS-1$ }