Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "STP/BPMN Component/EclipseCon2008"
(→The annotation coding sample) |
(→IDnDHandlers) |
||
Line 73: | Line 73: | ||
</pre></code> | </pre></code> | ||
− | + | Then, we create the adapter factory by naming it BugAdapterFactory and placing it in dnd package under the plugin class. | |
+ | The contents of the adapter factory should like this: | ||
+ | |||
+ | <code><pre> | ||
+ | public class BugAdapterFactory implements IAdapterFactory { | ||
+ | |||
+ | public Object getAdapter(Object adaptableObject, Class adapterType) { | ||
+ | if (adaptableObject instanceof IBug && | ||
+ | IDnDHandler.class.equals(adapterType)) { | ||
+ | return new BugDnDHandler((IBug) adaptableObject); | ||
+ | } | ||
+ | return null; | ||
+ | } | ||
+ | |||
+ | public Class[] getAdapterList() { | ||
+ | return new Class[] {IDnDHandler.class}; | ||
+ | } | ||
+ | |||
+ | } | ||
+ | </pre></code> | ||
+ | |||
+ | We create a <code>BugDnDHandler</code> class that will extend <code>AbstractViewDnDHandler</code>. | ||
+ | |||
+ | In its constructor this class takes a <code>IBug</code> object. | ||
[[Category:BPMN]] | [[Category:BPMN]] | ||
[[Category:STP]] | [[Category:STP]] | ||
[[Category:EclipseCon 2008]] | [[Category:EclipseCon 2008]] |
Revision as of 16:10, 6 March 2008
This page features the tutorial Get the most of the BPMN modeler for EclipseCon 2008.
This page is related to Developing with the STP BPMN modeler and Using the STP BPMN modeler.
This is a work in progress, please watch the page to stay tuned. If you want to submit something to this page, please post to this mailing list first.
Here is the outline of the tutorial:
- 16h: Presentation
- 16h15: Modeling BPMN
- 16h45: Interactions with the modeler
- 17h05: Get your own editor
- 17h35: Future plans and conclusions
- 17h50: Questions
Contents
What's in the box
An active Eclipse component
- Going 1.0
- Just i18n'ed
A GMF-based modeler
A tool to model BPMN
BPMN modeling sample
Below is a list of items we want to cover during the BPMN modeling sample
- Palette
- Popup toolbar
- Appearance tab
- Creating basic shapes
- Different activity types
- Gateways
- Sequence and messaging edges
- Connection rules
- Customized handles
- Customize the edge and the reset connection button
- Change the order of edges for an activity
- Insert space tool
- Using artifacts
- TODO tags
- Validation
- Using the builder to validate the diagram
- Documentation
- Attaching a reference to a project file to a shape
- Opening a file
The annotation coding sample
This sample demonstrates how you can integrate the BPMN modeler with an external application. Our coding sample will consist in creating a new plugin, which will transform bugs into text annotations during a drag and drop operation.
In this sample we will use a plugin (org.eclipse.bpmn.sample.bugView) which shows a tree view of various bugs.
Creating the drag and drop plugin
Create the plugin, make it dependent of org.eclipse.stp.bpmn.diagram
and org.eclipse.stp.bpmn.sample.bugView
.
IDnDHandlers
Open the extensions tab and create a new extension for org.eclipse.core.runtime.adapters
:
<extension point="org.eclipse.core.runtime.adapters">
<factory adaptableType="org.eclipse.stp.bpmn.sample.bugView.bug.view.IBug"
class="org.eclipse.stp.bpmn.sample.bugDnD.dnd.BugAdapterFactory">
<adapter type="org.eclipse.stp.bpmn.dnd.IDnDHandler"/>
</factory>
</extension>
Then, we create the adapter factory by naming it BugAdapterFactory and placing it in dnd package under the plugin class.
The contents of the adapter factory should like this:
public class BugAdapterFactory implements IAdapterFactory {
public Object getAdapter(Object adaptableObject, Class adapterType) {
if (adaptableObject instanceof IBug &&
IDnDHandler.class.equals(adapterType)) {
return new BugDnDHandler((IBug) adaptableObject);
}
return null;
}
public Class[] getAdapterList() {
return new Class[] {IDnDHandler.class};
}
}
We create a BugDnDHandler
class that will extend AbstractViewDnDHandler
.
In its constructor this class takes a IBug
object.