package org.eclipse.uml2.diagram.sequence.edit.create;
import java.util.Collection;
import java.util.LinkedList;
import java.util.List;
import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.gef.EditPartViewer;
import org.eclipse.gmf.runtime.diagram.ui.tools.CreationTool;
import org.eclipse.gmf.runtime.notation.View;
public abstract class AbstractCreateSDElementTool extends CreationTool {
@SuppressWarnings("unchecked")
@Override
protected void selectAddedObject(EditPartViewer viewer, Collection objects) {
List filtered = new LinkedList();
for (Object nextCreated : objects){
if (nextCreated instanceof IAdaptable) {
View view = (View)((IAdaptable)nextCreated).getAdapter(View.class);
if (view != null && shouldSelect(view)){
filtered.add(nextCreated);
}
}
}
super.selectAddedObject(viewer, filtered);
}
protected boolean shouldSelect(View view){
return true;
}
}