/*
* Copyright (C) Yutaka Matsuno 2010-2012 All rights reserved.
*/
package net.dependableos.dcase.diagram.editor.clipboard;
import net.dependableos.dcase.Argument;
import net.dependableos.dcase.diagram.common.util.NamePropertyAutoCreator;
import net.dependableos.dcase.diagram.editor.common.util.DcaseEditorUtil;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.gmf.runtime.emf.clipboard.core.AbstractClipboardSupport;
import org.eclipse.gmf.runtime.notation.Diagram;
/**
* A class that overrides paste operation to set the name attribute of a node or a link.
*/
public class AutoNumberClipboardSupport extends AbstractClipboardSupport {
/* (non-Javadoc)
* @see org.eclipse.gmf.runtime.emf.clipboard.core.AbstractClipboardSupport
* #setName(org.eclipse.emf.ecore.EObject, java.lang.String)
*/
@Override
public void setName(EObject eObject, String name) {
Diagram currentDiagram = DcaseEditorUtil.getCurrentDiagram();
Argument currentArgument = (Argument) currentDiagram.getElement();
// initializes the name attribute.
NamePropertyAutoCreator nameCreator = new NamePropertyAutoCreator();
nameCreator.loadDiagram(currentArgument);
String autoName = nameCreator.getInitialName(eObject);
super.setName(eObject, autoName);
}
}