diff options
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/locator/PortPositionLocator.java | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/locator/PortPositionLocator.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/locator/PortPositionLocator.java index 6c36aebb84e..5db01469684 100644 --- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/locator/PortPositionLocator.java +++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/locator/PortPositionLocator.java @@ -432,12 +432,16 @@ public class PortPositionLocator implements IBorderItemLocator { // Refresh nodeShape bounds in case of resize RoundedRectangleNodePlateFigure nodePlateFigure = FigureUtils.findChildFigureInstance(figure, RoundedRectangleNodePlateFigure.class); - if (figure instanceof RoundedRectangleNodePlateFigure && nodePlateFigure != null) { - for (Object child : nodePlateFigure.getChildren()) { - if (child instanceof IFigure) { - ((IFigure) child).setBounds(rect); + if (nodePlateFigure != null){ + if (figure instanceof RoundedRectangleNodePlateFigure) { + for (Object child : nodePlateFigure.getChildren()) { + if (child instanceof IFigure) { + ((IFigure) child).setBounds(rect); + } } } + // to force the refresh, invalidate coordinates of the parent if refresh him + all children + nodePlateFigure.invalidate(); } } } |