drawio-offline
Version:
diagrams.net desktop
757 lines (634 loc) • 79.2 kB
JavaScript
(function()
{
// Adds BPMN 2.0 shapes
Sidebar.prototype.addBpmn2Palette = function()
{
var gn = 'mxgraph.bpmn2';
var r = 400;
var sb = this;
this.setCurrentSearchEntryLibrary('bpmn2', 'bpmn2General');
this.addBPMN2GeneralPalette(gn, r, sb);
this.setCurrentSearchEntryLibrary('bpmn2', 'bpmn2Tasks');
this.addBPMN2TasksPalette(gn, r, sb);
this.setCurrentSearchEntryLibrary('bpmn2', 'bpmn2Choreographies');
this.addBPMN2ChoreographiesPalette(gn, r, sb);
this.setCurrentSearchEntryLibrary('bpmn2', 'bpmn2Events');
this.addBPMN2EventsPalette(gn, r, sb);
this.setCurrentSearchEntryLibrary('bpmn2', 'bpmn2Gateways');
this.addBPMN2GatewaysPalette(gn, r, sb);
this.setCurrentSearchEntryLibrary();
};
Sidebar.prototype.addBPMN2GeneralPalette = function(gn, r, sb)
{
var dt = 'bpmn business process model notation ';
var w = 50;
var h = 50;
var ew = 160;
var eh = 0;
var s1 = 'shape=mxgraph.bpmn.data;labelPosition=center;verticalLabelPosition=bottom;align=center;verticalAlign=top;whiteSpace=wrap;size=15;html=1;';
var s2 = 'swimlane;html=1;startSize=20;fontStyle=0;collapsible=0;';
var s3 = 'shape=mxgraph.bpmn.conversation;perimeter=hexagonPerimeter2;whiteSpace=wrap;html=1;aspect=fixed;bpmnConversationType=';
var s4 = 'edgeStyle=elbowEdgeStyle;fontSize=12;html=1;endArrow=blockThin;endFill=1;';
var s5 = 'edgeStyle=elbowEdgeStyle;fontSize=12;html=1;endFill=0;startFill=0;endSize=6;startSize=6;dashed=1;dashPattern=1 4;endArrow=';
var fns =
[
this.createVertexTemplateEntry(s1, 40, 60, '', 'Data Object', null, null, dt + 'data object'),
this.createVertexTemplateEntry(s1 + 'bpmnTransferType=none;isCollection=1;', 40, 60, '', 'Data Object Collection', null, null, dt + 'data object collection'),
this.createVertexTemplateEntry(s1 + 'bpmnTransferType=input;', 40, 60, '', 'Data Input', null, null, dt + 'data input'),
this.createVertexTemplateEntry(s1 + 'bpmnTransferType=input;isCollection=1;', 40, 60, '', 'Data Input Collection', null, null, dt + 'data input collection'),
this.createVertexTemplateEntry(s1 + 'bpmnTransferType=output;', 40, 60, '', 'Data Output', null, null, dt + 'data output'),
this.createVertexTemplateEntry(s1 + 'bpmnTransferType=output;isCollection=1;', 40, 60, '', 'Data Output Collection', null, null, dt + 'data output collection'),
this.createVertexTemplateEntry('shape=datastore;whiteSpace=wrap;html=1;labelPosition=center;verticalLabelPosition=bottom;align=center;verticalAlign=top;', 100, 100, '', 'Data Store', null, null, dt + 'data store'),
this.createVertexTemplateEntry('points=[[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0.25,0],[1,0.5,0],[1,0.75,0],[0.75,1,0],[0.5,1,0],[0.25,1,0],[0,0.75,0],[0,0.5,0],[0,0.25,0]];rounded=1;dashed=1;dashPattern=5 2 1 2;labelPosition=center;verticalLabelPosition=top;align=right;verticalAlign=bottom;fontSize=8;', 140, 80, '', 'Data Object', null, null, dt + 'data object'),
this.createVertexTemplateEntry('text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;', 80, 30, 'Text', 'Text Annotation', null, null, dt + 'text annotation label'),
this.createVertexTemplateEntry(s2 + 'horizontal=0;swimlaneLine=0;fillColor=none;', 440, 100, '', 'Horizontal Lane', null, null, dt + 'horizontal lane'),
this.createVertexTemplateEntry(s2 + 'horizontal=1;swimlaneLine=0;fillColor=none;', 440, 100, '', 'Vertical Lane', null, null, dt + 'vertical lane'),
this.createVertexTemplateEntry(s2 + 'horizontal=0;swimlaneLine=1;swimlaneFillColor=#ffffff;strokeWidth=2;', 440, 100, '', 'Horizontal Lane', null, null, dt + 'horizontal lane'),
this.createVertexTemplateEntry('shape=mxgraph.bpmn.swimlane;html=1;startSize=20;horizontal=0;swimlaneLine=1;collapsible=0;fontStyle=0;swimlaneFillColor=#ffffff;strokeWidth=2;isCollection=1;', 440, 100, '', 'Horizontal Lane', null, null, dt + 'horizontal lane'),
this.createVertexTemplateEntry(s2 + 'horizontal=1;swimlaneLine=1;strokeWidth=2;swimlaneFillColor=#ffffff;', 220, 100, '', 'Vertical Lane', null, null, dt + 'vertical lane'),
this.createVertexTemplateEntry('shape=mxgraph.bpmn.swimlane;html=1;startSize=20;horizontal=1;swimlaneLine=1;collapsible=0;fontStyle=0;strokeWidth=2;swimlaneFillColor=#ffffff;isCollection=1;', 220, 100, '', 'Vertical Lane', null, null, dt + 'vertical lane'),
this.createVertexTemplateEntry(s3 + 'conv;', 70, 60, '', 'Conversation', null, null, dt + 'conversation'),
this.createVertexTemplateEntry(s3 + 'conv;isLoopSub=1;', 70, 60, '', 'Sub-Conversation', null, null, dt + 'sub conversation'),
this.createVertexTemplateEntry(s3 + 'call;', 70, 60, '', 'Call Conversation', null, null, dt + 'call conversation'),
this.createVertexTemplateEntry(s3 + 'call;isLoopSub=1;', 70, 60, '', 'Call Sub-Conversation', null, null, dt + 'call sub conversation'),
this.createVertexTemplateEntry('html=1;shape=mxgraph.flowchart.annotation_2;align=left;labelPosition=right;', 50, 100, '', 'Annotation', null, null, this.getTagsForStencil('bpmn', 'annotation_1', 'bpmn business process model ').join(' ')),
this.addDataEntry('crossfunctional cross-functional cross functional flowchart swimlane table', 400, 400, 'Cross-Functional Flowchart', '7ZhRb5swEMc/DY+bMCRt97jQpi+tVC2fwINbbMnYyD4C6aefjaHpBrTRlNCoTALJPp9t+P25O5kgTvL6XtOCPaoMRBDfBXGilULfyusEhAiikGdBfBtEUWjvIFqPjJJmNCyoBonHTIj8hB0VJXiL3dyYL+tSpsiVpM55LVSVMqrROxvci9bZMFq4JtKfzrRKGRfZA92rEjtr11tpVT1wCcYOhM5ViTKXry0G7RYb/uwWXDgDw9wCuSW2WTGOsClo6gYri8uvIGhheLN1s4KGtNSG7+AHGL+Os0JdUJm1nUJxiaDvdhZQt/EvJXHTvpTbjAq+lbadgnO1hhYSaIR6FHRjainfg8oB9d66VDxD5j0WoRcjZMC3DP8yUuMN25e5B91so5VuWMa4J+P3FJW2JtLXrOK5oNLJxZTmz/blqXhNp3mO5cpe9smS8OsyWNp5ie2TQ99ezl1joqRBTXmDAajBCgxejprHKBcNK7fvBPIz3hOSRCcQctET8olRA+8JmSopIW2j8GOD6Sji8TDxepT4C9yTE1+OEo/mQ5xcTYn8ahR5PB/k0c2UyK9HC8SbX/mnLBAnqAlD8XK+onDTE+/fw+TiQF9fTin4Nl/O0xYAEs6X9LR5n5Ae6S7xv1lr/yf+4cQ/pN75Ej/pH88/UZyQkRPzR6R+0j9Bz4f0xMm/f8adD+qzZn/bPfw5bMb++LH4Gw=='),
this.addDataEntry('container swimlane pool horizontal', 480, 380, 'Horizontal Pool 1',
'zZRLbsIwEIZP4709TlHXhJYNSEicwCIjbNWJkWNKwumZxA6IlrRUaisWlmb+eX8LM5mXzdyrnV66Ai2TL0zm3rkQrbLJ0VoG3BRMzhgAp8fgdSQq+ijfKY9VuKcAYsG7snuMyso5G8U6tDaJ9cGUVlXkTXUoacuZIHOjjS0WqnX7blYd1OZt8KYea3PE1bCI+CAtVUMq7/o5b46uCmroSn18WFMm+XCdse5GpLq0OPqAzejxvZQun6MrMfiWUg6mCDpmZM8RENdotjqVyUFUdRS259oLSzISztto5Se0i44gcHEn3i9A/IQB3GbQpmi69DskAn4BSTaGBB4Jicj+k8nTGBP5SExg8odMyL38eH3s6kM8AQ=='),
this.addDataEntry('container swimlane pool horizontal', 480, 360, 'Horizontal Pool 2',
'zZTBbsIwDIafJvfU6dDOlI0LSEg8QUQtEi1tUBJGy9PPbcJQWTsxaZs4VLJ//07sT1WYKKpm6eRBrW2JhokXJgpnbYhR1RRoDAOuSyYWDIDTx+B1opr1VX6QDutwTwPEhndpjhiVjbUmij60Jon+pCsja8rmKlQ05SKjcKe0KVeytcfuLh/k7u2SzR16fcbNZZDsRlrLhlTenWedPts6SJMEOseFLTkph6Fj212RbGlwdAGbyeV7KW2+RFthcC1ZTroMKjry5wiIK9R7ldrELInSR2H/2XtlSUHCOY5WfEG76ggCz+7E+w2InzCAcQapIf0fAySzESQZ/AKSfAoJPCKS9mbzf0H0NIVIPDAiyP8QEaXX97CvDZ7LDw=='),
this.createVertexTemplateEntry('swimlane;startSize=20;horizontal=0;', 320, 120, 'Lane', 'Horizontal Swimlane', null, null, 'swimlane lane pool'),
this.addDataEntry('container swimlane pool horizontal', 360, 480, 'Vertical Pool 1',
'xZRBbsIwEEVP4709ThFrQssGJKSewCIjbNXGyDEl4fSdxKa0NJFQVTULSzP/e+T5b2EmS9esgjrqja/QMvnMZBm8j6lyTYnWMuCmYnLJADgdBi8jruhdflQBD/GRAUgD78qeMClb720S69jaLNZn46w6ULfQ0dGWS0HlThtbrVXrT91bdVS7t2u3CFibC26vi4g7aaMaUjmpNBbiKxnUQyfkjTBEbEZT9VKOtELvMIaWrpxNFXW6IWcpOddo9jqPFfMsqjoJ+8/ZGyQqMqdhZvIHs3WHBrh4kNvvIsNw5Da7OdgXAgKGCMz+gEAxRgCmINDcxZ2CyNMYETkhESj+jwi1t1+r9759ah8='),
this.addDataEntry('container swimlane pool vertical', 380, 480, 'Vertical Pool 2',
'xZTPbsIwDMafJvf86dDOlI0LSEg8QUQtEi1pUBJGy9PPbdJ1G1TqhXGoZH/219g/RSGitM3ay5PaugoMEW9ElN65mCLblGAM4VRXRKwI5xQ/wt8nqqyv0pP0UMc5Bp4Mn9KcISk750wSQ2xNFsNFWyNrzJYqWpxyxTA8KG2qjWzduTsrRHn4GLKlh6CvsBsGYX+krWxQpaiizcc9FjDnnaCc11dXR2lyxyjsuyPy3/Lg4CM0k8v3Ut58Dc5C9C22XHQVVeoQrwkQVaCPKtuKQZQhCcdv78gSg4zzPlpxg3bTEeSUzcR7Q2bWyvz+ytmQr8NPAow/ikAxRYA/kQAr/hPByxQC8cxLsHggAkzH56uv/XrdvgA='),
this.createVertexTemplateEntry('swimlane;startSize=20;', 120, 320, 'Lane', 'Vertical Swimlane', null, null, 'swimlane lane pool'),
this.createVertexTemplateEntry('points=[[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0.25,0],[1,0.5,0],[1,0.75,0],[0.75,1,0],[0.5,1,0],[0.25,1,0],[0,0.75,0],[0,0.5,0],[0,0.25,0]];rounded=1;arcSize=10;dashed=1;strokeColor=#000000;fillColor=none;gradientColor=none;dashPattern=8 3 1 3;strokeWidth=2;',
200, 200, '', 'Group', null, null, this.getTagsForStencil('bpmn', 'group', 'bpmn business process model ').join(' ')),
this.createEdgeTemplateEntry(s5 + 'none;startArrow=none;', ew, eh, '', 'Association', null, dt + 'association'),
this.createEdgeTemplateEntry(s5 + 'openThin;startArrow=none;', ew, eh, '', 'Directional / Directed Data Association', null, dt + 'directed data directional association'),
this.createEdgeTemplateEntry(s5 + 'openThin;startArrow=openThin;', ew, eh, '', 'Bi-Directional Association', null, dt + 'bi directional bidirectional association'),
this.createEdgeTemplateEntry(s5 + 'none;startArrow=none;', ew, eh, '', 'Data Association', null, dt + 'data association'),
this.createEdgeTemplateEntry('edgeStyle=elbowEdgeStyle;fontSize=12;html=1;shape=link;', ew, eh, '', 'Conversation Link', null, dt + 'conversation link'),
this.createEdgeTemplateEntry(s4 + '', ew, eh, '', 'Sequence Flow', null, dt + 'sequence flow'),
this.createEdgeTemplateEntry(s4 + 'startArrow=diamondThin;startFill=0;endSize=6;startSize=10;', ew, eh, '', 'Conditional Sequence Flow', null, dt + 'conditional sequence flow'),
this.createEdgeTemplateEntry(s4 + 'startArrow=dash;startFill=0;endSize=6;startSize=6;', ew, eh, '', 'Default Sequence Flow', null, dt + 'default sequence flow'),
this.createEdgeTemplateEntry('dashed=1;dashPattern=8 4;endArrow=blockThin;endFill=1;startArrow=oval;startFill=0;endSize=6;startSize=4;', ew, eh, '', 'Message Flow', null, dt + 'message flow'),
this.addEntry('edge shape symbol message mail email initiating message flow with decorator', mxUtils.bind(this, function()
{
var edge = new mxCell('', new mxGeometry(0, 0, 0, 0), 'endArrow=blockThin;html=1;labelPosition=left;verticalLabelPosition=middle;align=right;verticalAlign=middle;dashed=1;dashPattern=8 4;endFill=0;startArrow=oval;startFill=0;endSize=6;startSize=4;');
edge.geometry.setTerminalPoint(new mxPoint(0, 0), true);
edge.geometry.setTerminalPoint(new mxPoint(ew, eh), false);
edge.geometry.relative = true;
edge.edge = true;
var cell = new mxCell('', new mxGeometry(0, 0, 24, 16), 'shape=message;html=1;outlineConnect=0;labelPosition=left;verticalLabelPosition=middle;align=right;verticalAlign=middle;spacingRight=5;labelBackgroundColor=#ffffff;');
cell.geometry.relative = true;
cell.vertex = true;
cell.geometry.offset = new mxPoint(8, -8);
edge.insert(cell);
return this.createEdgeTemplateFromCells([edge], ew, eh, 'Initiating Message Flow with Decorator');
})),
this.addEntry('edge shape symbol message mail email non initiating message flow with decorator', mxUtils.bind(this, function()
{
var edge = new mxCell('', new mxGeometry(0, 0, 0, 0), 'endArrow=blockThin;html=1;labelPosition=left;verticalLabelPosition=middle;align=right;verticalAlign=middle;dashed=1;dashPattern=8 4;endFill=0;startArrow=oval;startFill=0;endSize=6;startSize=4;');
edge.geometry.setTerminalPoint(new mxPoint(0, 0), true);
edge.geometry.setTerminalPoint(new mxPoint(ew, eh), false);
edge.geometry.relative = true;
edge.edge = true;
var cell = new mxCell('', new mxGeometry(0, 0, 24, 16), 'shape=message;html=1;outlineConnect=0;labelPosition=left;verticalLabelPosition=middle;align=right;verticalAlign=middle;spacingRight=5;labelBackgroundColor=#ffffff;fillColor=#C0C0C0;');
cell.geometry.relative = true;
cell.vertex = true;
cell.geometry.offset = new mxPoint(8, -8);
edge.insert(cell);
return this.createEdgeTemplateFromCells([edge], ew, eh, 'Non-Initiating Message Flow with Decorator');
}))
];
this.addPalette('bpmn2General', 'BPMN 2.0 \ General', false, mxUtils.bind(this, function(content)
{
for (var i = 0; i < fns.length; i++)
{
content.appendChild(fns[i](content));
}
}));
};
Sidebar.prototype.addBPMN2TasksPalette = function(gn, r, sb)
{
var dt = 'bpmn business process model notation task ';
var pts = 'points=[[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0.25,0],[1,0.5,0],[1,0.75,0],[0.75,1,0],[0.5,1,0],[0.25,1,0],[0,0.75,0],[0,0.5,0],[0,0.25,0]];';
var s1 = pts + 'shape=mxgraph.bpmn.task;whiteSpace=wrap;rectStyle=rounded;size=10;taskMarker=abstract;';
var s2 = pts + 'shape=mxgraph.bpmn.task;whiteSpace=wrap;rectStyle=rounded;size=10;taskMarker=';
var s3 = pts + 'shape=mxgraph.bpmn.task;whiteSpace=wrap;rectStyle=rounded;size=10;taskMarker=abstract;bpmnShapeType=subprocess;isLoopSub=1;outline=';
var s4 = pts + 'shape=mxgraph.bpmn.task;whiteSpace=wrap;rectStyle=rounded;size=10;bpmnShapeType=call;';
var w = 50;
var h = 50;
var fns =
[
this.createVertexTemplateEntry(s1 + '', 120, 80, '', 'Generic Task', null, null, dt + 'generic'),
this.createVertexTemplateEntry(s1 + 'isLoopStandard=1;', 120, 80, '', 'Standard Loop', null, null, dt + 'standard loop'),
this.createVertexTemplateEntry(s1 + 'isLoopStandard=1;isLoopSub=1;', 120, 80, '', 'Standard Loop', null, null, dt + 'standard loop'),
this.createVertexTemplateEntry(s1 + 'isLoopMultiParallel=1;', 120, 80, '', 'Multi-Instance, Parallel', null, null, dt + 'multi instance parallel'),
this.createVertexTemplateEntry(s1 + 'isLoopSub=1;isLoopMultiParallel=1;', 120, 80, '', 'Multi-Instance, Parallel', null, null, dt + 'multi instance parallel'),
this.createVertexTemplateEntry(s1 + 'isLoopMultiSeq=1;', 120, 80, '', 'Multi-Instance, Sequential', null, null, dt + 'multi instance sequential'),
this.createVertexTemplateEntry(s1 + 'isLoopSub=1;isLoopMultiSeq=1;', 120, 80, '', 'Multi-Instance, Sequential', null, null, dt + 'multi instance sequential'),
this.createVertexTemplateEntry(s1 + 'isLoopComp=1;', 120, 80, '', 'Compensation', null, null, dt + 'compensation'),
this.createVertexTemplateEntry(s1 + 'isLoopSub=1;isLoopComp=1;', 120, 80, '', 'Compensation', null, null, dt + 'compensation'),
this.createVertexTemplateEntry(s1 + 'isLoopComp=1;isLoopStandard=1;', 120, 80, '', 'Loop and Compensation', null, null, dt + 'loop compensation'),
this.createVertexTemplateEntry(s1 + 'isLoopComp=1;isLoopStandard=1;isLoopSub=1;', 120, 80, '', 'Loop and Compensation', null, null, dt + 'loop compensation'),
this.createVertexTemplateEntry(s1 + 'isAdHoc=1;isLoopSub=1;', 120, 80, '', 'Ad Hoc, Collapsed', null, null, dt + 'ad hoc collapsed'),
this.createVertexTemplateEntry(s1 + 'isAdHoc=1;', 120, 80, '', 'Ad Hoc, Expanded', null, null, dt + 'ad hoc expanded'),
this.createVertexTemplateEntry(s2 + 'service;', 120, 80, '', 'Service', null, null, dt + 'service'),
this.createVertexTemplateEntry(s2 + 'send;', 120, 80, '', 'Send', null, null, dt + 'send'),
this.createVertexTemplateEntry(s2 + 'receive;', 120, 80, '', 'Receive', null, null, dt + 'receive'),
this.createVertexTemplateEntry(s2 + 'user;', 120, 80, '', 'User', null, null, dt + 'user'),
this.createVertexTemplateEntry(s2 + 'manual;', 120, 80, '', 'Manual', null, null, dt + 'manual'),
this.createVertexTemplateEntry(s2 + 'businessRule;', 120, 80, '', 'Business Rule', null, null, dt + 'business rule'),
this.createVertexTemplateEntry(s2 + 'script;', 120, 80, '', 'Script', null, null, dt + 'script'),
this.createVertexTemplateEntry(s1 + 'isLoopSub=1;', 120, 80, '', 'Sub-Process, Collapsed', null, null, dt + 'sub process subprocess collapsed'),
this.createVertexTemplateEntry(s2 + 'abstract;bpmnShapeType=transaction;isLoopSub=1;', 120, 80, '', 'Transaction, Collapsed', null, null, dt + 'transaction collapsed'),
this.createVertexTemplateEntry(s2 + 'abstract;bpmnShapeType=transaction;', 120, 80, '', 'Transaction, Expanded', null, null, dt + 'transaction expanded'),
this.createVertexTemplateEntry(s3 + 'eventNonint;symbol=message;', 120, 80, '', 'Message-Event Sub-Process, Non-interrupting, Collapsed', null, null, dt + 'non interrupting message event sub process collapsed'),
this.createVertexTemplateEntry(s3 + 'eventInt;symbol=message;', 120, 80, '', 'Message-Event Sub-Process, Interrupting, Collapsed', null, null, dt + 'interrupting message event sub process collapsed'),
this.createVertexTemplateEntry(s3 + 'eventNonint;symbol=timer;', 120, 80, '', 'Timer-Event Sub-Process, Non-interrupting, Collapsed', null, null, dt + 'non interrupting timer event sub process collapsed'),
this.createVertexTemplateEntry(s3 + 'eventInt;symbol=timer;', 120, 80, '', 'Timer-Event Sub-Process, Interrupting, Collapsed', null, null, dt + 'interrupting timer event sub process collapsed'),
this.createVertexTemplateEntry(s3 + 'eventNonint;symbol=conditional;', 120, 80, '', 'Conditional-Event Sub-Process, Non-interrupting, Collapsed', null, null, dt + 'non interrupting conditional event sub process collapsed'),
this.createVertexTemplateEntry(s3 + 'eventInt;symbol=conditional;', 120, 80, '', 'Conditional-Event Sub-Process, Interrupting, Collapsed', null, null, dt + 'interrupting conditional event sub process collapsed'),
this.createVertexTemplateEntry(s3 + 'eventNonint;symbol=signal;', 120, 80, '', 'Signal-Event Sub-Process, Non-interrupting, Collapsed', null, null, dt + 'non interrupting signal event sub process collapsed'),
this.createVertexTemplateEntry(s3 + 'eventInt;symbol=signal;', 120, 80, '', 'Signal-Event Sub-Process, Interrupting, Collapsed', null, null, dt + 'interrupting signal event sub process collapsed'),
this.createVertexTemplateEntry(s3 + 'eventNonint;symbol=multiple;', 120, 80, '', 'Multiple-Event Sub-Process, Non-interrupting, Collapsed', null, null, dt + 'non interrupting multiple event sub process collapsed'),
this.createVertexTemplateEntry(s3 + 'eventInt;symbol=multiple;', 120, 80, '', 'Multiple-Event Sub-Process, Interrupting, Collapsed', null, null, dt + 'interrupting multiple event sub process collapsed'),
this.createVertexTemplateEntry(s3 + 'eventNonint;symbol=parallelMultiple;', 120, 80, '', 'Parallel Multiple Event Sub-Process, Non-interrupting, Collapsed', null, null, dt + 'non interrupting parallel multiple event sub process collapsed'),
this.createVertexTemplateEntry(s3 + 'eventInt;symbol=parallelMultiple;', 120, 80, '', 'Parallel Multiple Event Sub-Process, Interrupting , Collapsed', null, null, dt + 'interrupting parallel multiple event sub process collapsed'),
this.createVertexTemplateEntry(s3 + 'eventNonint;symbol=escalation;', 120, 80, '', 'Escalation-Event Sub-Process, Non-interrupting, Collapsed', null, null, dt + 'non interrupting escalation event sub process collapsed'),
this.createVertexTemplateEntry(s3 + 'eventInt;symbol=escalation;', 120, 80, '', 'Escalation-Event Sub-Process, Interrupting, Collapsed', null, null, dt + 'interrupting escalation event sub process collapsed'),
this.createVertexTemplateEntry(s3 + 'eventInt;symbol=error;', 120, 80, '', 'Error-Event Sub-Process, Interrupting, Collapsed', null, null, dt + 'interrupting error event sub process collapsed'),
this.createVertexTemplateEntry(s3 + 'eventInt;symbol=compensation;', 120, 80, '', 'Compensation-Event Sub-Process, Interrupting, Collapsed', null, null, dt + 'interrupting compensation event sub process collapsed'),
this.createVertexTemplateEntry('points=[[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0.25,0],[1,0.5,0],[1,0.75,0],[0.75,1,0],[0.5,1,0],[0.25,1,0],[0,0.75,0],[0,0.5,0],[0,0.25,0]];shape=mxgraph.bpmn.task;arcSize=10;taskMarker=abstract;outline=none;symbol=general;bpmnShapeType=subprocess;isLoopSub=0;verticalAlign=top;align=left;spacingLeft=5;', 180, 100, '', 'Event Sub-Process, Expanded', null, null, dt + 'event sub process expanded'),
this.createVertexTemplateEntry(s4, 120, 80, '', 'Call Activity', null, null, dt + 'call activity'),
this.createVertexTemplateEntry(s4 + 'taskMarker=user;', 120, 80, '', 'User Call Activity', null, null, dt + 'user call activity'),
this.createVertexTemplateEntry(s4 + 'taskMarker=manual;', 120, 80, '', 'Manual Call Activity', null, null, dt + 'manual call activity'),
this.createVertexTemplateEntry(s4 + 'taskMarker=businessRule;', 120, 80, '', 'Business Rule Call Activity', null, null, dt + 'business rule call activity'),
this.createVertexTemplateEntry(s4 + 'taskMarker=script;', 120, 80, '', 'Script Call Activity', null, null, dt + 'script call activity'),
this.createVertexTemplateEntry(s4 + 'isLoopSub=1;', 120, 80, '', 'Call Activity, Collapsed', null, null, dt + 'call activity collapsed'),
this.createVertexTemplateEntry(s4 + 'verticalAlign=top;align=left;spacingLeft=5;', 180, 100, '', 'Call Activity, Expanded', null, null, dt + 'call activity expanded')
];
this.addPalette('bpmn2Tasks', 'BPMN 2.0 \ Tasks', false, mxUtils.bind(this, function(content)
{
for (var i = 0; i < fns.length; i++)
{
content.appendChild(fns[i](content));
}
}));
};
Sidebar.prototype.addBPMN2ChoreographiesPalette = function(gn, r, sb)
{
var dt = 'bpmn business process model notation choreography ';
var fns =
[
this.addEntry(dt + 'choreography task', function()
{
var bg = new mxCell('', new mxGeometry(0, 0, 120, 100),
'rounded=1;whiteSpace=wrap;html=1;container=1;collapsible=0;absoluteArcSize=1;arcSize=20;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;');
bg.vertex = true;
var cell1 = new mxCell('',
new mxGeometry(0, 0, 120, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;part=1;');
cell1.vertex = true;
bg.insert(cell1);
var cell2 = new mxCell('',
new mxGeometry(0, 0, 120, 60),
'shape=mxgraph.bpmn.task;part=1;taskMarker=abstract;connectable=0;whiteSpace=wrap;');
cell2.vertex = true;
bg.insert(cell2);
var cell3 = new mxCell('',
new mxGeometry(0, 1, 20, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;topRightStyle=square;topLeftStyle=square;fillColor=#C0C0C0;part=1;');
cell3.vertex = true;
cell3.geometry.relative = false;
bg.insert(cell3);
return sb.createVertexTemplateFromCells([bg], bg.geometry.width, bg.geometry.height, 'Choreography Task');
}),
this.addEntry(dt + 'choreography task loop', function()
{
var bg = new mxCell('', new mxGeometry(0, 0, 120, 100),
'rounded=1;whiteSpace=wrap;html=1;container=1;collapsible=0;absoluteArcSize=1;arcSize=20;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;');
bg.vertex = true;
var cell1 = new mxCell('',
new mxGeometry(0, 0, 120, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;part=1;');
cell1.vertex = true;
bg.insert(cell1);
var cell2 = new mxCell('',
new mxGeometry(0, 0, 120, 60),
'shape=mxgraph.bpmn.task;arcSize=0;taskMarker=abstract;part=1;isLoopStandard=1;connectable=0;whiteSpace=wrap;');
cell2.vertex = true;
bg.insert(cell2);
var cell3 = new mxCell('',
new mxGeometry(0, 1, 20, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;topRightStyle=square;topLeftStyle=square;fillColor=#C0C0C0;part=1;');
cell3.vertex = true;
cell3.geometry.relative = false;
bg.insert(cell3);
return sb.createVertexTemplateFromCells([bg], bg.geometry.width, bg.geometry.height, 'Choreography Task, Loop');
}),
this.addEntry(dt + 'choreography task sequential multi instance', function()
{
var bg = new mxCell('', new mxGeometry(0, 0, 120, 100),
'rounded=1;whiteSpace=wrap;html=1;container=1;collapsible=0;absoluteArcSize=1;arcSize=20;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;');
bg.vertex = true;
var cell1 = new mxCell('',
new mxGeometry(0, 0, 120, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;part=1;');
cell1.vertex = true;
bg.insert(cell1);
var cell2 = new mxCell('',
new mxGeometry(0, 0, 120, 60),
'shape=mxgraph.bpmn.task;arcSize=0;taskMarker=abstract;part=1;isLoopMultiSeq=1;connectable=0;whiteSpace=wrap;');
cell2.vertex = true;
bg.insert(cell2);
var cell3 = new mxCell('',
new mxGeometry(0, 1, 20, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;topRightStyle=square;topLeftStyle=square;fillColor=#C0C0C0;part=1;');
cell3.vertex = true;
cell3.geometry.relative = false;
bg.insert(cell3);
return sb.createVertexTemplateFromCells([bg], bg.geometry.width, bg.geometry.height, 'Choreography Task, Sequential Multi Instance');
}),
this.addEntry(dt + 'choreography task parallel multi instance', function()
{
var bg = new mxCell('', new mxGeometry(0, 0, 120, 100),
'rounded=1;whiteSpace=wrap;html=1;container=1;collapsible=0;absoluteArcSize=1;arcSize=20;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;');
bg.vertex = true;
var cell1 = new mxCell('',
new mxGeometry(0, 0, 120, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;part=1;');
cell1.vertex = true;
bg.insert(cell1);
var cell2 = new mxCell('',
new mxGeometry(0, 0, 120, 60),
'shape=mxgraph.bpmn.task;arcSize=0;taskMarker=abstract;part=1;isLoopMultiParallel=1;connectable=0;whiteSpace=wrap;');
cell2.vertex = true;
bg.insert(cell2);
var cell3 = new mxCell('',
new mxGeometry(0, 1, 20, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;topRightStyle=square;topLeftStyle=square;fillColor=#C0C0C0;part=1;');
cell3.vertex = true;
cell3.geometry.relative = false;
bg.insert(cell3);
return sb.createVertexTemplateFromCells([bg], bg.geometry.width, bg.geometry.height, 'Choreography Task, Parallel Multi Instance');
}),
this.addEntry(dt + 'sub choreography collapsed', function()
{
var bg = new mxCell('', new mxGeometry(0, 0, 120, 100),
'rounded=1;whiteSpace=wrap;html=1;container=1;collapsible=0;absoluteArcSize=1;arcSize=20;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;');
bg.vertex = true;
var cell1 = new mxCell('',
new mxGeometry(0, 0, 120, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;part=1;');
cell1.vertex = true;
bg.insert(cell1);
var cell2 = new mxCell('',
new mxGeometry(0, 0, 120, 60),
'shape=mxgraph.bpmn.task;arcSize=0;taskMarker=abstract;part=1;isLoopSub=1;connectable=0;whiteSpace=wrap;');
cell2.vertex = true;
bg.insert(cell2);
var cell3 = new mxCell('',
new mxGeometry(0, 1, 20, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;topRightStyle=square;topLeftStyle=square;fillColor=#C0C0C0;part=1;');
cell3.vertex = true;
cell3.geometry.relative = false;
bg.insert(cell3);
return sb.createVertexTemplateFromCells([bg], bg.geometry.width, bg.geometry.height, 'Sub-Choreography, Collapsed');
}),
this.addEntry(dt + 'sub choreography loop collapsed', function()
{
var bg = new mxCell('', new mxGeometry(0, 0, 120, 100),
'rounded=1;whiteSpace=wrap;html=1;container=1;collapsible=0;absoluteArcSize=1;arcSize=20;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;');
bg.vertex = true;
var cell1 = new mxCell('',
new mxGeometry(0, 0, 120, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;part=1;');
cell1.vertex = true;
bg.insert(cell1);
var cell2 = new mxCell('',
new mxGeometry(0, 0, 120, 60),
'shape=mxgraph.bpmn.task;arcSize=0;taskMarker=abstract;part=1;isLoopSub=1;isLoopStandard=1;connectable=0;whiteSpace=wrap;');
cell2.vertex = true;
bg.insert(cell2);
var cell3 = new mxCell('',
new mxGeometry(0, 1, 20, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;topRightStyle=square;topLeftStyle=square;fillColor=#C0C0C0;part=1;');
cell3.vertex = true;
cell3.geometry.relative = false;
bg.insert(cell3);
return sb.createVertexTemplateFromCells([bg], bg.geometry.width, bg.geometry.height, 'Sub-Choreography, Loop, Collapsed');
}),
this.addEntry(dt + 'sub choreography sequential multi instance collapsed', function()
{
var bg = new mxCell('', new mxGeometry(0, 0, 120, 100),
'rounded=1;whiteSpace=wrap;html=1;container=1;collapsible=0;absoluteArcSize=1;arcSize=20;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;');
bg.vertex = true;
var cell1 = new mxCell('',
new mxGeometry(0, 0, 120, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;part=1;');
cell1.vertex = true;
bg.insert(cell1);
var cell2 = new mxCell('',
new mxGeometry(0, 0, 120, 60),
'shape=mxgraph.bpmn.task;arcSize=0;taskMarker=abstract;part=1;isLoopSub=1;isLoopMultiSeq=1;connectable=0;whiteSpace=wrap;');
cell2.vertex = true;
bg.insert(cell2);
var cell3 = new mxCell('',
new mxGeometry(0, 1, 20, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;topRightStyle=square;topLeftStyle=square;fillColor=#C0C0C0;part=1;');
cell3.vertex = true;
cell3.geometry.relative = false;
bg.insert(cell3);
return sb.createVertexTemplateFromCells([bg], bg.geometry.width, bg.geometry.height, 'Sub-Choreography, Sequential Multi Instance, Collapsed');
}),
this.addEntry(dt + 'sub choreography parallel multi instance collapsed', function()
{
var bg = new mxCell('', new mxGeometry(0, 0, 120, 100),
'rounded=1;whiteSpace=wrap;html=1;container=1;collapsible=0;absoluteArcSize=1;arcSize=20;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;');
bg.vertex = true;
var cell1 = new mxCell('',
new mxGeometry(0, 0, 120, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;part=1;');
cell1.vertex = true;
bg.insert(cell1);
var cell2 = new mxCell('',
new mxGeometry(0, 0, 120, 60),
'shape=mxgraph.bpmn.task;arcSize=0;taskMarker=abstract;part=1;isLoopSub=1;isLoopMultiParallel=1;connectable=0;whiteSpace=wrap;');
cell2.vertex = true;
bg.insert(cell2);
var cell3 = new mxCell('',
new mxGeometry(0, 1, 20, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;topRightStyle=square;topLeftStyle=square;fillColor=#C0C0C0;part=1;');
cell3.vertex = true;
cell3.geometry.relative = false;
bg.insert(cell3);
return sb.createVertexTemplateFromCells([bg], bg.geometry.width, bg.geometry.height, 'Sub-Choreography, Parallel Multi Instance, Collapsed');
}),
this.addEntry(dt + 'sub choreography expanded', function()
{
var bg = new mxCell('', new mxGeometry(0, 0, 400, 200),
'rounded=1;whiteSpace=wrap;html=1;container=1;collapsible=0;absoluteArcSize=1;arcSize=20;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;');
bg.vertex = true;
var cell1 = new mxCell('',
new mxGeometry(0, 0, 400, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;part=1;');
cell1.vertex = true;
bg.insert(cell1);
var cell2 = new mxCell('',
new mxGeometry(0, 0, 400, 160),
'shape=mxgraph.bpmn.task;arcSize=0;part=1;taskMarker=abstract;verticalAlign=top;align=left;spacingLeft=5;connectable=0;whiteSpace=wrap;');
cell2.vertex = true;
bg.insert(cell2);
var cell3 = new mxCell('',
new mxGeometry(0, 1, 400, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;topRightStyle=square;topLeftStyle=square;fillColor=#C0C0C0;part=1;');
cell3.vertex = true;
cell3.geometry.relative = false;
bg.insert(cell3);
return sb.createVertexTemplateFromCells([bg], bg.geometry.width, bg.geometry.height, 'Sub-Choreography, Expanded');
}),
this.addEntry(dt + 'call choreography activity calling global task', function()
{
var bg = new mxCell('', new mxGeometry(0, 0, 120, 100),
'rounded=1;whiteSpace=wrap;html=1;container=1;collapsible=0;absoluteArcSize=1;arcSize=20;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;strokeWidth=8;');
bg.vertex = true;
var cell1 = new mxCell('',
new mxGeometry(0, 0, 120, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;part=1;');
cell1.vertex = true;
bg.insert(cell1);
var cell2 = new mxCell('',
new mxGeometry(0, 0, 120, 60),
'shape=mxgraph.bpmn.task;arcSize=0;part=1;taskMarker=abstract;connectable=0;whiteSpace=wrap;');
cell2.vertex = true;
bg.insert(cell2);
var cell3 = new mxCell('',
new mxGeometry(0, 1, 20, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;topRightStyle=square;topLeftStyle=square;fillColor=#C0C0C0;part=1;');
cell3.vertex = true;
cell3.geometry.relative = false;
bg.insert(cell3);
return sb.createVertexTemplateFromCells([bg], bg.geometry.width, bg.geometry.height, 'Call Choreography calling Global');
}),
this.addEntry(dt + 'call choreography activity calling global task loop', function()
{
var bg = new mxCell('', new mxGeometry(0, 0, 120, 100),
'rounded=1;whiteSpace=wrap;html=1;container=1;collapsible=0;absoluteArcSize=1;arcSize=20;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;strokeWidth=8;');
bg.vertex = true;
var cell1 = new mxCell('',
new mxGeometry(0, 0, 120, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;part=1;');
cell1.vertex = true;
bg.insert(cell1);
var cell2 = new mxCell('',
new mxGeometry(0, 0, 120, 60),
'shape=mxgraph.bpmn.task;arcSize=0;part=1;taskMarker=abstract;isLoopStandard=1;connectable=0;whiteSpace=wrap;');
cell2.vertex = true;
bg.insert(cell2);
var cell3 = new mxCell('',
new mxGeometry(0, 1, 20, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;topRightStyle=square;topLeftStyle=square;fillColor=#C0C0C0;part=1;');
cell3.vertex = true;
cell3.geometry.relative = false;
bg.insert(cell3);
return sb.createVertexTemplateFromCells([bg], bg.geometry.width, bg.geometry.height, 'Call Choreography calling Global, Loop');
}),
this.addEntry(dt + 'call choreography activity calling global task sequential multi instance', function()
{
var bg = new mxCell('', new mxGeometry(0, 0, 120, 100),
'rounded=1;whiteSpace=wrap;html=1;container=1;collapsible=0;absoluteArcSize=1;arcSize=20;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;strokeWidth=8;');
bg.vertex = true;
var cell1 = new mxCell('',
new mxGeometry(0, 0, 120, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;part=1;');
cell1.vertex = true;
bg.insert(cell1);
var cell2 = new mxCell('',
new mxGeometry(0, 0, 120, 60),
'shape=mxgraph.bpmn.task;arcSize=0;part=1;taskMarker=abstract;isLoopMultiSeq=1;connectable=0;whiteSpace=wrap;');
cell2.vertex = true;
bg.insert(cell2);
var cell3 = new mxCell('',
new mxGeometry(0, 1, 20, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;topRightStyle=square;topLeftStyle=square;fillColor=#C0C0C0;part=1;');
cell3.vertex = true;
cell3.geometry.relative = false;
bg.insert(cell3);
return sb.createVertexTemplateFromCells([bg], bg.geometry.width, bg.geometry.height, 'Call Choreography calling Global, Sequential Multi Instance');
}),
this.addEntry(dt + 'call choreography activity calling global task parallel multi instance', function()
{
var bg = new mxCell('', new mxGeometry(0, 0, 120, 100),
'rounded=1;whiteSpace=wrap;html=1;container=1;collapsible=0;absoluteArcSize=1;arcSize=20;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;strokeWidth=8;');
bg.vertex = true;
var cell1 = new mxCell('',
new mxGeometry(0, 0, 120, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;part=1;');
cell1.vertex = true;
bg.insert(cell1);
var cell2 = new mxCell('',
new mxGeometry(0, 0, 120, 60),
'shape=mxgraph.bpmn.task;arcSize=0;part=1;taskMarker=abstract;isLoopMultiParallel=1;connectable=0;whiteSpace=wrap;');
cell2.vertex = true;
bg.insert(cell2);
var cell3 = new mxCell('',
new mxGeometry(0, 1, 20, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;topRightStyle=square;topLeftStyle=square;fillColor=#C0C0C0;part=1;');
cell3.vertex = true;
cell3.geometry.relative = false;
bg.insert(cell3);
return sb.createVertexTemplateFromCells([bg], bg.geometry.width, bg.geometry.height, 'Call Choreography calling Global, Parallel Multi Instance');
}),
this.addEntry(dt + 'call choreography activity calling', function()
{
var bg = new mxCell('', new mxGeometry(0, 0, 120, 100),
'rounded=1;whiteSpace=wrap;html=1;container=1;collapsible=0;absoluteArcSize=1;arcSize=20;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;strokeWidth=8;');
bg.vertex = true;
var cell1 = new mxCell('',
new mxGeometry(0, 0, 120, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;part=1;');
cell1.vertex = true;
bg.insert(cell1);
var cell2 = new mxCell('',
new mxGeometry(0, 0, 120, 60),
'shape=mxgraph.bpmn.task;arcSize=0;part=1;taskMarker=abstract;isLoopSub=1;connectable=0;whiteSpace=wrap;');
cell2.vertex = true;
bg.insert(cell2);
var cell3 = new mxCell('',
new mxGeometry(0, 1, 20, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;topRightStyle=square;topLeftStyle=square;fillColor=#C0C0C0;part=1;');
cell3.vertex = true;
cell3.geometry.relative = false;
bg.insert(cell3);
return sb.createVertexTemplateFromCells([bg], bg.geometry.width, bg.geometry.height, 'Call Choreography calling a Choreography');
}),
this.addEntry(dt + 'call choreography activity calling loop', function()
{
var bg = new mxCell('', new mxGeometry(0, 0, 120, 100),
'rounded=1;whiteSpace=wrap;html=1;container=1;collapsible=0;absoluteArcSize=1;arcSize=20;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;strokeWidth=8;');
bg.vertex = true;
var cell1 = new mxCell('',
new mxGeometry(0, 0, 120, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;part=1;');
cell1.vertex = true;
bg.insert(cell1);
var cell2 = new mxCell('',
new mxGeometry(0, 0, 120, 60),
'shape=mxgraph.bpmn.task;arcSize=0;part=1;taskMarker=abstract;isLoopSub=1;isLoopStandard=1;connectable=0;whiteSpace=wrap;');
cell2.vertex = true;
bg.insert(cell2);
var cell3 = new mxCell('',
new mxGeometry(0, 1, 20, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;topRightStyle=square;topLeftStyle=square;fillColor=#C0C0C0;part=1;');
cell3.vertex = true;
cell3.geometry.relative = false;
bg.insert(cell3);
return sb.createVertexTemplateFromCells([bg], bg.geometry.width, bg.geometry.height, 'Call Choreography calling a Choreography, Loop');
}),
this.addEntry(dt + 'call choreography activity calling sequential multi instance', function()
{
var bg = new mxCell('', new mxGeometry(0, 0, 120, 100),
'rounded=1;whiteSpace=wrap;html=1;container=1;collapsible=0;absoluteArcSize=1;arcSize=20;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;strokeWidth=8;');
bg.vertex = true;
var cell1 = new mxCell('',
new mxGeometry(0, 0, 120, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;part=1;');
cell1.vertex = true;
bg.insert(cell1);
var cell2 = new mxCell('',
new mxGeometry(0, 0, 120, 60),
'shape=mxgraph.bpmn.task;arcSize=0;part=1;taskMarker=abstract;isLoopSub=1;isLoopMultiSeq=1;connectable=0;whiteSpace=wrap;');
cell2.vertex = true;
bg.insert(cell2);
var cell3 = new mxCell('',
new mxGeometry(0, 1, 20, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;topRightStyle=square;topLeftStyle=square;fillColor=#C0C0C0;part=1;');
cell3.vertex = true;
cell3.geometry.relative = false;
bg.insert(cell3);
return sb.createVertexTemplateFromCells([bg], bg.geometry.width, bg.geometry.height, 'Call Choreography calling a Choreography, Sequential Multi Instance');
}),
this.addEntry(dt + 'call choreography activity calling parallel multi instance', function()
{
var bg = new mxCell('', new mxGeometry(0, 0, 120, 100),
'rounded=1;whiteSpace=wrap;html=1;container=1;collapsible=0;absoluteArcSize=1;arcSize=20;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;strokeWidth=8;');
bg.vertex = true;
var cell1 = new mxCell('',
new mxGeometry(0, 0, 120, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;part=1;');
cell1.vertex = true;
bg.insert(cell1);
var cell2 = new mxCell('',
new mxGeometry(0, 0, 120, 60),
'shape=mxgraph.bpmn.task;arcSize=0;part=1;taskMarker=abstract;isLoopSub=1;isLoopMultiParallel=1;connectable=0;whiteSpace=wrap;');
cell2.vertex = true;
bg.insert(cell2);
var cell3 = new mxCell('',
new mxGeometry(0, 1, 20, 20),
'whiteSpace=wrap;connectable=0;html=1;shape=mxgraph.basic.rect;size=10;rectStyle=rounded;topRightStyle=square;topLeftStyle=square;fillColor=#C0C0C0;part=1;');
cell3.vertex = true;
cell3.geometry.relative = false;
bg.insert(cell3);
return sb.createVertexTemplateFromCells([bg], bg.geometry.width, bg.geometry.height, 'Call Choreography calling a Choreography, Parallel Multi Instance');
}),
this.createVertexTemplateEntry('whiteSpace=wrap;shape=mxgraph.bpmn.task;part=1;taskMarker=abstract;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;', 120, 20, '', 'Participant, Initiating, Top', null, null, dt + 'initiating participant top'),
this.addEntry(dt + 'initiating participant top with decorator', function()
{
var cell1 = new mxCell('',
new mxGeometry(0, 60, 120, 20),
'shape=mxgraph.bpmn.task;part=1;taskMarker=abstract;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;whiteSpace=wrap;');
cell1.vertex = true;
var cell2 = new mxCell('',
new mxGeometry(40, 0, 40, 30),
'shape=message;');
cell2.vertex = true;
var edge1 = new mxCell('', new mxGeometry(0, 0, 0, 0), 'edgeStyle=orthogonalEdgeStyle;html=1;elbow=horizontal;endArrow=none;labelBackgroundColor=none;endSize=12;endFill=0;dashed=1;dashPattern=1 2;exitX=0.5;exitY=0;rounded=0;');
edge1.geometry.relative = true;
edge1.edge = true;
cell1.insertEdge(edge1, true);
cell2.insertEdge(edge1, false);
return sb.createVertexTemplateFromCells([cell1, cell2, edge1], 120, 80, 'Participant, Initiating, Top with Decorator');
}),
this.createVertexTemplateEntry('shape=mxgraph.bpmn.task;part=1;taskMarker=abstract;rectStyle=square;whiteSpace=wrap;', 120, 20, '', 'Additional Participant, Initiating', null, null, dt + 'initiating additional participant'),
this.createVertexTemplateEntry('shape=mxgraph.bpmn.task;part=1;taskMarker=abstract;rectStyle=rounded;isLoopSub=0;topLeftStyle=square;topRightStyle=square;whiteSpace=wrap;', 120, 20, '', 'Participant, Initiating, Bottom', null, null, dt + 'initiating participant bottom'),
this.addEntry(dt + 'initiating participant bottom with decorator', function()
{
var cell1 = new mxCell('',
new mxGeometry(0, 0, 120, 20),
'shape=mxgraph.bpmn.task;part=1;taskMarker=abstract;rectStyle=rounded;isLoopSub=0;topLeftStyle=square;topRightStyle=square;whiteSpace=wrap;');
cell1.vertex = true;
var cell2 = new mxCell('',
new mxGeometry(40, 50, 40, 30),
'shape=message;');
cell2.vertex = true;
var edge1 = new mxCell('', new mxGeometry(0, 0, 0, 0), 'edgeStyle=orthogonalEdgeStyle;html=1;elbow=horizontal;endArrow=none;labelBackgroundColor=none;endSize=12;endFill=0;dashed=1;dashPattern=1 2;exitX=0.5;exitY=1;rounded=0;');
edge1.geometry.relative = true;
edge1.edge = true;
cell1.insertEdge(edge1, true);
cell2.insertEdge(edge1, false);
return sb.createVertexTemplateFromCells([cell1, cell2, edge1], 120, 80, 'Participant, Initiating, Bottom with Decorator');
}),
this.createVertexTemplateEntry('shape=mxgraph.bpmn.task;part=1;taskMarker=abstract;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;verticalAlign=top;isLoopMultiParallel=1;whiteSpace=wrap;', 120, 40, '', 'Participant, Initiating, Multi-Instance, Top', null, null, dt + 'initiating participant bottom'),
this.addEntry(dt + 'initiating participant multi instance top with decorator', function()
{
var cell1 = new mxCell('',
new mxGeometry(0, 60, 120, 40),
'shape=mxgraph.bpmn.task;part=1;taskMarker=abstract;rectStyle=rounded;bottomRightStyle=square;bottomLeftStyle=square;verticalAlign=top;isLoopMultiParallel=1;whiteSpace=wrap;');
cell1.vertex = true;
var cell2 = new mxCell('',
new mxGeometry(40, 0, 40, 30),
'shape=message;');
cell2.vertex = true;
var edge1 = new mxCell('', new mxGeometry(0, 0, 0, 0), 'edgeStyle=orthogonalEdgeStyle;html=1;elbow=horizontal;endArrow=none;labelBackgroundColor=none;endSize=12;endFill=0;dashed=1;dashPattern=1 2;exitX=0.5;exitY=0;rounded=0;');
edge1.geometry.relative = true;
edge1.edge = true;
cell1.insertEdge(edge1, true);
cell2.insertEdge(edge1, false);
return sb.createVertexTemplateFromCells([cell1, cell2, edge1], 120, 100, 'Participant, Initiating, Multi-Instance Top with Decorator');
}),
this.createVertexTemplateEntry('shape=mxgraph.bpmn.task;part=1;taskMarker=abstract;rectStyle=square;verticalAlign=top;isLoopMultiParallel=1;whiteSpace=wrap;', 120, 40, '', 'Additional Participant, Initiating, Multi-Instance, Bottom', null, null, dt + 'initiating additional participant multi instance bottom'),
this.createVertexTemplateEntry('shape=mxgraph.bpmn.task;part=1;taskMarker=abstract;rectStyle=rounded;verticalAlign=top;isLoopMultiParallel=1;top