Author: koen.aers(a)jboss.com
Date: 2008-08-05 10:14:15 -0400 (Tue, 05 Aug 2008)
New Revision: 9517
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.graph/src/org/jboss/tools/flow/jpdl4/graph/strategy/
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.graph/src/org/jboss/tools/flow/jpdl4/graph/strategy/ProcessAcceptsElementStrategy.java
Modified:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.graph/src/org/jboss/tools/flow/jpdl4/graph/editor/JpdlPaletteFactory.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.graph/src/org/jboss/tools/flow/jpdl4/graph/wrapper/ProcessWrapper.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.graph/src/org/jboss/tools/flow/jpdl4/graph/wrapper/SuperStateWrapper.java
Log:
add support for pluggable strategy for containers to accept elements
Modified:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.graph/src/org/jboss/tools/flow/jpdl4/graph/editor/JpdlPaletteFactory.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.graph/src/org/jboss/tools/flow/jpdl4/graph/editor/JpdlPaletteFactory.java 2008-08-05
14:13:53 UTC (rev 9516)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.graph/src/org/jboss/tools/flow/jpdl4/graph/editor/JpdlPaletteFactory.java 2008-08-05
14:14:15 UTC (rev 9517)
@@ -66,14 +66,6 @@
"Transition",
"Creating a new Transition",
new SimpleFactory(TransitionWrapper.class),
-// new CreationFactory() {
-// public Object getNewObject() {
-// return new TransitionWrapper();
-// }
-// public Object getObjectType() {
-// return AbstractConnectionWrapper.class;
-// }
-// },
ImageDescriptor.createFromURL(Activator.getDefault().getBundle().getEntry("icons/transition.gif")),
ImageDescriptor.createFromURL(Activator.getDefault().getBundle().getEntry("icons/transition.gif"))
);
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.graph/src/org/jboss/tools/flow/jpdl4/graph/strategy/ProcessAcceptsElementStrategy.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.graph/src/org/jboss/tools/flow/jpdl4/graph/strategy/ProcessAcceptsElementStrategy.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.graph/src/org/jboss/tools/flow/jpdl4/graph/strategy/ProcessAcceptsElementStrategy.java 2008-08-05
14:14:15 UTC (rev 9517)
@@ -0,0 +1,28 @@
+package org.jboss.tools.flow.jpdl4.graph.strategy;
+
+import org.jboss.tools.flow.common.core.Container;
+import org.jboss.tools.flow.editor.strategy.AcceptsElementStrategy;
+import org.jboss.tools.flow.jpdl4.core.Process;
+import org.jboss.tools.flow.jpdl4.core.StartState;
+
+public class ProcessAcceptsElementStrategy implements AcceptsElementStrategy {
+
+ private Process process;
+
+ public boolean acceptsElement(Object element) {
+ if (process == null) {
+ return false;
+ } else if (element instanceof StartState) {
+ return process.getStartState() == null;
+ } else {
+ return true;
+ }
+ }
+
+ public void setContainer(Container container) {
+ if (container instanceof Process) {
+ this.process = (Process)container;
+ }
+ }
+
+}
Modified:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.graph/src/org/jboss/tools/flow/jpdl4/graph/wrapper/ProcessWrapper.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.graph/src/org/jboss/tools/flow/jpdl4/graph/wrapper/ProcessWrapper.java 2008-08-05
14:13:53 UTC (rev 9516)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.graph/src/org/jboss/tools/flow/jpdl4/graph/wrapper/ProcessWrapper.java 2008-08-05
14:14:15 UTC (rev 9517)
@@ -1,25 +1,15 @@
package org.jboss.tools.flow.jpdl4.graph.wrapper;
import org.jboss.tools.flow.editor.core.DefaultFlowWrapper;
-import org.jboss.tools.flow.editor.core.NodeWrapper;
import org.jboss.tools.flow.jpdl4.core.Process;
-import org.jboss.tools.flow.jpdl4.core.StartState;
+import org.jboss.tools.flow.jpdl4.graph.strategy.ProcessAcceptsElementStrategy;
public class ProcessWrapper extends DefaultFlowWrapper {
public ProcessWrapper() {
setElement(new Process());
+ ProcessAcceptsElementStrategy acceptsElementStrategy = new
ProcessAcceptsElementStrategy();
+ acceptsElementStrategy.setContainer((Process)getElement());
}
- public Process getProcess() {
- return (Process) getElement();
- }
-
- public boolean acceptsElement(NodeWrapper element) {
- if (element.getElement() instanceof StartState) {
- return getProcess().getStartState() == null;
- }
- return super.acceptsElement(element);
- }
-
}
Modified:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.graph/src/org/jboss/tools/flow/jpdl4/graph/wrapper/SuperStateWrapper.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.graph/src/org/jboss/tools/flow/jpdl4/graph/wrapper/SuperStateWrapper.java 2008-08-05
14:13:53 UTC (rev 9516)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.graph/src/org/jboss/tools/flow/jpdl4/graph/wrapper/SuperStateWrapper.java 2008-08-05
14:14:15 UTC (rev 9517)
@@ -1,9 +1,6 @@
package org.jboss.tools.flow.jpdl4.graph.wrapper;
import org.jboss.tools.flow.editor.core.DefaultContainerWrapper;
-import org.jboss.tools.flow.editor.core.NodeWrapper;
-import org.jboss.tools.flow.jpdl4.core.Process;
-import org.jboss.tools.flow.jpdl4.core.StartState;
import org.jboss.tools.flow.jpdl4.core.SuperState;
public class SuperStateWrapper extends DefaultContainerWrapper {
@@ -12,11 +9,4 @@
setElement(new SuperState());
}
- public boolean acceptsElement(NodeWrapper element) {
- if (element.getElement() instanceof StartState) {
- return ((Process)getFlowWrapper().getElement()).getStartState() == null;
- }
- return super.acceptsElement(element);
- }
-
}
Show replies by date