try {
if (fireEvent) {
int removedX = diagram.boundaryPanel.getWidgetLeft(this) - diagram.boundaryPanel.getAbsoluteLeft();
int removedY = diagram.boundaryPanel.getWidgetTop(this) - diagram.boundaryPanel.getAbsoluteTop();
diagram.onDiagramRemove(new DiagramRemoveEvent(this, removedX, removedY));
}
enableConnectionCreate(false);
// Remove Shape from Diagram