use of org.talend.designer.business.diagram.custom.commands.DeleteAssignmentCommand in project tdi-studio-se by Talend.
the class DeleteAssignmentAction method doRun.
@Override
protected void doRun() {
IEditorPart activeEditor = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor();
if (activeEditor instanceof BusinessDiagramEditor) {
BusinessDiagramEditor editor = (BusinessDiagramEditor) activeEditor;
ISelection selection2 = editor.getSelection();
EObject element = null;
Object firstElement = ((IStructuredSelection) selection2).getFirstElement();
if (firstElement instanceof BusinessItemShapeEditPart) {
BusinessItemShapeEditPart editpart = (BusinessItemShapeEditPart) firstElement;
element = ((Node) editpart.getModel()).getElement();
} else if (firstElement instanceof BaseBusinessItemRelationShipEditPart) {
BaseBusinessItemRelationShipEditPart editpart = (BaseBusinessItemRelationShipEditPart) firstElement;
element = ((EdgeImpl) editpart.getModel()).getElement();
}
if (element instanceof BusinessItem) {
BusinessItem businessItem = (BusinessItem) element;
DeleteAssignmentCommand command = new DeleteAssignmentCommand(businessItem, selection);
try {
command.execute(null, null);
} catch (ExecutionException e) {
ExceptionHandler.process(e);
}
IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
for (IEditorReference editors : page.getEditorReferences()) {
CorePlugin.getDefault().getDiagramModelService().refreshBusinessModel(editors);
}
}
}
}
Aggregations