Author: koen.aers(a)jboss.com
Date: 2008-08-05 12:34:56 -0400 (Tue, 05 Aug 2008)
New Revision: 9540
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/.classpath
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/.project
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/.settings/
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/.settings/org.eclipse.jdt.core.prefs
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/META-INF/
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/META-INF/MANIFEST.MF
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/build.properties
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/end.gif
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/process.gif
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/start.gif
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/state.gif
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/super.gif
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/transition.gif
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/plugin.xml
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/Activator.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editor/
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editor/JpdlEditor.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editor/JpdlPaletteFactory.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/EndStateEditPart.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/JpdlEditPartFactory.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/StartStateEditPart.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/StateEditPart.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/TransitionEditPart.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/strategy/
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/strategy/EndStateAcceptsOutgoingConnectionStrategy.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/strategy/ProcessAcceptsElementStrategy.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/strategy/StartStateAcceptsIncomingConnectionStrategy.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/EndStateWrapper.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/ProcessWrapper.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/StartStateWrapper.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/StateWrapper.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/SuperStateWrapper.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/TransitionWrapper.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/EndState.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/Process.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/StartState.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/State.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/SuperState.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/Transition.java
Log:
move from org.jboss.tools.flow.jpdl4.graph
Added: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/.classpath
===================================================================
--- trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/.classpath (rev
0)
+++ trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/.classpath 2008-08-05 16:34:56 UTC (rev
9540)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con"
path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con"
path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
Added: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/.project
===================================================================
--- trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/.project (rev
0)
+++ trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/.project 2008-08-05 16:34:56 UTC (rev
9540)
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.jboss.tools.flow.jpdl4</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
Added: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/.settings/org.eclipse.jdt.core.prefs
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/.settings/org.eclipse.jdt.core.prefs 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,7 @@
+#Tue Jul 15 11:36:35 CEST 2008
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
+org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.6
Added: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/META-INF/MANIFEST.MF
===================================================================
--- trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/META-INF/MANIFEST.MF
(rev 0)
+++ trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/META-INF/MANIFEST.MF 2008-08-05 16:34:56
UTC (rev 9540)
@@ -0,0 +1,16 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Jpdl4 Plug-in
+Bundle-SymbolicName: org.jboss.tools.flow.jpdl4;singleton:=true
+Bundle-Version: 1.0.0
+Bundle-Vendor: JBoss, a Division of Red Hat
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Require-Bundle: org.jboss.tools.flow.common;bundle-version="1.0.0",
+ org.jboss.tools.flow.jpdl4.core;bundle-version="1.0.0",
+ org.eclipse.core.resources;bundle-version="3.4.0",
+ org.eclipse.gef;bundle-version="3.4.0",
+ org.eclipse.ui;bundle-version="3.4.0",
+ org.eclipse.core.runtime;bundle-version="3.4.0"
+Bundle-ActivationPolicy: lazy
+Bundle-Activator: org.jboss.tools.flow.jpdl4.graph.Activator
+Export-Package: org.jboss.tools.flow.jpdl4.model
Added: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/build.properties
===================================================================
--- trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/build.properties
(rev 0)
+++ trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/build.properties 2008-08-05 16:34:56 UTC
(rev 9540)
@@ -0,0 +1,5 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml
Added: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/end.gif
===================================================================
(Binary files differ)
Property changes on: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/end.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/process.gif
===================================================================
(Binary files differ)
Property changes on: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/process.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/start.gif
===================================================================
(Binary files differ)
Property changes on: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/start.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/state.gif
===================================================================
(Binary files differ)
Property changes on: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/state.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/super.gif
===================================================================
(Binary files differ)
Property changes on: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/super.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/transition.gif
===================================================================
(Binary files differ)
Property changes on: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/icons/transition.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/plugin.xml
===================================================================
--- trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/plugin.xml (rev
0)
+++ trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/plugin.xml 2008-08-05 16:34:56 UTC (rev
9540)
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.2"?>
+<plugin>
+
+ <extension point="org.eclipse.ui.editors">
+ <editor
+ name="jPDL4 Editor"
+ extensions="jpdl4"
+ icon="icons/process.gif"
+
contributorClass="org.jboss.tools.flow.editor.GenericActionBarContributor"
+ class="org.jboss.tools.flow.jpdl4.graph.editor.JpdlEditor"
+ id="org.jboss.tools.process.jpdl4.graph.editor.JpdlEditor">
+ </editor>
+ </extension>
+
+</plugin>
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/Activator.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/Activator.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/Activator.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,45 @@
+package org.jboss.tools.flow.jpdl4.graph;
+
+/*
+ * Copyright 2005 JBoss Inc
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *
http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+public class Activator extends AbstractUIPlugin {
+
+ public static final String PLUGIN_ID = "org.jboss.tools.process.jpdl4.graph";
+
+ private static Activator plugin;
+
+ public Activator() {
+ }
+
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ }
+
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ super.stop(context);
+ }
+
+ public static Activator getDefault() {
+ return plugin;
+ }
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editor/JpdlEditor.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editor/JpdlEditor.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editor/JpdlEditor.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,35 @@
+package org.jboss.tools.flow.jpdl4.graph.editor;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+
+import org.eclipse.gef.EditPartFactory;
+import org.eclipse.gef.palette.PaletteRoot;
+import org.jboss.tools.flow.editor.GenericModelEditor;
+import org.jboss.tools.flow.jpdl4.graph.editpart.JpdlEditPartFactory;
+import org.jboss.tools.flow.jpdl4.graph.wrapper.ProcessWrapper;
+
+public class JpdlEditor extends GenericModelEditor {
+
+ protected EditPartFactory createEditPartFactory() {
+ return new JpdlEditPartFactory();
+ }
+
+ protected PaletteRoot createPalette() {
+ return new JpdlPaletteFactory().createPalette();
+ }
+
+ protected Object createModel() {
+ return new ProcessWrapper();
+ }
+
+ protected void writeModel(OutputStream os) throws IOException {
+ // TODO
+ }
+
+ protected void createModel(InputStream is) {
+ // TODO
+ setModel(createModel());
+ }
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editor/JpdlPaletteFactory.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editor/JpdlPaletteFactory.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editor/JpdlPaletteFactory.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,77 @@
+package org.jboss.tools.flow.jpdl4.graph.editor;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.gef.palette.CombinedTemplateCreationEntry;
+import org.eclipse.gef.palette.ConnectionCreationToolEntry;
+import org.eclipse.gef.palette.PaletteEntry;
+import org.eclipse.gef.palette.ToolEntry;
+import org.eclipse.gef.requests.SimpleFactory;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.jboss.tools.flow.editor.PaletteFactory;
+import org.jboss.tools.flow.jpdl4.graph.Activator;
+import org.jboss.tools.flow.jpdl4.graph.wrapper.EndStateWrapper;
+import org.jboss.tools.flow.jpdl4.graph.wrapper.StartStateWrapper;
+import org.jboss.tools.flow.jpdl4.graph.wrapper.StateWrapper;
+import org.jboss.tools.flow.jpdl4.graph.wrapper.SuperStateWrapper;
+import org.jboss.tools.flow.jpdl4.graph.wrapper.TransitionWrapper;
+
+public class JpdlPaletteFactory extends PaletteFactory {
+
+ protected List<PaletteEntry> createComponentEntries() {
+ List<PaletteEntry> entries = new ArrayList<PaletteEntry>();
+
+ CombinedTemplateCreationEntry combined = new CombinedTemplateCreationEntry(
+ "Start",
+ "Create a new Start State",
+ StartStateWrapper.class,
+ new SimpleFactory(StartStateWrapper.class),
+
ImageDescriptor.createFromURL(Activator.getDefault().getBundle().getEntry("icons/start.gif")),
+
ImageDescriptor.createFromURL(Activator.getDefault().getBundle().getEntry("icons/start.gif"))
+ );
+ entries.add(combined);
+
+ combined = new CombinedTemplateCreationEntry(
+ "State",
+ "Create a new State",
+ StateWrapper.class,
+ new SimpleFactory(StateWrapper.class),
+
ImageDescriptor.createFromURL(Activator.getDefault().getBundle().getEntry("icons/state.gif")),
+
ImageDescriptor.createFromURL(Activator.getDefault().getBundle().getEntry("icons/state.gif"))
+ );
+ entries.add(combined);
+
+ combined = new CombinedTemplateCreationEntry(
+ "End",
+ "Create a new End State",
+ EndStateWrapper.class,
+ new SimpleFactory(EndStateWrapper.class),
+
ImageDescriptor.createFromURL(Activator.getDefault().getBundle().getEntry("icons/end.gif")),
+
ImageDescriptor.createFromURL(Activator.getDefault().getBundle().getEntry("icons/end.gif"))
+ );
+ entries.add(combined);
+
+ combined = new CombinedTemplateCreationEntry(
+ "Super State",
+ "Create a new Super State",
+ SuperStateWrapper.class,
+ new SimpleFactory(SuperStateWrapper.class),
+
ImageDescriptor.createFromURL(Activator.getDefault().getBundle().getEntry("icons/super.gif")),
+
ImageDescriptor.createFromURL(Activator.getDefault().getBundle().getEntry("icons/super.gif"))
+ );
+ entries.add(combined);
+
+ ToolEntry tool = new ConnectionCreationToolEntry(
+ "Transition",
+ "Creating a new Transition",
+ new SimpleFactory(TransitionWrapper.class),
+
ImageDescriptor.createFromURL(Activator.getDefault().getBundle().getEntry("icons/transition.gif")),
+
ImageDescriptor.createFromURL(Activator.getDefault().getBundle().getEntry("icons/transition.gif"))
+ );
+ entries.add(tool);
+
+ return entries;
+ }
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/EndStateEditPart.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/EndStateEditPart.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/EndStateEditPart.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,21 @@
+package org.jboss.tools.flow.jpdl4.graph.editpart;
+
+import org.eclipse.draw2d.IFigure;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.swt.graphics.Image;
+import org.jboss.tools.flow.editor.editpart.ElementEditPart;
+import org.jboss.tools.flow.editor.figure.RectangleElementFigure;
+import org.jboss.tools.flow.jpdl4.graph.Activator;
+
+public class EndStateEditPart extends ElementEditPart {
+
+ private static final Image ICON = ImageDescriptor.createFromURL(
+
Activator.getDefault().getBundle().getEntry("icons/end.gif")).createImage();
+
+ protected IFigure createFigure() {
+ RectangleElementFigure figure = new RectangleElementFigure();
+ figure.setIcon(ICON);
+ return figure;
+ }
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/JpdlEditPartFactory.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/JpdlEditPartFactory.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/JpdlEditPartFactory.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,38 @@
+package org.jboss.tools.flow.jpdl4.graph.editpart;
+
+import org.eclipse.gef.EditPart;
+import org.eclipse.gef.EditPartFactory;
+import org.jboss.tools.flow.editor.editpart.ContainerEditPart;
+import org.jboss.tools.flow.editor.editpart.RootEditPart;
+import org.jboss.tools.flow.jpdl4.graph.wrapper.EndStateWrapper;
+import org.jboss.tools.flow.jpdl4.graph.wrapper.ProcessWrapper;
+import org.jboss.tools.flow.jpdl4.graph.wrapper.StartStateWrapper;
+import org.jboss.tools.flow.jpdl4.graph.wrapper.StateWrapper;
+import org.jboss.tools.flow.jpdl4.graph.wrapper.SuperStateWrapper;
+import org.jboss.tools.flow.jpdl4.graph.wrapper.TransitionWrapper;
+
+public class JpdlEditPartFactory implements EditPartFactory {
+
+ public EditPart createEditPart(EditPart context, Object model) {
+ EditPart result = null;
+ if (model instanceof ProcessWrapper) {
+ result = new RootEditPart();
+ } else if (model instanceof SuperStateWrapper) {
+ result = new ContainerEditPart();
+ } else if (model instanceof StartStateWrapper) {
+ result = new StartStateEditPart();
+ } else if (model instanceof StateWrapper) {
+ result = new StateEditPart();
+ } else if (model instanceof EndStateWrapper) {
+ result = new EndStateEditPart();
+ } else if (model instanceof TransitionWrapper) {
+ result = new TransitionEditPart();
+ } else {
+ throw new IllegalArgumentException(
+ "Unknown model object " + model);
+ }
+ result.setModel(model);
+ return result;
+ }
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/StartStateEditPart.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/StartStateEditPart.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/StartStateEditPart.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,21 @@
+package org.jboss.tools.flow.jpdl4.graph.editpart;
+
+import org.eclipse.draw2d.IFigure;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.swt.graphics.Image;
+import org.jboss.tools.flow.editor.editpart.ElementEditPart;
+import org.jboss.tools.flow.editor.figure.RectangleElementFigure;
+import org.jboss.tools.flow.jpdl4.graph.Activator;
+
+public class StartStateEditPart extends ElementEditPart {
+
+ private static final Image ICON = ImageDescriptor.createFromURL(
+
Activator.getDefault().getBundle().getEntry("icons/start.gif")).createImage();
+
+ protected IFigure createFigure() {
+ RectangleElementFigure figure = new RectangleElementFigure();
+ figure.setIcon(ICON);
+ return figure;
+ }
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/StateEditPart.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/StateEditPart.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/StateEditPart.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,25 @@
+package org.jboss.tools.flow.jpdl4.graph.editpart;
+
+import org.eclipse.draw2d.IFigure;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.widgets.Display;
+import org.jboss.tools.flow.editor.editpart.ElementEditPart;
+import org.jboss.tools.flow.editor.figure.RoundedRectangleElementFigure;
+import org.jboss.tools.flow.jpdl4.graph.Activator;
+
+public class StateEditPart extends ElementEditPart {
+
+ private static final Image ICON = ImageDescriptor.createFromURL(
+
Activator.getDefault().getBundle().getEntry("icons/state.gif")).createImage();
+ private static final Color COLOR = new Color(Display.getCurrent(), 255, 250, 205);
+
+ protected IFigure createFigure() {
+ RoundedRectangleElementFigure figure = new RoundedRectangleElementFigure();
+ figure.setIcon(ICON);
+ figure.setColor(COLOR);
+ return figure;
+ }
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/TransitionEditPart.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/TransitionEditPart.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/editpart/TransitionEditPart.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,12 @@
+package org.jboss.tools.flow.jpdl4.graph.editpart;
+
+import org.jboss.tools.flow.editor.editpart.ConnectionEditPart;
+import org.jboss.tools.flow.jpdl4.graph.wrapper.TransitionWrapper;
+
+public class TransitionEditPart extends ConnectionEditPart {
+
+ protected Class<?> getElementConnectionType() {
+ return TransitionWrapper.class;
+ }
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/strategy/EndStateAcceptsOutgoingConnectionStrategy.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/strategy/EndStateAcceptsOutgoingConnectionStrategy.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/strategy/EndStateAcceptsOutgoingConnectionStrategy.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,16 @@
+package org.jboss.tools.flow.jpdl4.graph.strategy;
+
+import org.jboss.tools.flow.common.model.Connection;
+import org.jboss.tools.flow.common.model.Node;
+import org.jboss.tools.flow.editor.strategy.AcceptsOutgoingConnectionStrategy;
+
+public class EndStateAcceptsOutgoingConnectionStrategy implements
AcceptsOutgoingConnectionStrategy {
+
+ public boolean acceptsOutgoingConnection(Connection connection, Node source) {
+ return false;
+ }
+
+ public void setNode(Node node) {
+ }
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/strategy/ProcessAcceptsElementStrategy.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/strategy/ProcessAcceptsElementStrategy.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/strategy/ProcessAcceptsElementStrategy.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,28 @@
+package org.jboss.tools.flow.jpdl4.graph.strategy;
+
+import org.jboss.tools.flow.common.model.Container;
+import org.jboss.tools.flow.editor.strategy.AcceptsElementStrategy;
+import org.jboss.tools.flow.jpdl4.model.Process;
+import org.jboss.tools.flow.jpdl4.model.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;
+ }
+ }
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/strategy/StartStateAcceptsIncomingConnectionStrategy.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/strategy/StartStateAcceptsIncomingConnectionStrategy.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/strategy/StartStateAcceptsIncomingConnectionStrategy.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,16 @@
+package org.jboss.tools.flow.jpdl4.graph.strategy;
+
+import org.jboss.tools.flow.common.model.Connection;
+import org.jboss.tools.flow.common.model.Node;
+import org.jboss.tools.flow.editor.strategy.AcceptsIncomingConnectionStrategy;
+
+public class StartStateAcceptsIncomingConnectionStrategy implements
AcceptsIncomingConnectionStrategy {
+
+ public boolean acceptsIncomingConnection(Connection connection, Node source) {
+ return false;
+ }
+
+ public void setNode(Node node) {
+ }
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/EndStateWrapper.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/EndStateWrapper.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/EndStateWrapper.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,19 @@
+package org.jboss.tools.flow.jpdl4.graph.wrapper;
+
+import org.jboss.tools.flow.editor.core.DefaultNodeWrapper;
+import org.jboss.tools.flow.editor.strategy.AcceptsOutgoingConnectionStrategy;
+import
org.jboss.tools.flow.jpdl4.graph.strategy.EndStateAcceptsOutgoingConnectionStrategy;
+import org.jboss.tools.flow.jpdl4.model.EndState;
+
+public class EndStateWrapper extends DefaultNodeWrapper {
+
+ public EndStateWrapper() {
+ EndState element = new EndState();
+ setElement(element);
+ setName("End");
+ AcceptsOutgoingConnectionStrategy strategy = new
EndStateAcceptsOutgoingConnectionStrategy();
+ strategy.setNode(element);
+ setAcceptsOutgoingConnectionStrategy(strategy);
+ }
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/ProcessWrapper.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/ProcessWrapper.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/ProcessWrapper.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,17 @@
+package org.jboss.tools.flow.jpdl4.graph.wrapper;
+
+import org.jboss.tools.flow.editor.core.DefaultFlowWrapper;
+import org.jboss.tools.flow.jpdl4.graph.strategy.ProcessAcceptsElementStrategy;
+import org.jboss.tools.flow.jpdl4.model.Process;
+
+public class ProcessWrapper extends DefaultFlowWrapper {
+
+ public ProcessWrapper() {
+ Process process = new Process();
+ setElement(process);
+ ProcessAcceptsElementStrategy acceptsElementStrategy = new
ProcessAcceptsElementStrategy();
+ acceptsElementStrategy.setContainer(process);
+ setAcceptsElementStrategy(acceptsElementStrategy);
+ }
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/StartStateWrapper.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/StartStateWrapper.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/StartStateWrapper.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,19 @@
+package org.jboss.tools.flow.jpdl4.graph.wrapper;
+
+import org.jboss.tools.flow.editor.core.DefaultNodeWrapper;
+import org.jboss.tools.flow.editor.strategy.AcceptsIncomingConnectionStrategy;
+import
org.jboss.tools.flow.jpdl4.graph.strategy.StartStateAcceptsIncomingConnectionStrategy;
+import org.jboss.tools.flow.jpdl4.model.StartState;
+
+public class StartStateWrapper extends DefaultNodeWrapper {
+
+ public StartStateWrapper() {
+ StartState element = new StartState();
+ setElement(element);
+ setName("Start");
+ AcceptsIncomingConnectionStrategy strategy = new
StartStateAcceptsIncomingConnectionStrategy();
+ strategy.setNode(element);
+
+ }
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/StateWrapper.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/StateWrapper.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/StateWrapper.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,14 @@
+package org.jboss.tools.flow.jpdl4.graph.wrapper;
+
+import org.jboss.tools.flow.editor.core.DefaultNodeWrapper;
+import org.jboss.tools.flow.jpdl4.model.State;
+
+public class StateWrapper extends DefaultNodeWrapper {
+
+ public StateWrapper() {
+ State element = new State();
+ setElement(element);
+ element.setName("State");
+ }
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/SuperStateWrapper.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/SuperStateWrapper.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/SuperStateWrapper.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,12 @@
+package org.jboss.tools.flow.jpdl4.graph.wrapper;
+
+import org.jboss.tools.flow.editor.core.DefaultContainerWrapper;
+import org.jboss.tools.flow.jpdl4.model.SuperState;
+
+public class SuperStateWrapper extends DefaultContainerWrapper {
+
+ public SuperStateWrapper() {
+ setElement(new SuperState());
+ }
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/TransitionWrapper.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/TransitionWrapper.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/graph/wrapper/TransitionWrapper.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,7 @@
+package org.jboss.tools.flow.jpdl4.graph.wrapper;
+
+import org.jboss.tools.flow.editor.core.DefaultConnectionWrapper;
+
+public class TransitionWrapper extends DefaultConnectionWrapper {
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/EndState.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/EndState.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/EndState.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,7 @@
+package org.jboss.tools.flow.jpdl4.model;
+
+import org.jboss.tools.flow.common.model.DefaultNode;
+
+public class EndState extends DefaultNode {
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/Process.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/Process.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/Process.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,20 @@
+package org.jboss.tools.flow.jpdl4.model;
+
+import java.util.Iterator;
+
+import org.jboss.tools.flow.common.model.DefaultFlow;
+import org.jboss.tools.flow.common.model.Node;
+
+public class Process extends DefaultFlow {
+
+ public StartState getStartState() {
+ for (Iterator<Node> iterator = getNodes().iterator(); iterator.hasNext(); ) {
+ Node node = iterator.next();
+ if (node instanceof StartState) {
+ return (StartState)node;
+ }
+ }
+ return null;
+ }
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/StartState.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/StartState.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/StartState.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,7 @@
+package org.jboss.tools.flow.jpdl4.model;
+
+import org.jboss.tools.flow.common.model.DefaultNode;
+
+public class StartState extends DefaultNode {
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/State.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/State.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/State.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,7 @@
+package org.jboss.tools.flow.jpdl4.model;
+
+import org.jboss.tools.flow.common.model.DefaultNode;
+
+public class State extends DefaultNode {
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/SuperState.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/SuperState.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/SuperState.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,7 @@
+package org.jboss.tools.flow.jpdl4.model;
+
+import org.jboss.tools.flow.common.model.DefaultContainer;
+
+public class SuperState extends DefaultContainer {
+
+}
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/Transition.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/Transition.java
(rev 0)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/Transition.java 2008-08-05
16:34:56 UTC (rev 9540)
@@ -0,0 +1,12 @@
+package org.jboss.tools.flow.jpdl4.model;
+
+import org.jboss.tools.flow.common.model.DefaultConnection;
+import org.jboss.tools.flow.common.model.Node;
+
+public class Transition extends DefaultConnection {
+
+ public Transition(Node from, Node to) {
+ super(from, to);
+ }
+
+}