Author: koen.aers(a)jboss.com
Date: 2011-08-31 15:15:38 -0400 (Wed, 31 Aug 2011)
New Revision: 34449
Modified:
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/notation/JpdlNodeContainer.java
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/DecisionDomAdapter.java
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/EndStateDomAdapter.java
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/ForkDomAdapter.java
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/JoinDomAdapter.java
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/MailNodeDomAdapter.java
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/NodeDomAdapter.java
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/ProcessStateDomAdapter.java
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/StartStateDomAdapter.java
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/StateDomAdapter.java
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/SuperStateDomAdapter.java
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/TaskNodeDomAdapter.java
Log:
- JBIDE-3727: editing names of nodes in source view is working
- changing name of superstate does not result in incoming transitions to go fubar anymore
Modified:
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/notation/JpdlNodeContainer.java
===================================================================
---
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/notation/JpdlNodeContainer.java 2011-08-31
18:56:38 UTC (rev 34448)
+++
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/notation/JpdlNodeContainer.java 2011-08-31
19:15:38 UTC (rev 34449)
@@ -2,6 +2,7 @@
import java.beans.PropertyChangeEvent;
import java.util.ArrayList;
+import java.util.List;
import java.util.StringTokenizer;
import org.jbpm.gd.common.editor.CreationFactory;
@@ -19,7 +20,10 @@
public void propertyChange(PropertyChangeEvent evt) {
String eventName = evt.getPropertyName();
- if (eventName.equals("nodeElementAdd")) {
+ if (eventName.equals("name")) {
+ firePropertyChange(evt.getPropertyName(), evt.getOldValue(), evt.getNewValue());
+ updateArrivingEdges((String)evt.getNewValue());
+ } else if (eventName.equals("nodeElementAdd")) {
SemanticElement jpdlElement = (SemanticElement)evt.getNewValue();
NotationElement notationElement = getRegisteredNotationElementFor(jpdlElement);
if (notationElement == null) {
@@ -114,4 +118,15 @@
}
danglingEdges.removeAll(list);
}
+
+ private void updateArrivingEdges(String to) {
+ List edges = getArrivingEdges();
+ for (int i = 0; i < edges.size(); i++) {
+ Edge edge = (Edge)edges.get(i);
+ ((SemanticElement)edge.getSemanticElement()).removePropertyChangeListener(edge);
+ ((Transition)edge.getSemanticElement()).setTo(to);
+ ((SemanticElement)edge.getSemanticElement()).addPropertyChangeListener(edge);
+ }
+ }
+
}
Modified:
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/DecisionDomAdapter.java
===================================================================
---
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/DecisionDomAdapter.java 2011-08-31
18:56:38 UTC (rev 34448)
+++
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/DecisionDomAdapter.java 2011-08-31
19:15:38 UTC (rev 34449)
@@ -4,6 +4,7 @@
import java.util.HashMap;
import java.util.Map;
+import org.eclipse.swt.widgets.Display;
import org.jbpm.gd.common.model.SemanticElement;
import org.jbpm.gd.common.xml.XmlAdapter;
import org.jbpm.gd.jpdl.model.Decision;
@@ -95,10 +96,15 @@
}
}
- protected void doModelUpdate(String name, String newValue) {
- Decision decision = (Decision)getSemanticElement();
+ protected void doModelUpdate(String name, final String newValue) {
+ final Decision decision = (Decision)getSemanticElement();
if ("name".equals(name)) {
- decision.setName(newValue);
+ Display.getDefault().asyncExec(new Runnable() {
+ @Override
+ public void run() {
+ decision.setName(newValue);
+ }
+ });
} else if ("async".equals(name)) {
decision.setAsync(newValue);
} else if ("expression".equals(name)) {
Modified:
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/EndStateDomAdapter.java
===================================================================
---
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/EndStateDomAdapter.java 2011-08-31
18:56:38 UTC (rev 34448)
+++
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/EndStateDomAdapter.java 2011-08-31
19:15:38 UTC (rev 34449)
@@ -4,6 +4,7 @@
import java.util.HashMap;
import java.util.Map;
+import org.eclipse.swt.widgets.Display;
import org.jbpm.gd.common.model.SemanticElement;
import org.jbpm.gd.common.xml.XmlAdapter;
import org.jbpm.gd.jpdl.model.Description;
@@ -64,10 +65,15 @@
}
}
- protected void doModelUpdate(String name, String newValue) {
- EndState endState = (EndState)getSemanticElement();
+ protected void doModelUpdate(String name, final String newValue) {
+ final EndState endState = (EndState)getSemanticElement();
if ("name".equals(name)) {
- endState.setName(newValue);
+ Display.getDefault().asyncExec(new Runnable() {
+ @Override
+ public void run() {
+ endState.setName(newValue);
+ }
+ });
}
}
Modified:
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/ForkDomAdapter.java
===================================================================
---
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/ForkDomAdapter.java 2011-08-31
18:56:38 UTC (rev 34448)
+++
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/ForkDomAdapter.java 2011-08-31
19:15:38 UTC (rev 34449)
@@ -4,6 +4,7 @@
import java.util.HashMap;
import java.util.Map;
+import org.eclipse.swt.widgets.Display;
import org.jbpm.gd.common.model.SemanticElement;
import org.jbpm.gd.common.xml.XmlAdapter;
import org.jbpm.gd.jpdl.model.Description;
@@ -98,10 +99,15 @@
}
}
- protected void doModelUpdate(String name, String newValue) {
- Fork fork = (Fork)getSemanticElement();
+ protected void doModelUpdate(String name, final String newValue) {
+ final Fork fork = (Fork)getSemanticElement();
if ("name".equals(name)) {
- fork.setName(newValue);
+ Display.getDefault().asyncExec(new Runnable() {
+ @Override
+ public void run() {
+ fork.setName(newValue);
+ }
+ });
} else if ("async".equals(name)) {
fork.setAsync(newValue);
}
Modified:
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/JoinDomAdapter.java
===================================================================
---
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/JoinDomAdapter.java 2011-08-31
18:56:38 UTC (rev 34448)
+++
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/JoinDomAdapter.java 2011-08-31
19:15:38 UTC (rev 34449)
@@ -4,6 +4,7 @@
import java.util.HashMap;
import java.util.Map;
+import org.eclipse.swt.widgets.Display;
import org.jbpm.gd.common.model.SemanticElement;
import org.jbpm.gd.common.xml.XmlAdapter;
import org.jbpm.gd.jpdl.model.Description;
@@ -90,10 +91,15 @@
}
}
- protected void doModelUpdate(String name, String newValue) {
- Join join = (Join)getSemanticElement();
+ protected void doModelUpdate(String name, final String newValue) {
+ final Join join = (Join)getSemanticElement();
if ("name".equals(name)) {
- join.setName(newValue);
+ Display.getDefault().asyncExec(new Runnable() {
+ @Override
+ public void run() {
+ join.setName(newValue);
+ }
+ });
} else if ("async".equals(name)) {
join.setAsync(newValue);
}
Modified:
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/MailNodeDomAdapter.java
===================================================================
---
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/MailNodeDomAdapter.java 2011-08-31
18:56:38 UTC (rev 34448)
+++
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/MailNodeDomAdapter.java 2011-08-31
19:15:38 UTC (rev 34449)
@@ -4,6 +4,7 @@
import java.util.HashMap;
import java.util.Map;
+import org.eclipse.swt.widgets.Display;
import org.jbpm.gd.common.model.SemanticElement;
import org.jbpm.gd.common.xml.XmlAdapter;
import org.jbpm.gd.jpdl.model.Description;
@@ -117,10 +118,15 @@
}
}
- protected void doModelUpdate(String name, String newValue) {
- MailNode mailNode = (MailNode)getSemanticElement();
+ protected void doModelUpdate(String name, final String newValue) {
+ final MailNode mailNode = (MailNode)getSemanticElement();
if ("name".equals(name)) {
- mailNode.setName(newValue);
+ Display.getDefault().asyncExec(new Runnable() {
+ @Override
+ public void run() {
+ mailNode.setName(newValue);
+ }
+ });
} else if ("async".equals(name)) {
mailNode.setAsync(newValue);
} else if ("to".equals(name)) {
Modified:
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/NodeDomAdapter.java
===================================================================
---
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/NodeDomAdapter.java 2011-08-31
18:56:38 UTC (rev 34448)
+++
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/NodeDomAdapter.java 2011-08-31
19:15:38 UTC (rev 34449)
@@ -4,6 +4,7 @@
import java.util.HashMap;
import java.util.Map;
+import org.eclipse.swt.widgets.Display;
import org.jbpm.gd.common.model.SemanticElement;
import org.jbpm.gd.common.xml.XmlAdapter;
import org.jbpm.gd.jpdl.model.Action;
@@ -116,10 +117,15 @@
}
}
- protected void doModelUpdate(String name, String newValue) {
- Node node = (Node)getSemanticElement();
+ protected void doModelUpdate(String name, final String newValue) {
+ final Node node = (Node)getSemanticElement();
if ("name".equals(name)) {
- node.setName(newValue);
+ Display.getDefault().asyncExec(new Runnable() {
+ @Override
+ public void run() {
+ node.setName(newValue);
+ }
+ });
} else if ("async".equals(name)) {
node.setAsync(newValue);
}
Modified:
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/ProcessStateDomAdapter.java
===================================================================
---
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/ProcessStateDomAdapter.java 2011-08-31
18:56:38 UTC (rev 34448)
+++
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/ProcessStateDomAdapter.java 2011-08-31
19:15:38 UTC (rev 34449)
@@ -4,6 +4,7 @@
import java.util.HashMap;
import java.util.Map;
+import org.eclipse.swt.widgets.Display;
import org.jbpm.gd.common.model.SemanticElement;
import org.jbpm.gd.common.xml.XmlAdapter;
import org.jbpm.gd.jpdl.model.Description;
@@ -103,10 +104,15 @@
}
}
- protected void doModelUpdate(String name, String newValue) {
- ProcessState processState = (ProcessState)getSemanticElement();
+ protected void doModelUpdate(String name, final String newValue) {
+ final ProcessState processState = (ProcessState)getSemanticElement();
if ("name".equals(name)) {
- processState.setName(newValue);
+ Display.getDefault().asyncExec(new Runnable() {
+ @Override
+ public void run() {
+ processState.setName(newValue);
+ }
+ });
} else if ("async".equals(name)) {
processState.setAsync(newValue);
}
Modified:
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/StartStateDomAdapter.java
===================================================================
---
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/StartStateDomAdapter.java 2011-08-31
18:56:38 UTC (rev 34448)
+++
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/StartStateDomAdapter.java 2011-08-31
19:15:38 UTC (rev 34449)
@@ -4,6 +4,7 @@
import java.util.HashMap;
import java.util.Map;
+import org.eclipse.swt.widgets.Display;
import org.jbpm.gd.common.model.SemanticElement;
import org.jbpm.gd.common.xml.XmlAdapter;
import org.jbpm.gd.jpdl.model.Description;
@@ -79,10 +80,15 @@
}
}
- protected void doModelUpdate(String name, String newValue) {
- StartState startState = (StartState)getSemanticElement();
+ protected void doModelUpdate(String name, final String newValue) {
+ final StartState startState = (StartState)getSemanticElement();
if ("name".equals(name)) {
- startState.setName(newValue);
+ Display.getDefault().asyncExec(new Runnable() {
+ @Override
+ public void run() {
+ startState.setName(newValue);
+ }
+ });
}
}
Modified:
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/StateDomAdapter.java
===================================================================
---
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/StateDomAdapter.java 2011-08-31
18:56:38 UTC (rev 34448)
+++
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/StateDomAdapter.java 2011-08-31
19:15:38 UTC (rev 34449)
@@ -4,6 +4,7 @@
import java.util.HashMap;
import java.util.Map;
+import org.eclipse.swt.widgets.Display;
import org.jbpm.gd.common.model.SemanticElement;
import org.jbpm.gd.common.xml.XmlAdapter;
import org.jbpm.gd.jpdl.model.Description;
@@ -91,10 +92,15 @@
}
}
- protected void doModelUpdate(String name, String newValue) {
- State state = (State)getSemanticElement();
- if ("name".equals(name)) {
- state.setName(newValue);
+ protected void doModelUpdate(String name, final String newValue) {
+ final State state = (State)getSemanticElement();
+ if ("name".equals(name)) {
+ Display.getDefault().asyncExec(new Runnable() {
+ @Override
+ public void run() {
+ state.setName(newValue);
+ }
+ });
} else if ("async".equals(name)) {
state.setAsync(newValue);
}
Modified:
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/SuperStateDomAdapter.java
===================================================================
---
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/SuperStateDomAdapter.java 2011-08-31
18:56:38 UTC (rev 34448)
+++
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/SuperStateDomAdapter.java 2011-08-31
19:15:38 UTC (rev 34449)
@@ -4,6 +4,7 @@
import java.util.HashMap;
import java.util.Map;
+import org.eclipse.swt.widgets.Display;
import org.jbpm.gd.common.model.SemanticElement;
import org.jbpm.gd.common.xml.XmlAdapter;
import org.jbpm.gd.jpdl.model.Decision;
@@ -115,10 +116,15 @@
}
}
- protected void doModelUpdate(String name, String newValue) {
- SuperState superState = (SuperState)getSemanticElement();
+ protected void doModelUpdate(String name, final String newValue) {
+ final SuperState superState = (SuperState)getSemanticElement();
if ("name".equals(name)) {
- superState.setName(newValue);
+ Display.getDefault().asyncExec(new Runnable() {
+ @Override
+ public void run() {
+ superState.setName(newValue);
+ }
+ });
} else if ("async".equals(name)) {
superState.setAsync(newValue);
}
Modified:
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/TaskNodeDomAdapter.java
===================================================================
---
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/TaskNodeDomAdapter.java 2011-08-31
18:56:38 UTC (rev 34448)
+++
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/xml/TaskNodeDomAdapter.java 2011-08-31
19:15:38 UTC (rev 34449)
@@ -4,6 +4,7 @@
import java.util.HashMap;
import java.util.Map;
+import org.eclipse.swt.widgets.Display;
import org.jbpm.gd.common.model.SemanticElement;
import org.jbpm.gd.common.xml.XmlAdapter;
import org.jbpm.gd.jpdl.model.Description;
@@ -110,10 +111,15 @@
}
}
- protected void doModelUpdate(String name, String newValue) {
- TaskNode taskNode = (TaskNode)getSemanticElement();
+ protected void doModelUpdate(String name, final String newValue) {
+ final TaskNode taskNode = (TaskNode)getSemanticElement();
if ("name".equals(name)) {
- taskNode.setName(newValue);
+ Display.getDefault().asyncExec(new Runnable() {
+ @Override
+ public void run() {
+ taskNode.setName(newValue);
+ }
+ });
} else if ("async".equals(name)) {
taskNode.setAsync(newValue);
} else if ("signal".equals(name)) {