Author: bobtarling Date: 2011-05-23 07:24:50-0700 New Revision: 19493 Modified: trunk/src/argouml-core-diagrams-state2/src/org/argouml/state2/diagram/FigEntryPoint.java trunk/src/argouml-core-diagrams-state2/src/org/argouml/state2/diagram/FigExitPoint.java
Log: If entry/exit dragged to a different vertext then remove connector registration to old vertex Modified: trunk/src/argouml-core-diagrams-state2/src/org/argouml/state2/diagram/FigEntryPoint.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-state2/src/org/argouml/state2/diagram/FigEntryPoint.java?view=diff&pathrev=19493&r1=19492&r2=19493 ============================================================================== --- trunk/src/argouml-core-diagrams-state2/src/org/argouml/state2/diagram/FigEntryPoint.java (original) +++ trunk/src/argouml-core-diagrams-state2/src/org/argouml/state2/diagram/FigEntryPoint.java 2011-05-23 07:24:50-0700 @@ -41,17 +41,22 @@ @Override public void setEnclosingFig(Fig encloser) { + // TODO: Note copy/paste code in FigExitPoint - where is this code + // better placed in GEF? LayerPerspective lp = (LayerPerspective) getLayer(); if (lp == null) { return; } super.setEnclosingFig(encloser); - - if (encloser != null) { - ((FigNode) encloser).addConnector(this); + FigVertex vertex = ((FigVertex) encloser); + + if (vertex != null) { + vertex.addConnector(this); } else { - ((FigNode) encloser).removeConnector(this); + FigVertex previousVertex = (FigVertex) getGraphNode(); + if (previousVertex != null) + previousVertex.removeConnector(this); } } } Modified: trunk/src/argouml-core-diagrams-state2/src/org/argouml/state2/diagram/FigExitPoint.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-state2/src/org/argouml/state2/diagram/FigExitPoint.java?view=diff&pathrev=19493&r1=19492&r2=19493 ============================================================================== --- trunk/src/argouml-core-diagrams-state2/src/org/argouml/state2/diagram/FigExitPoint.java (original) +++ trunk/src/argouml-core-diagrams-state2/src/org/argouml/state2/diagram/FigExitPoint.java 2011-05-23 07:24:50-0700 @@ -42,17 +42,22 @@ @Override public void setEnclosingFig(Fig encloser) { + // TODO: Note copy/paste code in FigEntryPoint - where is this code + // better placed in GEF? LayerPerspective lp = (LayerPerspective) getLayer(); if (lp == null) { return; } super.setEnclosingFig(encloser); - - if (encloser != null) { - ((FigNode) encloser).addConnector(this); + FigVertex vertex = ((FigVertex) encloser); + + if (vertex != null) { + vertex.addConnector(this); } else { - ((FigNode) encloser).removeConnector(this); + FigVertex previousVertex = (FigVertex) getGraphNode(); + if (previousVertex != null) + previousVertex.removeConnector(this); } } } ------------------------------------------------------ http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2745935 To unsubscribe from this discussion, e-mail: [[email protected]].
