(function() { Sidebar.prototype.addSysMLPalette = function() { this.setCurrentSearchEntryLibrary('sysml', 'sysmlModel Elements'); this.addSysMLModelElementsPalette(); this.setCurrentSearchEntryLibrary('sysml', 'sysmlBlocks'); this.addSysMLBlocksPalette(); this.setCurrentSearchEntryLibrary('sysml', 'sysmlPorts and Flows'); this.addSysMLPortsAndFlowsPalette(); this.setCurrentSearchEntryLibrary('sysml', 'sysmlConstraint Blocks'); this.addSysMLConstraintBlocksPalette(); this.setCurrentSearchEntryLibrary('sysml', 'sysmlActivities'); this.addSysMLActivitiesPalette(); this.setCurrentSearchEntryLibrary('sysml', 'sysmlInteractions'); this.addSysMLInteractionsPalette(); this.setCurrentSearchEntryLibrary('sysml', 'sysmlState Machines'); this.addSysMLStateMachinesPalette(); this.setCurrentSearchEntryLibrary('sysml', 'sysmlUse Cases'); this.addSysMLUseCasesPalette(); this.setCurrentSearchEntryLibrary('sysml', 'sysmlAllocations'); this.addSysMLAllocationsPalette(); this.setCurrentSearchEntryLibrary('sysml', 'sysmlRequirements'); this.addSysMLRequirementsPalette(); this.setCurrentSearchEntryLibrary('sysml', 'sysmlProfiles'); this.addSysMLProfilesPalette(); this.setCurrentSearchEntryLibrary('sysml', 'sysmlStereotypes'); this.addSysMLStereotypesPalette(); this.setCurrentSearchEntryLibrary(); } /** * Adds the sysML palettes to the sidebar. */ Sidebar.prototype.addSysMLModelElementsPalette = function(expand) { var gn = ''; var dt = 'sysml model element '; var sb = this; var s = 'html=1;shape=mxgraph.sysml.'; var inh = 'strokeColor=inherit;fillColor=inherit;gradientColor=inherit;'; var fns = [ this.addDataEntry(dt + 'comment', 180, 80, 'Comment', '1ZS7bsMgFIafhrXCOJGytk6bpZUqZWlHFE4NEgYLn8ROn74Hg5I4FylDlg6W///cgM8WrKyaYRVkqz+8AsvKV1ZWwXtMqhkqsJYJbhQrl0wITg8TbzeyxZjlrQzg8J4GkRp20m4hRSrfNLFZcIQBU7rDvc3pTss2SueRXi+d+Y2umJOW1tSOjIUfjKlWboyr30e3LDiFNDY2apK9NghrKontPZ2fYnkvEGjlm+cZQ/kwK/ANYNhTyT5lZ+m4vDcKdW6Y55gGU2uc1sku+fow6QiLROZ1nV15we6CFqga1tk67yIxcOo5BN+fRAaDX2T50yy77+hIK9lpUJnYCby0Thw+wdT5bdjA5MPeQW6KOoCVaHbTwdco5UGf3ow/S54izriiDDVgLjpDe9jDXbRnD6e9+Pe0i8WjcJM9Xjqp/PRO+gM='), this.addDataEntry(dt + 'constraint note', 180, 80, 'Constraint Note', '1ZQxb8IwEIV/jVcUO1BYIaUsVKrE0o4WvsaWHDtyDEn663uOLSAUJAaWDlHuPd8921+kkLyouo3jtXy3AjTJ1yQvnLU+VlVXgNaEZUqQ/JUwluFD2NudVTqsZjV3YPwjAywOHLk+QHTIfFVQki/RxXJLyRzdbE0nXXDYS4m5q+CwST+shfnG9zrNN5LXoTTW42vVqJ+g6AxrrlVpUGj4DiFNzffKlNtBvdIMLekrHWosW6k87LAljLcIaNh2OCw4D93dCw9Wuu0GbAXe9djSx9Vp5JG1SniZBmbJk6BK6cd9vIm6PCWdaWKRgN6Gm/+Fe00LRAm7JI01gRgYsXTOthdOp/wnymwyTeorKKwFbySIROwCXtwnhI8wNfbg9jD68g+QG6N2oLlXx3HwLUop6MMqzD+lsCuunrsSfGq6Qns6w0O0p0+nvfj3tOniWbhRnv9Ksf3yp/UL'), this.addDataEntry(dt + 'constraint textual note', 160, 60, 'Constraint Textual Note', 'lVNNb8MgDP01SNuNgtSel6TrZZMm9bAzTdyASiAidEn362cCaZV+SN0ByX72g+dnQXjeDBsnWvlpK9CErwnPnbU+Rs2Qg9aEUVURXhDGKB7C3h9UF2OVtsKB8c8QWCT8CH2EiKw1NEjGm5aE8QUlPHsR5oRNdVCpShH4BsW+Rm7nTzpxOynaEDoo8fWs884e4FtVXiLIENlb47epf4G59I1OYS+Vh20rylDr8SnEhFa1wbREQeAQSGrBeRgeTjxCadwN2Aa8C/L7pCN0LKMrVIKqZaJNmOhiXp+pF/8wSBbet5Pf2ElWWWkNOiEU6mMUhXuyKm6sm0bVsPdzY8K0wfW31NGoqgqsTIsd6C/bKa9sKLg4y5nwcVWfEzNRHmpnj6bKrbZobmGsgWlH6ndcUbIEJzC4UrGb1NKnFsHuL2K4WsIpefd//zG9fJWxNvtJfw=='), this.addDataEntry(dt + 'constraint textual note', 160, 0, 'Constraint Textual Note', 'lVNBbsIwEHyNj5WMI5UzCS2nSpU49GySJVg4XuQsNPD6rmNDSBskerDkHc+s7RlbZEXTrbw+7D6wAiuyN5EVHpHirOkKsFYoaSqRLYVSkodQ7w9WZ/2qPGgPjp4RqCg4aXuEiIh5XqJryWvDLZQk6EjMl5HX0tkm3gk8mVLbhTW1Y2iDRNiILN9Rw9dYzngKrlp4j99cOnQQkKqGdWqSIKs3YHNd7muPR1cVaNEPq1t0tDaXwJ9JrvlguIcvU9GOIcVIPFlo/NCDHkoGrAAbIH9migeryZzGOt3Gsr7xbtJPjJZcKS0efQkJvTf5SuxS51c57k3a10B/hDy5O98A9ZlN55dN5adduF0dHlVIqDeD7ZoI0UNrLnrTl3KcnU65Wtiyi/nvuAkP/84ubs+vy0FJadfbC5VhB+geZqimM0yCl6R4OtKR54PBXA6fL+Zx/zd/AA=='), this.createVertexTemplateEntry(s + 'composite;symbol0=folder;fontStyle=1;spacingTop=15;tabWidth=80;tabHeight=20;tabPosition=left;symbol1=triangle;symbol1Width=7;symbol1Height=10;symbol1Align=right;symbol1VerticalAlign=top;symbol1Spacing=8;symbol1VSpacing=25;symbol1Direction=north;strokeWidth=2;whiteSpace=wrap;align=center;', 160, 90, 'Model', 'Model', null, null, this.getTagsForStencil(gn, '', dt + 'model').join(' ')), this.addEntry(dt + 'package diagram', function() { var bg = new mxCell('
pkg Name
', new mxGeometry(0, 0, 300, 120), s + 'package;xSize=90;align=left;spacingLeft=10;overflow=fill;recursiveResize=0;'); bg.vertex = true; var cardCell2 = new mxCell('\nSubpackage1', new mxGeometry(15, 60, 100, 50), inh + 'shape=folder;spacingLeft=10;tabWidth=40;tabHeight=14;tabPosition=left;fontSize=10;html=1;whiteSpace=wrap;'); cardCell2.vertex = true; bg.insert(cardCell2); var cardCell3 = new mxCell('\nSubpackage2', new mxGeometry(190, 20, 100, 50), inh + 'shape=folder;spacingLeft=10;tabWidth=40;tabHeight=14;tabPosition=left;fontSize=10;html=1;whiteSpace=wrap;'); cardCell3.vertex = true; bg.insert(cardCell3); var assoc1 = new mxCell('<<import>>', new mxGeometry(0, 0, 0, 0), inh + 'edgeStyle=none;endArrow=open;dashed=1;verticalAlign=top;labelBackgroundColor=none;endSize=12;html=1;'); assoc1.geometry.relative = true; assoc1.edge = true; cardCell2.insertEdge(assoc1, true); cardCell3.insertEdge(assoc1, false); bg.insert(assoc1); return sb.createVertexTemplateFromCells([bg], 300, 120, 'Package Diagram'); }), this.addEntry(dt + 'package tab', function() { var bg = new mxCell('Package1', new mxGeometry(0, 0, 300, 120), 'shape=folder;xSize=90;align=left;spacingLeft=10;align=left;verticalAlign=top;spacingLeft=5;spacingTop=-4;tabWidth=70;tabHeight=20;tabPosition=left;html=1;recursiveResize=0;'); bg.vertex = true; var cardCell2 = new mxCell('\nSubpackage1', new mxGeometry(15, 60, 100, 50), inh + 'shape=folder;spacingLeft=10;tabWidth=40;tabHeight=14;tabPosition=left;fontSize=10;html=1;whiteSpace=wrap;'); cardCell2.vertex = true; bg.insert(cardCell2); var cardCell3 = new mxCell('\nSubpackage2', new mxGeometry(190, 30, 100, 50), inh + 'shape=folder;spacingLeft=10;tabWidth=40;tabHeight=14;tabPosition=left;fontSize=10;html=1;whiteSpace=wrap;'); cardCell3.vertex = true; bg.insert(cardCell3); var assoc1 = new mxCell('<<import>>', new mxGeometry(0, 0, 0, 0), inh + 'edgeStyle=none;endArrow=open;dashed=1;verticalAlign=top;labelBackgroundColor=none;endSize=12;html=1;'); assoc1.geometry.relative = true; assoc1.edge = true; cardCell2.insertEdge(assoc1, true); cardCell3.insertEdge(assoc1, false); bg.insert(assoc1); return sb.createVertexTemplateFromCells([bg], 300, 120, 'Package (Tab)'); }), this.createVertexTemplateEntry('shape=folder;tabWidth=80;tabHeight=20;tabPosition=left;strokeWidth=2;html=1;whiteSpace=wrap;align=center;', 160, 90, 'Package1', 'Package (Name)', null, null, this.getTagsForStencil(gn, '', dt + 'package name').join(' ')), this.createVertexTemplateEntry('shape=note;size=15;align=left;spacingLeft=10;html=1;whiteSpace=wrap;', 160, 60, '<<problem>>\nDescription', 'Problem', null, null, this.getTagsForStencil(gn, '', dt + 'problem').join(' ')), this.createVertexTemplateEntry('shape=note;size=15;align=left;spacingLeft=10;html=1;whiteSpace=wrap;', 160, 60, '<<rationale>>\nDescription', 'Rationale', null, null, this.getTagsForStencil(gn, '', dt + 'rationale').join(' ')), this.createVertexTemplateEntry('shape=folder;tabWidth=80;tabHeight=20;tabPosition=left;html=1;whiteSpace=wrap;align=center;', 160, 80, '\n<<view>>\n{viewpoint = View name}\nName', 'View (Name)', null, null, this.getTagsForStencil(gn, '', dt + 'view name').join(' ')), this.createVertexTemplateEntry('shape=folder;html=1;tabWidth=80;tabHeight=40;tabPosition=left;align=left;verticalAlign=top;spacingLeft=10;whiteSpace=wrap;', 160, 120, '<<view>>\nName', 'View', null, null, this.getTagsForStencil(gn, '', dt + 'view').join(' ')), this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;whiteSpace=wrap;', 120, 140, '' +
'<<viewpoint>>
' +
'Name
' +
'stakeholders="..."
' +
'purpose="..."
' +
'concerns="..."
' +
'languages="..."
' +
'methods="..."
bdd Namespace1
', new mxGeometry(0, 0, 300, 100), s + 'package;labelX=120;align=left;spacingLeft=10;overflow=fill;recursiveResize=0;'); bg.vertex = true; var cardCell2 = new mxCell('Block1', new mxGeometry(15, 30, 100, 50), inh + 'shape=rect;fontStyle=1;html=1;whiteSpace=wrap;align=center;'); cardCell2.vertex = true; bg.insert(cardCell2); var cardCell3 = new mxCell('Block2', new mxGeometry(190, 30, 100, 50), inh + 'shape=rect;fontStyle=1;html=1;whiteSpace=wrap;align=center;'); cardCell3.vertex = true; bg.insert(cardCell3); var assoc = new mxCell('part1', new mxGeometry(0, 0, 0, 0), inh + 'align=right;html=1;verticalAlign=bottom;endArrow=none;startArrow=diamondThin;startSize=14;startFill=1;edgeStyle=none;endFill=0;labelBackgroundColor=none;'); assoc.geometry.relative = true; assoc.geometry.x=1; assoc.edge = true; bg.insert(assoc); var sourceLabel = new mxCell('1', new mxGeometry(-1, 0, 0, 0), 'resizable=0;html=1;align=left;verticalAlign=top;labelBackgroundColor=none;fontSize=10'); sourceLabel.geometry.relative = true; sourceLabel.setConnectable(false); sourceLabel.vertex = true; assoc.insert(sourceLabel); var targetLabel = new mxCell('0..*', new mxGeometry(1, 0, 0, 0), 'resizable=0;html=1;align=right;verticalAlign=top;labelBackgroundColor=none;fontSize=10'); targetLabel.geometry.relative = true; targetLabel.setConnectable(false); targetLabel.vertex = true; assoc.insert(targetLabel); cardCell2.insertEdge(assoc, true); cardCell3.insertEdge(assoc, false); return sb.createVertexTemplateFromCells([bg], 300, 100, 'Block Definition Diagram'); }), this.addDataEntry(dt + 'relation', 160, 0, 'Relation', 'zVRNb8IwDP01vUwaCi3aHcrgNGkS+wOhMW20NEapYYVfP9MmLVVh2qYddqjkPNvPHy9NlKRlvXZyX7ygAhMlz1GSOkRqrbJOwZgoFlpFyTKKY8FfFK/ueKeNV+ylA0vfSYjbhKM0B2gRziVPU9HJeFQanVs2nc4LJl4UVHKvyymbR3CkM2nmPmSLRFiyA6yaO4cfjFm0TLSoiMkDprQs0aq3Qtvg2ujzpd50FoCVNqEMqBw2viFP13Z5cdydvoH86GvAEsidOKQeJDgwkvRxyCKr9ph3WR3RK2rm70MqPLgMPHq97BAYyj2JITePmAONEtm46raHGu1u65iMdBxr6KDSZ7ltjmKoYZDXwI5uSEq4Z9TILZiFzN5zhwerUjToejF2aDv9/JgZWgsZ+ZLdXRQXeqjvahZ/qdnjT0UbbPWLFc5GKxSTycNvthh+kv+8xj/aIh/7x6q9t9dv2Sc='), this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;verticalAlign=top;align=left;whiteSpace=wrap;', 220, 340, '' +
'<<block>>
' +
'{encapsulated}
' +
'Block1
constraints
' + '{x > y}
operations
' + 'operation1 (p1 : Type1) : Type2
parts
' + 'property1 : Block2
references
' + 'property2 : Block3 [0..*] {ordered}
values
' + 'property3 : Integer = 99 {readOnly}
property4 : Real = 10.0
properties
' + 'property5 : Type1
', 'Block', null, null, this.getTagsForStencil(gn, '', dt + 'block').join(' ')), this.createVertexTemplateEntry('shape=umlActor;html=1;verticalLabelPosition=bottom;verticalAlign=top;align=center;', 30, 60, 'ActorName', 'Actor', null, null, this.getTagsForStencil(gn, '', dt + 'actor').join(' ')), this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;whiteSpace=wrap;align=center;', 160, 80, '<<actor>>
ActorName
' +
'<<valueType>>
' +
'ValueType1
operations
' + 'operation1 (p1 : Type1) : Type2
properties
' + 'property1 : Type3
<<valueType>>
' + 'unit = UnitName
', 'ValueType', null, null, this.getTagsForStencil(gn, '', dt + 'value type valuetype').join(' ')), this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;whiteSpace=wrap;', 200, 80, '' +
'<<enumeration>>
' +
'Enumeration1
literalName1
literalName2
Name
', 'Abstract Definition', null, null, this.getTagsForStencil(gn, '', dt + 'abstract definition').join(' ')), this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;whiteSpace=wrap;align=center;', 80, 40, '{abstract}
Name
Name
{abstract}
' +
'<<stereotype1>>
' +
'Block1
<<stereotype1>>
' + 'property1 = value
', 'Stereotype Property Compartment', null, null, this.getTagsForStencil(gn, '', dt + 'stereotype property compartment').join(' ')), this.addEntry(dt + 'namespace compartment', function() { var bg = new mxCell( '' + 'Block1
namespace
', new mxGeometry(0, 0, 300, 120), 'shape=rect;align=left;html=1;overflow=fill;whiteSpace=wrap;recursiveResize=0;'); bg.vertex = true; var cardCell2 = new mxCell('Block2', new mxGeometry(15, 60, 100, 50), inh + 'shape=rect;html=1;fontStyle=1;whiteSpace=wrap;align=center;'); cardCell2.vertex = true; bg.insert(cardCell2); var cardCell3 = new mxCell('Block3', new mxGeometry(190, 60, 100, 50), inh + 'shape=rect;html=1;fontStyle=1;whiteSpace=wrap;align=center;'); cardCell3.vertex = true; bg.insert(cardCell3); var assoc = new mxCell('part1', new mxGeometry(0, 0, 0, 0), inh + 'align=right;verticalAlign=bottom;endArrow=none;startArrow=diamondThin;startSize=14;startFill=1;edgeStyle=none;html=1;labelBackgroundColor=none;'); assoc.geometry.relative = true; assoc.geometry.x=1; assoc.edge = true; bg.insert(assoc); var sourceLabel = new mxCell('1', new mxGeometry(-1, 0, 0, 0), 'resizable=0;html=1;align=left;verticalAlign=top;labelBackgroundColor=none;fontSize=10'); sourceLabel.geometry.relative = true; sourceLabel.setConnectable(false); sourceLabel.vertex = true; assoc.insert(sourceLabel); var targetLabel = new mxCell('0..*', new mxGeometry(1, 0, 0, 0), 'resizable=0;html=1;align=right;verticalAlign=top;labelBackgroundColor=none;fontSize=10'); targetLabel.geometry.relative = true; targetLabel.setConnectable(false); targetLabel.vertex = true; assoc.insert(targetLabel); cardCell2.insertEdge(assoc, true); cardCell3.insertEdge(assoc, false); return sb.createVertexTemplateFromCells([bg], 300, 100, 'Namespace Compartment'); }), this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;whiteSpace=wrap;', 250, 100, '' + 'Block1
namespace
', 'Block', null, null, this.getTagsForStencil(gn, '', dt + 'block').join(' ')), this.addEntry(dt + 'structure compartment', function() { var bg = new mxCell( '' + 'Block1
structure
', new mxGeometry(0, 0, 300, 120), 'shape=rect;align=left;html=1;overflow=fill;whiteSpace=wrap;recursiveResize=0;'); bg.vertex = true; var cardCell2 = new mxCell('Block2', new mxGeometry(15, 60, 100, 50), inh + 'shape=rect;html=1;fontStyle=1;whiteSpace=wrap;align=center;'); cardCell2.vertex = true; bg.insert(cardCell2); var cardCell3 = new mxCell('Block3', new mxGeometry(190, 60, 100, 50), inh + 'shape=rect;html=1;fontStyle=1;whiteSpace=wrap;align=center;'); cardCell3.vertex = true; bg.insert(cardCell3); var assoc = new mxCell('c1:', new mxGeometry(0, 0, 0, 0), inh + 'verticalAlign=bottom;html=1;endArrow=none;edgeStyle=none;labelBackgroundColor=none;'); assoc.geometry.relative = true; assoc.edge = true; bg.insert(assoc); var targetLabel = new mxCell('e1', new mxGeometry(1, 0, 0, 0), 'resizable=0;html=1;align=right;verticalAlign=top;labelBackgroundColor=none;fontSize=10'); targetLabel.geometry.relative = true; targetLabel.setConnectable(false); targetLabel.vertex = true; assoc.insert(targetLabel); var targetLabel2 = new mxCell('1', new mxGeometry(1, 0, 0, 0), 'resizable=0;html=1;align=right;verticalAlign=bottom;labelBackgroundColor=none;fontSize=10'); targetLabel2.geometry.relative = true; targetLabel2.setConnectable(false); targetLabel2.vertex = true; assoc.insert(targetLabel2); cardCell2.insertEdge(assoc, true); cardCell3.insertEdge(assoc, false); return sb.createVertexTemplateFromCells([bg], 300, 100, 'Structure Compartment'); }), this.addDataEntry(dt + 'relation', 160, 0, 'Relation', '3VTLboMwEPwa3x2Ieg/kcapUKV/gwNZYNV60bFKSr68BB4IIVQ499YDkHe+MvTMWIk7L5kCqKt4xByvinYhTQuR+VTYpWCsiaXIRb0UUSf+JaL+wu+p2ZaUIHL9CiHrCRdkz9EgWNGq+2gBdgNhkym6s0c5DJ2TGUsRJwaW/8Xbll+DyDRF++9Kh88SkZkX8DDuaWyu8Wt+BvbGtjGxlcg3HcDISF6jRKbsb0aS/Xdu3OHIHhXkPgCUwXX0LgVVsLlOeqvtSD30D9QONVxxbajxTBgF99PTe2ATlNznV9jNq4BnRLx7uN0JdRM/jimdxzdMiqM1NnbpSTkNSIUAyuvBeJYvBWnUCm6jsSxOeXZ6iRRpT/EQ3hBhGzdA5yDgcOzw72Z4AzWJS0fOkpoSXc5sY+4uL65mL8Kc2Mlb/zUNfjj+l/uE+/rN+AA=='), this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;whiteSpace=wrap;', 200, 60, '' +
'<<unit>>
' +
'
{quantityKind = QuantityKind1}
' +
'Unit1
' + 'Unit1
<<unit>>
' +
'{quantityKind = QuantityKind1}
' +
'<<quantityKind>>
' +
'
QuantityKind1
', 'Quantity Kind', null, null, this.getTagsForStencil(gn, '', dt + 'quantity kind').join(' ')), this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;fontSize=15;whiteSpace=wrap;', 70, 30, '' +
'i1: Type1
',
'Instance Specification', null, null, this.getTagsForStencil(gn, '', dt + 'instance specification').join(' ')),
this.addDataEntry(dt + 'instance specification', 280, 30, 'Instance Specification',
'3VVNj5swEP01HFcCk416DWG7p5VWSv+AgQlYNR7XOF/76zvGBkLYtDmt1B6ieJ7nDeP3PBCl2/b8arhu3rACGaUvUbo1iNav2vMWpIxYLKoozSPGYvpF7Pud3aTfjTU3oOwjBOYJRy4P4JGIrSVRM01wZy/Sw+tfB9dS1nJTCxWlm1ifx/DJoiZo1UMWzvaJS1G7rJLaADOgFZRouBXotg6qAiOFovrZVJ9WdfjvuxgBkRCHWvpx0ZAMu3Su4pZRGHfaEWSzY7Cu4dotDZRuv7EtSZ5T7QyPYPYSTxTuBWmUZntUdic+XHryTPGpERZ2mpcOOZFl4wOISge8a0EPBf1fAVuw5kIpJ1HZxmd88y7FDYi6Caw0YLzzcT0yJz9pESz93N70n7GXTfay/8PeQGBx8PEL7F4t7N4kC43caUTJ5cabmBdoLbZztUBVG2N6tVCD8sggFnNhVcMu1ERjG6xRcfkyoUE6lzcTrsODKWH28rF0y8DOLuwD8hqQdNeO8+qfiReo7yio4pTiGwno9RtySBwMX98Y49tdEHtvxv4esut5YZdOF3YZ6MQHL/ownrsUxjA3/hZlt872c5tJXoDMePmzNkhTuUWJNLK5wn42r6cgHLREpWh+wjPHT8jfxmD1xzEIhIddu3PlKZw+jl7y62/nbw=='),
this.addDataEntry(dt + 'relation', 160, 0, 'Relation',
'jVPBbsIwDP2a3Esi7U4L4zRpEl8QWi+NlsaV60Lh65c2gdIBEodK9rP9Er/XCFU0w450W39hBU6orVAFIXKMmqEA54TMbCXURkiZhU/IzxfV1VTNWk3g+Z0BGQeO2vUQkXXi6PjsEnQEYltqt3bW+AAdkBkbofKam3DjzSqE4Ks1EZ5Cii34iOztZaRYyTGtDOwTJxLXaNBrt53RPJ479r1cZoLSJjvABpjOoYXAabbH5ZzuYmpufbfRb7SBcW7psKcSEnqv1rVxSMwf2ZKbNRngh8EQ3N1vhibxnxuhHoxo1YMRBJ296MOUZkv9dfKGrKmDWPl/zxjbgDp9AJfr8tcQ9r4q0CGFokc/GvCDnq+WpUVL9B5KTmfefqdspIfhpU/yuU/LgbddW8g6axjS+aFEye/f0R8='),
this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;whiteSpace=wrap;', 120, 60,
'
' +
'instance1: Type1
value1
', 'Instance Specification', null, null, this.getTagsForStencil(gn, '', dt + 'instance specification').join(' ')), this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;whiteSpace=wrap;', 160, 80, '' +
'instance1: Type1
property1 = 10
property2 = "value"
' + ': Type1
' + 'instance1 / property1: Type2
' +
'instance2 / property2:
Type3
property1 = 10
property2 = "value"
' + ': Type1
' + 'Association1
structure
', new mxGeometry(20, 60, 360, 150), 'shape=rect;html=1;overflow=fill;whiteSpace=wrap;recursiveResize=0;'); bg.vertex = true; var cardCell4 = new mxCell( '' +
'<<participant>>
' +
'{end = property 2}
' +
'p2 : Block 2
' +
'<<participant>>
' +
'{end = property 1}
' +
'p1 : Block 1
' + 'Association1
<<participant>> {end = property 1} p1 : Blcok 1
' +
'<<participant>> {end = property 2} p2 : Blcok 2
' + 'Association1
structure
', 'Association', null, null, this.getTagsForStencil(gn, '', dt + 'association').join(' ')), this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;dashed=1;whiteSpace=wrap;', 150, 80, '' +
'<<participant>>
' +
'{end = property 1}
' +
'p1 : Block 1
' + 'Block1
' +
'<<connector>> c1 : Association1
' +
'<<connector>> c2 : Association2
' + 'structure
', new mxGeometry(0, 0, 400, 250), 'shape=rect;html=1;overflow=fill;whiteSpace=wrap; recursiveResize=0;'); bg.vertex = true; var cardCell2 = new mxCell('p1:\nType1', new mxGeometry(20, 100, 80, 40), inh + 'shape=rect;html=1;fontStyle=1;whiteSpace=wrap;align=center;'); cardCell2.vertex = true; bg.insert(cardCell2); var cardCell3 = new mxCell('p2:\nType2', new mxGeometry(300, 100, 80, 40), inh + 'shape=rect;html=1;fontStyle=1;whiteSpace=wrap;align=center;'); cardCell3.vertex = true; bg.insert(cardCell3); var edge1 = new mxCell('c1: Association1', new mxGeometry(0, 0, 0, 0), inh + 'edgeStyle=none;html=1;endArrow=none;verticalAlign=bottom;labelBackgroundColor=none;'); edge1.geometry.relative = true; edge1.edge = true; cardCell2.insertEdge(edge1, true); cardCell3.insertEdge(edge1, false); bg.insert(edge1); var label1 = new mxCell('1', new mxGeometry(1, 0, 0, 0), 'spacingRight=3;html=1;align=right;verticalAlign=bottom;labelPosition=left;labelBackgroundColor=none;fontSize=10'); label1.geometry.relative = true; label1.setConnectable(false); label1.vertex = true; edge1.insert(label1); var label2 = new mxCell('e1', new mxGeometry(1, 0, 0, 0), 'spacingRight=3;html=1;align=right;verticalAlign=top;labelPosition=left;labelBackgroundColor=none;fontSize=10'); label2.geometry.relative = true; label2.setConnectable(false); label2.vertex = true; edge1.insert(label2); var cardCell4 = new mxCell('p3:\nType3', new mxGeometry(20, 160, 80, 40), inh + 'shape=rect;html=1;fontStyle=1;whiteSpace=wrap;align=center;'); cardCell4.vertex = true; bg.insert(cardCell4); var cardCell5 = new mxCell('p4:\nType4', new mxGeometry(300, 160, 80, 40), inh + 'shape=rect;html=1;fontStyle=1;whiteSpace=wrap;align=center;'); cardCell5.vertex = true; bg.insert(cardCell5); var edge2 = new mxCell('', new mxGeometry(0, 0, 0, 0), inh + 'edgeStyle=none;html=1;endArrow=none;'); edge2.geometry.relative = true; edge2.edge = true; cardCell4.insertEdge(edge2, true); cardCell5.insertEdge(edge2, false); bg.insert(edge2); var label3 = new mxCell('1', new mxGeometry(1, 0, 0, 0), 'spacingRight=3;html=1;align=right;verticalAlign=bottom;labelPosition=left;labelBackgroundColor=none;fontSize=10'); label3.geometry.relative = true; label3.setConnectable(false); label3.vertex = true; edge2.insert(label3); var label4 = new mxCell('e1', new mxGeometry(1, 0, 0, 0), 'spacingRight=3;html=1;align=right;verticalAlign=top;labelPosition=left;labelBackgroundColor=none;fontSize=10'); label4.geometry.relative = true; label4.setConnectable(false); label4.vertex = true; edge2.insert(label4); var cardCell6 = new mxCell('c2: Association2', new mxGeometry(140, 210, 120, 20), inh + 'shape=rect;html=1;align=center;whiteSpace=wrap;'); cardCell6.vertex = true; bg.insert(cardCell6); var edge3 = new mxCell('', new mxGeometry(0, 0, 0, 0), inh + 'edgeStyle=none;html=1;endArrow=none;dashed=1;'); edge3.geometry.setTerminalPoint(new mxPoint(200, 180), false); edge3.geometry.relative = true; edge3.edge = true; cardCell6.insertEdge(edge3, true); bg.insert(edge3); return sb.createVertexTemplateFromCells([bg], 400, 250, 'Connector Property'); }), this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;whiteSpace=wrap;', 200, 120, '' + 'Block1
ibd Block1
', new mxGeometry(0, 0, 300, 100), s + 'package;labelX=100;align=left;spacingLeft=10;html=1;overflow=fill;whiteSpace=wrap;recursiveResize=0;'); bg.vertex = true; var cardCell2 = new mxCell('p1:\nType1', new mxGeometry(15, 30, 100, 50), inh + 'shape=rect;html=1;fontStyle=1;whiteSpace=wrap;align=center;'); cardCell2.vertex = true; bg.insert(cardCell2); var cardCell3 = new mxCell('p2:\nType2', new mxGeometry(190, 30, 100, 50), inh + 'shape=rect;html=1;fontStyle=1;whiteSpace=wrap;align=center;'); cardCell3.vertex = true; bg.insert(cardCell3); var assoc = new mxCell('c1:a1', new mxGeometry(0, 0, 0, 0), inh + 'verticalAlign=bottom;html=1;endArrow=none;edgeStyle=none;labelBackgroundColor=none;'); assoc.geometry.relative = true; assoc.edge = true; var sourceLabel = new mxCell('1', new mxGeometry(1, 0, 0, 0), 'resizable=0;html=1;align=right;verticalAlign=bottom;labelBackgroundColor=none;fontSize=10'); sourceLabel.geometry.relative = true; sourceLabel.setConnectable(false); sourceLabel.vertex = true; assoc.insert(sourceLabel); var targetLabel = new mxCell('p3', new mxGeometry(1, 0, 0, 0), 'resizable=0;html=1;align=right;verticalAlign=top;labelBackgroundColor=none;fontSize=10'); targetLabel.geometry.relative = true; targetLabel.setConnectable(false); targetLabel.vertex = true; assoc.insert(targetLabel); cardCell2.insertEdge(assoc, true); cardCell3.insertEdge(assoc, false); bg.insert(assoc); return sb.createVertexTemplateFromCells([bg], 300, 100, 'Internal Block Diagram'); }), this.addEntry(dt + 'property', function() { var bg = new mxCell('', new mxGeometry(0, 0, 300, 120), 'shape=rect;html=1;strokeWidth=2;whiteSpace=wrap;recursiveResize=0;'); bg.vertex = true; var cardCell2 = new mxCell( '' + '0..*
' + '' + 'p1 : Type1
idb Block1
', 'Package', null, null, this.getTagsForStencil(gn, '', dt + 'package').join(' ')), this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;whiteSpace=wrap;align=center;', 100, 80, '' + '0..*
' + '' + 'p1 : Type1
' + '0..*
' + '' + 'p1 : Type1
' + 'p3 : Type3
' + 'initialValues
' + '' +
'x1 = 5.0
x2 = "today"
' + 'p3 : Type3
' + 'initialValues
' + '' +
'x1 = 5.0
x2 = "today"
' + 'p1 : [Type1]
' + 'values
' + '' + '<<normal>> {mean = 2, stdDeviation = 0.1} x : Real
', 'Property Specific Type', null, null, this.getTagsForStencil(gn, '', dt + 'property specific type').join(' ')), this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;whiteSpace=wrap;', 100, 70, '' + 'p2
' + 'values
' + '' + 'y : Integer = 5
', 'Property Specific Type', null, null, this.getTagsForStencil(gn, '', dt + 'property specific type').join(' ')), this.createEdgeTemplateEntry('edgeStyle=none;html=1;endArrow=open;endSize=12;dashed=1;verticalAlign=bottom;', 160, 0, '<<stereotype1>>\ndependency1', 'Dependency', null, null, this.getTagsForStencil(gn, '', dt + 'dependency').join(' ')), this.addDataEntry(dt + 'property', 160, 0, 'Property', 'zVTBboMwDP2aXCatgjDtXmjX06RJPeycggtRQ4yM29F+/QJkpYx2qqYddohkv/g58XtRRJSUzYpUVbxiBkZESxElhMh9VDYJGCNkoDMRLYSUgVtCvtzYDbvdoFIElu8hyJ5wUGYPPdIDNR+NBw5ArFNl5kbn1kEbZMZSRHHBpbvvInQh2GxOhB8utWihRbIc1r4JEheYo1VmOaBxzYQ7eNcZF65GOqQ/umXenKaD/CgrwBKYjq6EwCjWhzFP1X2an+vO1DfUruNQUuOeUvDopVxfhY3v/ByMe7OiHHhCdMHF/QaoU/+6E9HEiXBiBUGtT2rTpcHYAeXdMbB1UsXfTWOsHGrUBkys0l1OuLdZggZpsGyLltf61DYP/ZgpWgsp+yPPrylo20Nz0yV53SVPePSMu00bqfqDhE8TCYPZ7OE3KpLOi/8u4x+p6NLhu+nf7eVv9Ak='), this.addDataEntry(dt + 'binding connector', 160, 0, 'Binding Connector', 'zVSxboMwEP0aj5XAVNlDknaqVClDZwcuxorxpceRknx9DbgQmqTKkKEDku/53jN+72SRLMrmldS+eMMcrEhWIlkQIverslmAtUJGJhfJUkgZ+U/Ilxu7cbcb7RWB43sIsicclK2hR4ScqXIvktR6gXRawWet7ADpSUOoWrWKjzaoHYDYZMrOrdHOQxtkxtJ3Flz6yy7jVtXlcyL88qVDBy2Sa1gHESQuUKNTdjWiacWEO/gwORe+Rw5Ht8ybVnRQ8OEVsASmo28hsIrNYcpTVV/qoW+gvqPximNLhTVlENBzr38am6A8i6barEgDXxD94uz/RqiL7nqMyUWM8UUUBJU5qU1XRtMEVEjHwrZN8XdojN0EqA3YVGU7TVi7fIEWaYxsi47X5tSKx+GaGToHGYcjh1GMWnlobqYkr6cUCE+BcXdoE1f/sPD5MRaS0cV/9/BBFvpyfKj6oT1/x74B'), this.addDataEntry(dt + 'bidirectional connector', 160, 0, 'Bidirectional Connector', '3VXBboMwDP2aXCatCrD1XmjX06RJ/YIUXIgWYhRMR/v1C5BBGe1UTZ1U7QCKH89O/J5FWBDl9dqIInvFBBQLViyIDCJ1q7yOQCnmc5mwYMl8n9uH+S8XvnrtV14IA5quSfC7hL1QFXRIbGtwFizsW5QlxlKQRN3RSjooR9uDIRkLtVAy1RbaIhHmLAgzym0XS88uQScLY/DDhho1NEiSwsYVQUMZpqiFWg1o2G3U8C521EKunTVgDmQOlmJA2aPux3mi7MK05/WpbyhtxYFSYmVicOipZF/E2lWe83FtEiYFmiTaxcn5Bqh14LwbwcQNPpt5E+0NlPIotm3Ix5ILZ4eCnVUr/O4SYWFRJbagQhG/pwYrnUSo0Awe7VDTRh6b4p7rNEatISa3ZT9UvCkP9UWj/PNGuYRHl3G1byNhf1DxaaJicUsN+0n/5zI+nxvGh98IaWSa3fs0/pWK8+kw+rfU8M6m8UYy2nC4A7sf6ekV+Qk='), this.addDataEntry(dt + 'unidirectional connector', 160, 0, 'Unidirectional Connector', '3VXBboMwDP2aXCatCrD1XmjX06RJ/YIUXIgWYhRMR/v1C5BBGe1UTZ1U7QCKH89O/J5FWBDl9dqIInvFBBQLViyIDCJ1q7yOQCnmc5mwYMl8n9uH+S8XvnrtV14IA5quSfC7hL1QFXRIbGtwFizsW5QlxlKQRN3RSjooR9uDIRkLtVAy1RbaIhHmLAgzym0XS88uQScLY/DDhho1NEiSwsYVQUMZpqiFWg1o2G3U8C521EKunTVgDmQOlmJA2aPux3mi7MK05/WpbyhtxYFSYmVicOipZF/E2lWe83FtEiYFmiTaxcn5Bqh14LwbwcQNPpt5E+0NlPIotm3Ix5ILZ4eCnVUr/O4SYWFRJbagQhG/pwYrnUSo0Awe7VDTRh6b4p7rNEatISa3ZT9UvCkP9UWj/PNGuYRHl3G1byNhf1DxaaJicUsN+0n/5zI+nxvGh98IaWSa3fs0/pWK8+kw+rfU8M6m8UYy2nC4A7sf6ekV+Qk=') ]; this.addPalette('sysmlBlocks', 'SysML / Blocks', expand || false, mxUtils.bind(this, function(content) { for (var i = 0; i < fns.length; i++) { content.appendChild(fns[i](content)); } })); }; Sidebar.prototype.addSysMLPortsAndFlowsPalette = function(expand) { var gn = ''; var dt = 'sysml port flow '; var sb = this; var s = 'html=1;shape=mxgraph.sysml.'; var inh = 'strokeColor=inherit;fillColor=inherit;gradientColor=inherit;'; var fns = [ this.addEntry(dt + 'port', function() { var s = 'html=1;shape=mxgraph.sysml.'; var cardCell = new mxCell('Transmission', new mxGeometry(0, 0, 160, 60), s + 'port1;fontStyle=1;whiteSpace=wrap;align=center;points=[[0,0.5,0],[1,0.5,0]];'); cardCell.vertex = true; var label1 = new mxCell('p1', new mxGeometry(0, 20, 20, 20), inh + 'shape=rect;points=[[0,0.5,0]];html=1;resizable=1;align=right;verticalAlign=bottom;labelPosition=left;verticalLabelPosition=top;labelBackgroundColor=none;fontSize=10;part=1;'); label1.geometry.relative = false; label1.vertex = true; cardCell.insert(label1); var label2 = new mxCell('p2', new mxGeometry(140, 20, 20, 20), inh + 'shape=rect;points=[[1,0.5,0]];html=1;resizable=1;labelBackgroundColor=none;fontSize=10;part=1;'); label2.geometry.relative = false; label2.vertex = true; cardCell.insert(label2); return sb.createVertexTemplateFromCells([cardCell], cardCell.geometry.width, cardCell.geometry.height, 'Port'); }), this.addEntry(dt + 'port conjugated', function() { var cardCell = new mxCell('Transmission', new mxGeometry(0, 0, 200, 60), s + 'port2;fontStyle=1;spacingRight=20;whiteSpace=wrap;align=center;'); cardCell.vertex = true; var label1 = new mxCell('p1 : ~T1', new mxGeometry(0, 20, 20, 20), inh + 'shape=rect;points=[[0,0.5,0]];html=1;resizable=1;align=right;verticalAlign=bottom;labelPositin=left;verticalLabelPosition=top;labelBackgroundColor=none;fontSize=10;part=1;'); label1.geometry.relative = false; label1.vertex = true; cardCell.insert(label1); var label2 = new mxCell('p2 : ~T2', new mxGeometry(140, 20, 60, 20), inh + 'shape=rect;points=[[1,0.5,0]];html=1;resizable=1;labelBackgroundColor=none;fontSize=10;part=1;'); label2.geometry.relative = false; label2.vertex = true; cardCell.insert(label2); return sb.createVertexTemplateFromCells([cardCell], cardCell.geometry.width, cardCell.geometry.height, 'Port (Conjugated Ports)'); }), this.addDataEntry(dt + 'port flow property', 160, 80, 'Ports with Flow Properties', '7ZTLboMwEEW/xtuI4KbqtoE2m1aqlP6AAxOwanuQPWkgX18DJi9S9aFI3XSBZN87V5o5g8x4ouuFFVX5jDkoxh8YTywi9SddJ6AUiyOZM56yOI78x+LHT9xp50aVsGDoO4G4D7wLtYFeebXCOC2dk2h601GjglmS9i2mU8bnrhRVq+q6aLufuMZpNanQEvfuGg0tQ66t3paSYFmJrBW2PuA1oWRh/DXzvYL1QugFLEH96TydFIZZAGog2/iSrcypDBW3/cxRCbIoQ+wuaML192IfPdDxhwDoMiw+glVNR4gsOLkTq+4a+aGOkA0D276teTupzIS6D/oKiVB7Q4kVqBd0ktol8FTB+rj+6cwmrIbQXGRvhcWNyRNU6KGmBg0MC5G7bh8BRYbGQEah1/2v8tUC4ssLaELgCpxvxpzjf86nnGdX4Dwbc+a/4XyG7TLmvyM2BIZnIRDkPyfor4enufNOXu4P'), this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;whiteSpace=wrap;', 160, 70, '' + 'Transmission
' + 'ports
' + '' + 'p1 : ITransCmd
', 'Port (Compartment Notation)', null, null, this.getTagsForStencil(gn, '', dt + 'port compartment notation').join(' ')), this.addDataEntry(dt + 'nested port', 160, 60, 'Nested Port', '7ZXLboMwEEW/xtsIcJp9gTabVoqU/oADE7DqB7KdBvL1tbHJk6iPdFVlgeS54yvPnLEwwhlv54o09assgSH8hHCmpDR+xdsMGENJREuEc5Qkkf1Q8nwlG/fZqCEKhPmOIfGGD8I24JU3RYTmVGsqhU9q07GQrA23JeYxwqmuSeNU3lau+onuNGcTAdpAuZDKnp6upTDLYHaWbU0NLBtSOGFrXVYjjFbChoUtGJQVQkGgDLRXm+ql0NEcJAejOrtlS0tThx0z33hUA63qYBs0on1c7a0HRHYRKI0TwxfEmngSX5BSoOmOrPowsm0dkRtaVr6w1PVKC8Ieg85pWTpfysgK2EJqatwscM5gfbz/5SxtZDOYUlK8V0puRJlJJi3WXEgBw0jorp9IgFFIIaAwodb9jflqBMn4CLpgmN5OejpGOrmTPiWN/+BOP4yRxnfSp6Sns9tJz0ZI/4bzGbZ/gTkYhjdp+JP8/H7b8PCC9rmTB/YT'), this.addEntry(dt + 'proxy port', function() { var cardCell = new mxCell('Transmission', new mxGeometry(0, 0, 160, 60), s + 'port1;fontStyle=1;whiteSpace=wrap;align=center;'); cardCell.vertex = true; var label1 = new mxCell('<<proxy>>\np1', new mxGeometry(0, 20, 20, 20), inh + 'shape=rect;points=[[0,0.5,0]];html=1;resizable=1;align=right;verticalAlign=bottom;labelPosition=left;verticalLabelPosition=top;labelBackgroundColor=none;fontSize=10;part=1;'); label1.geometry.relative = false; label1.vertex = true; cardCell.insert(label1); return sb.createVertexTemplateFromCells([cardCell], cardCell.geometry.width, cardCell.geometry.height, 'Proxy Port'); }), this.addEntry(dt + 'full port', function() { var cardCell = new mxCell('Transmission', new mxGeometry(0, 0, 160, 60), s + 'port1;fontStyle=1;whiteSpace=wrap;align=center;'); cardCell.vertex = true; var label1 = new mxCell('<<full>>\np1', new mxGeometry(0, 20, 20, 20), inh + 'shape=rect;points=[[0,0.5,0]];html=1;resizable=1;align=right;verticalAlign=bottom;labelPosition=left;verticalLabelPosition=top;labelBackgroundColor=none;fontSize=10;paart=1;'); label1.geometry.relative = false; label1.vertex = true; cardCell.insert(label1); return sb.createVertexTemplateFromCells([cardCell], cardCell.geometry.width, cardCell.geometry.height, 'Full Port'); }), this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;whiteSpace=wrap;', 200, 100, '' + 'Transmission
' + 'flow properties
' + '' +
'in gearSelect: Gear
' +
'in engineTorque: Torque
' +
'out wheelsTorque: Torque
' + 'Transmission
' + 'operations
' + '' +
'prov Boolean selectGear(g : Gear)
' +
'reqd Torque getTorque()
' + 'properties
' + '' +
'prov temperature : Integer
' +
'reqd geometry : Spline
' + '<<interfaceBlock>>\n' + 'ISpeedObserver
' + 'notifySpeedChange(): void
', 'Interface Block', null, null, this.getTagsForStencil(gn, '', dt + 'interface block').join(' ')), this.addDataEntry(dt + 'item flow', 120, 180, 'Item Flow', '1ZXBbtswDIafRscFjt0Gu8bJ2ks3DEgO21GxGVuYLHkUk9h9+lG2nMRNuhVYVmAHA+JPUhY/UrZIFlXziLIuP9sctEg+iWSB1lK/qpoFaC3iSOUiWYo4jvgR8cMr3mnnjWqJYOgtCXGfsJd6B70CphDJnDVeKAMinok4mUYiSftQR60OoSVVfODllH2ulLVXq6bwtUxc6yo9UQTVg7YHDthaQ6uQ6hO2LC8VsrUK1rrtdrA7Pnh6KDl3VcvMSwfekjWpVWHYzLg2wOOB9oAEzav1d1Io/hFsBYQth4SEgCc6qJzKXvoYpBJUUYZNZkGTrreL40YntrwIeK+jTi5Qn7ElNK7HvkZpXKWcU9b8I+JfxsSVeQ/gbfBeIX7Ubo387gL52uJPXr/kCnkBAytjeeqT9Az1wAH706Vg8jmihzwEQ6PoG5vR5D5Y30MuY8H2zOVN7ztdKP/uEUxnd5jB6H6SxAJoNEdvQI6gJan9ePe/4Xl/wbO+QIng1LPcdGZ0naOGrcfoeNqUKZ46a9ldAz9aKpN6HiLJ+jnUcgP6q3WK/J045g/BTy/cG0tkqyEvldmPAu3O5AurLZ561t0P9Qz9u7syMmsMZBROf/x4/mni7377ifkQMm7ejdl7d2MM9r9tyI36webpP935Rr/xXw=='), this.addDataEntry(dt + 'item flow property', 140, 180, 'Item Flow (Item Property)', '1ZXfb5swEMf/Gj8uIpBGew3J2pdumpQ+bI8OXMCqsZl9SaB//c7YkFDardLSSntA8n3vB/bnfMCSddXcGV6XX3UOkiVfWLI2WqNfVc0apGRxJHKWbFgcR/Sw+PYV77zzRjU3oPAtCbFPOHJ5AK+AKliyIo0WQgGLlyxO5hFLUh9qsZUhtMSKNryZk8+WvHZq1RTuLDPb2krOBEJ1K/WJAvZa4TakuoQ9yRthyNoG66HtKugDbTw9lZS7rXnmpBOVJI1LUSgyMzobmGFDRzAIzavn76Rw+DvQFaBpKSQkLDye6CRyLL30OUgliKIMRZZB49bbxVDozJYWAe/LqJMJ6gu2aJT12B8MV7YS1gqt3on4tzFxoT4QeLiPURuC42kDBu3aHVhMOoDa/HLrDrxfP0cOeQE9RqVpIJL0ogs9IuN3moLKV8Y4/n0wNAJ/kBnNboL1M+QSMdNeuJzpfOdZc+8ecbb6YDIYjS5yUwCOrtgbumFAchTHcfV/YXszYVtPUBqw4onvOjN6maOEvcNo6SIKVdx31qabEHfrRMblKkSidldU8h3I79oKdOMy5PfB98/cO42oqz4v5dljYfRB5WsttTn3rBsd8QT+3d0xMq0UZBh2P3xX/zYMiz8Ow6eQcfVuLD+6G2Ow/21DrtQPMs+/8M43+sP/Bg=='), this.createVertexTemplateEntry(s + 'itemFlow;fontStyle=1;flowDir=n;flowType=in;whiteSpace=wrap;align=center;', 200, 80, 'eng:Engine', 'Item Flow North In', null, null, this.getTagsForStencil(gn, '', dt + 'item flow north in').join(' ')), this.createVertexTemplateEntry(s + 'itemFlow;fontStyle=1;flowDir=e;flowType=out;whiteSpace=wrap;align=center;', 200, 80, 'eng:Engine', 'Item Flow East Out', null, null, this.getTagsForStencil(gn, '', dt + 'item flow east out').join(' ')), this.addEntry(dt + 'item flow', function() { var cardCell = new mxCell('eng: engine', new mxGeometry(40, 0, 100, 60), s + 'itemFlow;fontStyle=1;flowDir=e;flowType=none;spacingRight=20;whiteSpace=wrap;align=center;'); cardCell.vertex = true; var cardCell2 = new mxCell('trns: Translation', new mxGeometry(260, 0, 140, 60), s + 'itemFlow;fontStyle=1;flowDir=w;flowType=none;spacingLeft=15;whiteSpace=wrap;align=center;'); cardCell2.vertex = true; var assoc1 = new mxCell('Torque', new mxGeometry(0, 0, 0, 0), 'edgeStyle=none;html=1;align=left;verticalAlign=top;endArrow=none;exitX=1;exitY=0.5;entryX=0;entryY=0.5;'); assoc1.geometry.relative = true; assoc1.edge = true; var label1 = new mxCell('ep:EP', new mxGeometry(0, 0, 0, 0), 'resizable=0;html=1;align=left;spacingLeft=5;verticalAlign=bottom;labelPosition=left;verticalLabelPosition=bottom;labelBackgroundColor=none;fontSize=10'); label1.geometry.relative = true; label1.geometry.x = -1; label1.setConnectable(false); label1.vertex = true; assoc1.insert(label1); var label2 = new mxCell('tp:TP', new mxGeometry(0, 0, 0, 0), 'resizable=0;html=1;align=right;spacingRight=5;verticalAlign=bottom;labelPosition=left;verticalLabelPosition=bottom;labelBackgroundColor=none;fontSize=10'); label2.geometry.relative = true; label2.geometry.x = 1; label2.setConnectable(false); label2.vertex = true; assoc1.insert(label2); cardCell.insertEdge(assoc1, true); cardCell2.insertEdge(assoc1, false); var bg = new mxCell( '' + 'c1: Association-1
' +
'<<participant>>{end = ep} epInLink : EP[1]
' +
'<<participant>>{end = tp} etInLink : TP[1]
' + 'structure
', new mxGeometry(0, 120, 470, 250), 'shape=rect;html=1;overflow=fill;whiteSpace=wrap;recursiveResize=0;'); bg.vertex = true; var assoc2 = new mxCell('', new mxGeometry(0, 0, 0, 0), 'endArrow=none;html=1;edgeStyle=elbowEdgeStyle;elbow=horizontal;dashed=1;'); assoc2.geometry.relative = true; assoc2.geometry.setTerminalPoint(new mxPoint(160, 30), true); assoc2.edge = true; bg.insertEdge(assoc2, false); var cardCell4 = new mxCell('epInLink : EP', new mxGeometry(30, 100, 160, 120), inh + s + 'itemFlowRight;fontStyle=1;spacingRight=40;whiteSpace=wrap;align=center;'); cardCell4.vertex = true; bg.insert(cardCell4); var label3 = new mxCell('ep.1', new mxGeometry(160, 30, 0, 0), 'resizable=0;html=1;align=right;spacingRight=22;verticalAlign=middle;labelPosition=right;verticalLabelPosition=top;labelBackgroundColor=none;fontSize=10'); label3.geometry.relative = false; label3.setConnectable(false); label3.vertex = true; cardCell4.insert(label3); var label4 = new mxCell('ep.2', new mxGeometry(160, 60, 0, 0), 'resizable=0;html=1;align=right;spacingRight=22;verticalAlign=middle;labelPosition=right;verticalLabelPosition=top;labelBackgroundColor=none;fontSize=10'); label4.geometry.relative = false; label4.setConnectable(false); label4.vertex = true; cardCell4.insert(label4); var label5 = new mxCell('ep.3', new mxGeometry(160, 90, 0, 0), 'resizable=0;html=1;align=right;spacingRight=22;verticalAlign=middle;labelPosition=right;verticalLabelPosition=top;labelBackgroundColor=none;fontSize=10'); label5.geometry.relative = false; label5.setConnectable(false); label5.vertex = true; cardCell4.insert(label5); var cardCell5 = new mxCell('tpInLink : TP', new mxGeometry(280, 100, 160, 120), inh + s + 'itemFlowLeft;fontStyle=1;spacingLeft=40;whiteSpace=wrap;align=center;'); cardCell5.vertex = true; bg.insert(cardCell5); var label6 = new mxCell('tp.1', new mxGeometry(0, 30, 0, 0), 'resizable=0;html=1;align=left;spacingLeft=22;verticalAlign=middle;labelPosition=left;verticalLabelPosition=top;labelBackgroundColor=none;fontSize=10'); label6.geometry.relative = false; label6.setConnectable(false); label6.vertex = true; cardCell5.insert(label6); var label7 = new mxCell('tp.2', new mxGeometry(0, 60, 0, 0), 'resizable=0;html=1;align=left;spacingLeft=22;verticalAlign=middle;labelPosition=left;verticalLabelPosition=top;labelBackgroundColor=none;fontSize=10'); label7.geometry.relative = false; label7.setConnectable(false); label7.vertex = true; cardCell5.insert(label7); var label8 = new mxCell('tp.3', new mxGeometry(0, 90, 0, 0), 'resizable=0;html=1;align=left;spacingLeft=22;verticalAlign=middle;labelPosition=left;verticalLabelPosition=top;labelBackgroundColor=none;fontSize=10'); label8.geometry.relative = false; label8.setConnectable(false); label8.vertex = true; cardCell5.insert(label8); var assoc3 = new mxCell('Vibration', new mxGeometry(0, 0, 0, 0), inh + 'edgeStyle=none;html=1;verticalAlign=bottom;endArrow=none;exitX=1;exitY=0.25;entryX=0;entryY=0.25;labelBackgroundColor=none;'); assoc3.geometry.relative = true; assoc3.edge = true; cardCell4.insertEdge(assoc3, true); cardCell5.insertEdge(assoc3, false); bg.insert(assoc3); var assoc4 = new mxCell('Heat', new mxGeometry(0, 0, 0, 0), inh + 'edgeStyle=none;html=1;verticalAlign=bottom;endArrow=none;exitX=1;exitY=0.5;entryX=0;entryY=0.5;labelBackgroundColor=none;'); assoc4.geometry.relative = true; assoc4.edge = true; cardCell4.insertEdge(assoc4, true); cardCell5.insertEdge(assoc4, false); bg.insert(assoc4); var assoc5 = new mxCell('Current', new mxGeometry(0, 0, 0, 0), inh + 'edgeStyle=none;html=1;verticalAlign=bottom;endArrow=none;exitX=1;exitY=0.75;entryX=0;entryY=0.75;labelBackgroundColor=none;'); assoc5.geometry.relative = true; assoc5.edge = true; cardCell4.insertEdge(assoc5, true); cardCell5.insertEdge(assoc5, false); bg.insert(assoc5); return sb.createVertexTemplateFromCells([cardCell, cardCell2, assoc1, bg, assoc2], 470, 370, 'Item Flow'); }), this.addDataEntry(dt + 'item flow', 200, 120, 'Item Flow', '7ZXfasIwFMafJrdSm22wS1unDBwI7gVie2yD+VOSuLY+/U6bVN1WcYNdetGQfOd84ZzfKYTQVDZLw6ryTecgCH0hNDVaO7+TTQpCkDjiOaFzEscRfiReXIlO+2hUMQPK/cYQe8MHEwfwiqte1YqrPaqEznB9X/sc61oRckonsdL5lNDElqzqVNkUXRMT21opJtyBXAhdr2CHZSQ7rdwm2DtTXWLCpmJZJ9ToQ40JXig8Zlg5GBRCZWAcNFe766XQ2hK0BGdaTKl57srQYeQJRCXwohxsAUvErBeKk/cMCzeB1zg7OsJuMv0By4DlR7btj4g0uYA39Cw8JotEuCo8tHnXWNK1zzMmZiFT8jzvbkoE24JYa8sd1xdXDPmrb2Gnq8GUsGxfGH1QeaqFRtJzpRUMU+LHfkgBT6aVgsyF6k9/062pxONTaQO3f2D/MMY+vrO/xf7pH9g/jrGnd/a32D//nT0ez29BH/vyVHwC'), this.addDataEntry(dt + 'item flow', 200, 120, 'Item Flow', '7ZVdb4IwFIZ/TW8N0m3JLgXULHGJmb+gwhk09oO0dYC/fgco6hxmH/HSC0j79rzNOc9LAqGxrJeGlcWrzkAQOic0Nlq7fiXrGIQgYcAzQhMShgE+JFxcOZ12p0HJDCj3G0PYGz6Y2EOvQPmiVlztUCV0hu/5uq+xrhG+pnASO02mhEa2YGWryjpvh5jYxkox4Q7kQujqjecF9hG9a+U23t+6qgIrNiVLW6FCI2pM8FzhNsXWwaDgWwPjoL46Xif52ZagJTjTYEnFM1f4EYMeQVBA301n81wCZnshP3pPtHDhgY3DoyPwJtNvtAxYfmDbbotMozN6w8zGc7KIhKvcY0va0aIWAE+ZmPlaybOsvSsSbAtirS13XJ9fMhhWF+dOl4MrYukuN3qvslgLjbATpRUMQfFDl5MnlGqlIHV+gOMX9VMw4Xgw9UUojUd5gzgexuII73H8I46nG8TxOBYHvcfxjzie/x4Hbk9/ke7sy0/mEw=='), this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;whiteSpace=wrap;', 200, 80, '' +
'<<interface>>
' +
'ISpeedObserver
' + 'notifySpeedChange(): void
', 'Interface', null, null, this.getTagsForStencil(gn, '', dt + 'interface').join(' ')), this.addEntry(dt + 'required interface', function() { var cardCell = new mxCell('Transmission', new mxGeometry(90, 0, 160, 60), s + 'port4;fontStyle=1;whiteSpace=wrap;align=center;'); cardCell.vertex = true; var label1 = new mxCell('p1', new mxGeometry(0, 20, 20, 20), inh + 'shape=rect;html=1;resizable=0;align=left;verticalAlign=bottom;labelPosition=right;verticalLabelPosition=top;labelBackgroundColor=none;fontSize=10;'); label1.geometry.relative = false; label1.setConnectable(false); label1.vertex = true; cardCell.insert(label1); var assoc1 = new mxCell('ITransCmd', new mxGeometry(0, 0, 0, 0), 'edgeStyle=none;html=1;align=left;verticalAlign=bottom;endArrow=sysMLReqInt;endSize=8;exitX=0;exitY=0.5;'); assoc1.geometry.setTerminalPoint(new mxPoint(0, 0), false); assoc1.geometry.relative = true; assoc1.geometry.x = 1; assoc1.edge = true; cardCell.insertEdge(assoc1, true); var assoc2 = new mxCell('ITransData', new mxGeometry(0, 0, 0, 0), 'edgeStyle=none;html=1;align=left;verticalAlign=top;endArrow=sysMLProvInt;endSize=12;exitX=0;exitY=0.5;'); assoc2.geometry.setTerminalPoint(new mxPoint(0, 60), false); assoc2.geometry.relative = true; assoc2.geometry.x = 1; assoc2.edge = true; cardCell.insertEdge(assoc2, true); return sb.createVertexTemplateFromCells([cardCell, assoc1, assoc2], 250, 60, 'Required Interface'); }), this.addEntry(dt + 'provided interface', function() { var cardCell = new mxCell('Transmission', new mxGeometry(90, 0, 160, 60), s + 'port4;fontStyle=1;whiteSpace=wrap;align=center;'); cardCell.vertex = true; var label1 = new mxCell('p1', new mxGeometry(0, 20, 20, 20), inh + 'shape=rect;html=1;resizable=0;labelBackgroundColor=none;fontSize=10;'); label1.geometry.relative = false; label1.setConnectable(false); label1.vertex = true; cardCell.insert(label1); var assoc1 = new mxCell('ITransCmd', new mxGeometry(0, 0, 0, 0), 'edgeStyle=none;html=1;align=left;verticalAlign=bottom;endArrow=sysMLReqInt;endSize=8;exitX=0;exitY=0.5;'); assoc1.geometry.setTerminalPoint(new mxPoint(0, 0), false); assoc1.geometry.relative = true; assoc1.geometry.x = 1; assoc1.edge = true; cardCell.insertEdge(assoc1, true); var assoc2 = new mxCell('ITransData', new mxGeometry(0, 0, 0, 0), 'edgeStyle=none;html=1;align=left;verticalAlign=top;endArrow=sysMLProvInt;endSize=12;exitX=0;exitY=0.5;'); assoc2.geometry.setTerminalPoint(new mxPoint(0, 60), false); assoc2.geometry.relative = true; assoc2.geometry.x = 1; assoc2.edge = true; cardCell.insertEdge(assoc2, true); return sb.createVertexTemplateFromCells([cardCell, assoc1, assoc2], 250, 60, 'Provided Interface'); }), this.createVertexTemplateEntry(s + 'port;sysMLPortType=flowN;', 20, 20, '', 'Port, Flow North', null, null, this.getTagsForStencil(gn, '', dt + 'item flow north').join(' ')), this.createVertexTemplateEntry(s + 'port;sysMLPortType=doubleH;', 20, 20, '', 'Port, Double Flow, Horizontal', null, null, this.getTagsForStencil(gn, '', dt + 'item double flow horizontal').join(' ')), this.addEntry(dt + 'ports', function() { var mainShape = new mxCell('', new mxGeometry(0, 0, 200, 140), 'whiteSpace=wrap;align=center;html=1;'); mainShape.vertex = true; var port1 = new mxCell('port1', new mxGeometry(0, 0, 20, 20), s + 'port;html=1;resizable=0;sysMLPortType=flowS;labelPosition=center;verticalLabelPosition=bottom;align=center;verticalAlign=top;'); port1.geometry.relative = true; port1.vertex = true; port1.geometry.offset = new mxPoint(50, -10); mainShape.insert(port1); var port2 = new mxCell('port2', new mxGeometry(1, 0, 20, 20), s + 'port;html=1;resizable=0;sysMLPortType=empty;labelPosition=center;verticalLabelPosition=bottom;align=center;verticalAlign=top;'); port2.geometry.relative = true; port2.vertex = true; port2.geometry.offset = new mxPoint(-70, -10); mainShape.insert(port2); var port3 = new mxCell('port3', new mxGeometry(0, 0, 20, 20), s + 'port;html=1;resizable=0;sysMLPortType=flowE;labelPosition=right;verticalLabelPosition=middle;align=left;verticalAlign=middle;'); port3.geometry.relative = true; port3.vertex = true; port3.geometry.offset = new mxPoint(-10, 30); mainShape.insert(port3); var port4 = new mxCell('port4', new mxGeometry(0, 1, 20, 20), s + 'port;html=1;resizable=0;sysMLPortType=doubleH;labelPosition=right;verticalLabelPosition=middle;align=left;verticalAlign=middle;'); port4.geometry.relative = true; port4.vertex = true; port4.geometry.offset = new mxPoint(-10, -50); mainShape.insert(port4); var port5 = new mxCell('port5', new mxGeometry(1, 0, 20, 20), s + 'port;html=1;resizable=0;sysMLPortType=flowE;labelPosition=left;verticalLabelPosition=middle;align=right;verticalAlign=middle;'); port5.geometry.relative = true; port5.vertex = true; port5.geometry.offset = new mxPoint(-10, 30); mainShape.insert(port5); var port6 = new mxCell('port6', new mxGeometry(1, 1, 20, 20), s + 'port;html=1;resizable=0;sysMLPortType=doubleH;labelPosition=left;verticalLabelPosition=middle;align=right;verticalAlign=middle;'); port6.geometry.relative = true; port6.vertex = true; port6.geometry.offset = new mxPoint(-10, -50); mainShape.insert(port6); var port7 = new mxCell('port7', new mxGeometry(0, 1, 20, 20), s + 'port;html=1;resizable=0;sysMLPortType=flowN;labelPosition=center;verticalLabelPosition=top;align=center;verticalAlign=bottom;'); port7.geometry.relative = true; port7.vertex = true; port7.geometry.offset = new mxPoint(50, -10); mainShape.insert(port7); var port8 = new mxCell('port8', new mxGeometry(1, 1, 20, 20), s + 'port;html=1;resizable=0;sysMLPortType=doubleV;labelPosition=center;verticalLabelPosition=top;align=center;verticalAlign=bottom;'); port8.geometry.relative = true; port8.vertex = true; port8.geometry.offset = new mxPoint(-70, -10); mainShape.insert(port8); return sb.createVertexTemplateFromCells([mainShape], 220, 160, 'Ports'); }) ]; this.addPalette('sysmlPorts and Flows', 'SysML / Ports and Flows', expand || false, mxUtils.bind(this, function(content) { for (var i = 0; i < fns.length; i++) { content.appendChild(fns[i](content)); } })); }; Sidebar.prototype.addSysMLConstraintBlocksPalette = function(expand) { var s = 'html=1;shape=mxgraph.sysml.'; var inh = 'strokeColor=inherit;fillColor=inherit;gradientColor=inherit;'; var gn = ''; var dt = 'sysml constraint block '; var sb = this; var fns = [ this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;whiteSpace=wrap;', 200, 180, '' +
'<<constraint>>
' +
'ConstraintBlock1
' + 'constraints
' + '' +
'{{L1} x > y }
nested: ConstraintBlock2
' + 'parameters
' + '' +
'x: Real
y: Real
par Block1
', new mxGeometry(0, 0, 300, 170), s + 'package;labelX=120;align=left;spacingLeft=10;overflow=fill;whiteSpace=wrap;recursiveResize=0;'); bg.vertex = true; var cardCell2 = new mxCell('C1: Constraint', new mxGeometry(130, 50, 150, 100), inh + s + 'paramDgm;fontStyle=1;whiteSpace=wrap;align=center;'); cardCell2.vertex = true; bg.insert(cardCell2); var label1 = new mxCell('x:', new mxGeometry(0, 25, 0, 0), 'html=1;resizable=0;align=left;verticalAlign=middle;labelPosition=left;verticalLabelPosition=middle;labelBackgroundColor=none;fontSize=10;spacingLeft=22;fontStyle=1;'); label1.geometry.relative = false; label1.setConnectable(false); label1.vertex = true; cardCell2.insert(label1); var label2 = new mxCell('y:', new mxGeometry(0, 75, 0, 0), 'html=1;resizable=0;align=left;verticalAlign=middle;labelPosition=left;verticalLabelPosition=middle;labelBackgroundColor=none;fontSize=10;spacingLeft=22;fontStyle=1;'); label2.geometry.relative = false; label2.setConnectable(false); label2.vertex = true; cardCell2.insert(label2); var cardCell3 = new mxCell('length: Real', new mxGeometry(30, 65, 20, 20), inh + 'shape=rect;html=1;fontSize=10;verticalLabelPosition=top;verticalAlign=bottom;'); cardCell3.vertex = true; bg.insert(cardCell3); var cardCell4 = new mxCell('width: Real', new mxGeometry(30, 115, 20, 20), inh + 'shape=rect;html=1;fontSize=10;verticalLabelPosition=top;verticalAlign=bottom;'); cardCell4.vertex = true; bg.insert(cardCell4); var assoc1 = new mxCell('', new mxGeometry(0, 0, 0, 0), inh + 'endArrow=none;html=1;edgeStyle=none;exitY=0.25;exitX=0;entryY=0.5;entryX=1;'); assoc1.geometry.relative = true; assoc1.geometry.x=1; assoc1.edge = true; cardCell2.insertEdge(assoc1, true); cardCell3.insertEdge(assoc1, false); bg.insert(assoc1); var assoc2 = new mxCell('', new mxGeometry(0, 0, 0, 0), inh + 'endArrow=none;html=1;edgeStyle=none;exitY=0.75;exitX=0;entryY=0.5;entryX=1;'); assoc2.geometry.relative = true; assoc2.geometry.x=1; assoc2.edge = true; cardCell2.insertEdge(assoc2, true); cardCell4.insertEdge(assoc2, false); bg.insert(assoc2); return sb.createVertexTemplateFromCells([bg], 300, 170, 'Parametric Diagram'); }), this.addDataEntry(dt + 'constraint property', 150, 100, 'Constraint Property', '7VTLbsIwEPwaX1FIinrOo+VCpap8gUkW26ofkW1Kwtd3nRgoDaituPYQyZ7dsXdmIpOsVN3S0pa/mAYkyZ5IVlpj/LhSXQlSkjQRDckqkqYJfiR9vlGdD9WkpRa0/w0hHQkfVO5gRMo5yfLSaOctFdrHE53vZWzgXuGYFbYVjtM2oKpjQcHM9U7JGd5OVcUUNmyN9utIDYQ9Fx7WLa0DsEcOYlQKpnFb48hgEYgjgfXQ3ZQ1QFHTEowCb3ts2YvG89ixGKUnHATjR1oSQepGgJ24Z5dwEY26blo2MQ3nzBF5Ayonfllw4kA3wzZBeV/8O0qXsMX5iiBZ1FTmEVaiaQKtkHQD8tU44YW50r/6Vr7kFbR+Z9bsdFMaadDgShsNx3DEYcgmDOYwF6HZaji8CvZO8hvF1UZrqH3UdPrHfoosvR5ZH6uL+4N5mATT/wdzbzCPfw8Gt+cnbKhdvHCf'), this.addDataEntry(dt + 'constraint property', 150, 120, 'Constraint Property', '3VTLboMwEPwaHxMRk0a9xtDmkkpR0x9wwAGrflDbSUi/vmswIPJQK/VS9YDwzu7Y3pkFFCeyXhlalS86ZwLFTyhOjNauXck6YUIgHPEcxSnCOIIH4ec72VmTjSpqmHI/IeCWcKTiwFoE4YUAKqkAtu4sWnjxcfBXIpKagisUL6Oq7sOJ0xVA8wZyrHYTKnjhqzK4BjOADjvAqghvKoFGxHWUaWWdoRx66PAxp4ua6p3x/Q3btmAHJDO4B/SS9HvOuhqg7S55gFWXWDk+AI+UwaWTYFsKxxBb0sqjsi68o1N7tlJMfTcb4yUi+sjMXugT1Ow5GBGTU8kd21Y087wTsPojoBS0vOtrAwVTV0xL5swZSk48d2WoeGi9j0rGi7KjhYGIqG2BoucOYwKLMCm3pya+mpq6FfmVUXElkGGWf9JdE0ZezkGwMCepYHuvrW+ZZ1QsAyx5nnsaEXTHxEZb7ri+Ub++SI95hGbvhdEHlSdaaJjGVGnlsxZk56pYN5ulXs4OevNupV6rmOy1ctvQzax3B0xVLHOhrf47+841fNu135gxvzLj/C/NePyDZkA4/Kub3OhX/gU=') ]; this.addPalette('sysmlConstraint Blocks', 'SysML / Constraint Blocks', expand || false, mxUtils.bind(this, function(content) { for (var i = 0; i < fns.length; i++) { content.appendChild(fns[i](content)); } })); }; Sidebar.prototype.addSysMLActivitiesPalette = function(expand) { var s = 'html=1;shape=mxgraph.sysml.'; var inh = 'strokeColor=inherit;fillColor=inherit;gradientColor=inherit;'; var gn = ''; var dt = 'sysml activity '; var sb = this; var fns = [ this.createVertexTemplateEntry('shape=rect;html=1;rounded=1;whiteSpace=wrap;align=center;', 160, 80, 'Action', 'Action', null, null, this.getTagsForStencil(gn, '', dt + 'action').join(' ')), this.createVertexTemplateEntry(s + 'callBehAct;whiteSpace=wrap;align=center;', 160, 80, 'action name:\nbehavior name', 'Call Behavior Action', null, null, this.getTagsForStencil(gn, 'callBehAct', dt + 'call behavior action').join(' ')), this.createVertexTemplateEntry(s + 'accEvent;strokeWidth=2;whiteSpace=wrap;align=center;', 100, 60, 'Event', 'Accept Event Action', null, null, this.getTagsForStencil(gn, 'accEvent', dt + 'accept event action').join(' ')), this.createVertexTemplateEntry(s + 'timeEvent;strokeWidth=2;verticalLabelPosition=bottom;verticalAlignment=top;', 35, 40, '', 'Time Event', null, null, this.getTagsForStencil(gn, 'timeEvent', dt + 'time event').join(' ')), this.createVertexTemplateEntry(s + 'sendSigAct;strokeWidth=2;whiteSpace=wrap;align=center;', 100, 60, 'Signal', 'Send Signal Action', null, null, this.getTagsForStencil(gn, 'sendSigAct', dt + 'send signal action').join(' ')), this.createVertexTemplateEntry(s + 'actFinal;strokeWidth=2;verticalLabelPosition=bottom;verticalAlignment=top;', 40, 40, '', 'Activity Final', null, null, this.getTagsForStencil(gn, 'actFinal', dt + 'activity final').join(' ')), this.createVertexTemplateEntry(s + 'actParamNode;align=left;spacingLeft=15;verticalAlign=top;spacingTop=-3;', 300, 135, 'act', 'Activity Parameter Node', null, null, this.getTagsForStencil(gn, 'act', dt + 'activity parameter node').join(' ')), this.createVertexTemplateEntry('shape=rect;rounded=1;html=1;whiteSpace=wrap;align=center;', 160, 80, '<<controlOperator>>\nCallBehaviorAction', 'Control Operator', null, null, this.getTagsForStencil(gn, '', dt + 'control operator').join(' ')), this.createVertexTemplateEntry(s + 'package;align=left;spacingLeft=5;verticalAlign=top;spacingTop=-3;labelX=135;html=1;overflow=fill;', 250, 120, 'act [ControlOperator]
', 'Control Operator', null, null, this.getTagsForStencil(gn, 'package', dt + 'control operator').join(' ')), this.addDataEntry(dt + 'decision node', 200, 80, 'Decision Node', '7ZXJboMwEIafxneWpOo1kDSXVoqUJzBhBFaNB5kh29PXYIclTVS6ST30gDTzz+JhPpBZGBfHteZl/oIpSBauWBhrRLJWcYxBShZ4ImXhkgWBZx4WPN2J+m3UK7kGRVMKAluw57IGq1ihopN0QpXzsjF1jkVSVyyMcirMoEvfmHvQJHZcPvME5AYrQQKViSVIhMUgYSFFpgo7FWFpIu5kE4fj3elbyY2+BiyA9MmkuIJH+3Leyboz5x5ESvlYykFkOY01Xlk/6/r2izKG29XtvYUf7w3SDLbOBZngYdULwxW2MWPnqMUZFXETiHizrmbpduzxGof7BZUutG4bKFRNa421SqGZ0zOebMBEfPeatXqMEnWfWxHXdKnHEtRF24pzM7cfdKCa1xlhqrDWOxh9RhPIaZCcxH7c6hYJV7pBYTp2xH3vCp4ZNgNyWVf8umMnIZ29RzqPsprrlM2X36Z7ATiRpWPxGZam+q9SC7zxj/rwaxDntyCCrOCf4VcZ/jQz4/b3m00fXn9v'), this.createVertexTemplateEntry(s + 'flowFinal;strokeWidth=2;verticalLabelPosition=bottom;verticalAlignment=top;', 40, 40, '', 'Flow Final', null, null, this.getTagsForStencil(gn, 'flowFinal', dt + 'flow final').join(' ')), this.addDataEntry(dt + 'fork node', 200, 80, 'Fork Node', '7ZZNb8IwDIZ/Te8l5WNXKIzLJiFx2DlQr42WxlVqPn/90sZ8tAINIZB24IBkv7ZT532K1CCK8+3UyiL7xAR0EE2CKLaI5KN8G4PWgQhVEkTjQIjQ/QLxfqXaqathIS0YumVA+IG11CvwihdK2mkWykwWVWhh6Y4cZZS7LccdF34rrWPUaF1eksUf4Gy0BktqKfWHXICeYalIoXFdCyTC/KxhqFVqcr8sYeEqvJCrw/bqpWqJbzQFzIHszrXwQN/fOdyohDIvdb2SgUozPuONu2Tp8/R4zskvF7Bll+2L/rYPkhTmnIJe4GZyEs7NrGsuztCqPRqSuhJNMrS21g2aasLiyiRQPT50WUnS0qEDCzC1VpH44rtHh6652lcrdMTR42qzhsMlruwSGi/GDaZb0JLUunnUJVN5dIbKnSjCHZNpYXC7pkDc1CJxfOpNcLqPh3N4bZto2Pg2mjYGN/HvIPA/RoRMgaF0ngal94JyL5ToaVD6Lyj3Quk9DcrgBeVeKINHQXHp6VvMt59/qv0C'), this.createVertexTemplateEntry('shape=ellipse;html=1;fillColor=strokeColor;strokeWidth=2;verticalLabelPosition=bottom;verticalAlignment=top;perimeter=ellipsePerimeter;', 40, 40, '', 'Initial Node', null, null, this.getTagsForStencil(gn, '', dt + 'initial node').join(' ')), this.addDataEntry(dt + 'join node', 200, 80, 'Join Node', '7ZbJbsIwEIafxleUxC302kDLpZWQOPRskmni4mQiZ9j69J3EhrC0EhIg9UCkSLPb/j8fLOSwWI+tqvJ3TMEI+SLk0CKSs4r1EIwRUaBTIUciigL+RfT6RzZss0GlLJR0TkPkGpbKLMBFxCD+Ql3WFSQc6PV6YjByRTVtjC+qc1U1poWEl4lzKnjno5DNT23MEA1a9muyOAfvxUuwpBNl3tQMzARrTRpLrpohERZcYJpErJJ5ZnFRptspIpKf7bc349norOklrDjqz8A5WP+pQxvyIowBCyC74ZJtg+y7lpVOKXexBxfJQWe5H/Lk1AxU7fxsN6jTmA0v8++Sy1PJj+WFNIOpd8HMcPXSBfbFbnNs52j1N5akOBG34kGzWNCUlOmztW0VVsCaxY7Khz+ndDVT/d0sFkY7OZs9HIhZ48ImcHBtztDXglGkl4ejfpPPt0747lHHJQq84hvP5AgAKZsB+aYjBrtdnIXl4fpYtre1FV1ZOgKxh6bEEk7QnYJqp/w7VB5NeDM0j3c0l6GRN0PTv6O5DM3jzdAM7mguQzO4Fhp2uxedK99/8P0A'), this.addDataEntry(dt + 'is control', 300, 60, 'Is Control', 'zVTLboMwEPwaXyMCbaMeA0lzqlQpl/bowApbMjYymwD5+q7BQEgTKYdW6gFpd/bh8Qwyi5Ki2VleineTgWLRlkWJNQb7qGgSUIqFgcxYtGFhGNDHwrc71WVXDUpuQeMjA2E/cOLqCD2yTlEa3cMVtsrDAgsit1myKK4ELx1aNLnjvajaqlALWSVGozXUFddCIuxLnrq2mpoI40rmmtKUmIElwJ8MFqG5y76DPPUdmALQttTiB177ywW1zFD4AX/hQIDMhd/y4jFe9Xk+bpqkocCrc1up6IdSbBWn/sqrzQ/BIMth71NQB1NvJyC+ULOrUSyMlWdax52AFXKLa2u7iimBhIutOeoMHJvAjelsqGuj3U6npEy5WnuhDwbRFK61kfg5jFH85eLF83DMXp4dx2U4euKozxypzNGmMPtjHjDJguIoT/NVtyzwox9G0sYwaL3gV6YR1xzQN135Np76kJVPf2zl4MTcpps23jeN2LSjay6ZbKOl/860ZjDNu/bbJlI6vYp9++Wj+Q0='), this.addDataEntry(dt + 'is stream', 300, 60, 'Is Stream', 'zVTLboMwEPwaXyMCbaMeA0lzqlQpl/bowAos2RjZmwD5+q7BQEgTKYdW6gFpd/bhYQbMokQ1O8Or4l1nIFm0ZVFitMY+Uk0CUrIwEBmLNiwMA3pY+HanuuyqQcUNlPjIQNgPnLg8Qo+sUxS67GGLrfRwgYrIbZYsim3BK4eqJne8F7a1Si6ETXSJRlNXXBcCYV/x1LXV1EQYlyIvKU2JGRgC/MlgEJq77DvIU9+BVoCmpRY/8Nq/XFCLDAs/4F84KEDkhd/y4jFu+zwfN03SUODVua1U9EMptootGuCKrTY/9IIsh71PQR50vZ2A+ELMrkZxoY04k4Dc6WeRG1wb01V0BaRbbPSxzMCRCdxYmQ31UpdupxNSpFyuvc4HjaiVa20Efg5jFH+5ePE8HLMXZ8dxGY6WOOozQ6w+mhRmH8wDHhmQHMVpvuqWA370QwvaGAat1/vKM+KaA/qmK9vGUx9y8ulvnRyMmLt008X7ntGf1I6muWRyjZb+O8+awTNv2m97SOl0J/btl1fmNw=='), this.addDataEntry(dt + 'is stream', 300, 60, 'Is Stream', 'zVTJboMwEP0aXyMCbaUes58qVeKSHl0YYUtekJkEyNd3DCaQTcohhx6QZt4sfn7PgiUr3ewcL8WXzUGxZMOSlbMW+0g3K1CKxZHMWbJmcRzRx+Ltg+q8q0Yld2DwmYG4HzhydYAeWWQorenhClsVYIGayK3nLFlWgpce1U3hec+qttJqJqsUHXBNDbWQCGnJM99VUw9hXMnCUJoRMXAEhIPBITQPyXdQYL4DqwFdSy1h4LO/W1TLHEUYCPeNBMhChC0fAeNVnxfnTaMyFARx7guV3Ah1IxHkBaQhBfVr680ILCf6dTWKhXXyZA1y5UVF7nDhXFexJZBWS2cPJgdPIPJjJh/qxhq/ExqJ+6FK8Y+PZ+/DtlSePJV5fFbbM7zQurIHl8HFU3hCfgeKozxerronbhj9tpI2xlEbpLyyg7gWgKHpypHzqU+Z9PZ6k/wDlVln0cSABwYR0f00GQ2h2X9nRzPYEfx4tT2Ujj+yvn36n/sD'), this.addEntry(dt + 'is stream', function() { var cardCell = new mxCell('act', new mxGeometry(0, 0, 200, 100), s + 'isActStream;align=left;spacingLeft=5;verticalAlign=top;spacingTop=-3;whiteSpace=wrap;'); cardCell.vertex = true; var label1 = new mxCell('{stream}', new mxGeometry(200, 50, 0, 0), 'resizable=0;html=1;align=left;verticalAlign=top;labelPosition=left;verticalLabelPosition=middle;labelBackgroundColor=none;fontSize=10;spacingTop=5;'); label1.geometry.relative = false; label1.setConnectable(false); label1.vertex = true; cardCell.insert(label1); return sb.createVertexTemplateFromCells([cardCell], 250, 100, 'Is Stream'); }), this.addDataEntry(dt + 'local pre precondition post postcondition', 150, 180, 'Local Pre- and Postconditions', '5ZVNb4MwDIZ/Te6QtL33a71s0qQeds7Ag2ghQcEtbX/9HEhbEEWqtHWatAPCfp03kCeGMLEsDhsny/zFpqCZWDOxdNZiGxWHJWjNeKRSJlaM84guxp9GqnFTjUrpwOA9Bt4a9lLvoFW0TaR+dZBYkypU1jA+Y1zEERML0ip0UtHcja3Cow62KpelD41Fui1yLGgtq5jCSp18IZ76GJ39hDeVYk4SJ0VqlRmKNXygH1DKRJnsuclW3lLnCmFLsp+kJlAdU0KrBEdCWAU4hMMoiUYKGDZgC0B3pCF1eBs/ItCKclBZHmyToMmqzbOL9cqVgoD2NmYxwDxPWrYjGIk/9jE6uzMppGeoA5AP53Q2BBzHNp1N27RLMbpBcfoDFCcjzWor/DfdGgy8vwvxuUm72yAe1MzTwTYM+EKawTakoN9tvb4KXdpNjeLcOnWyBqXudbrfRTDp3LlmlLEGLvj8I3rwKrtzCfR+ayhdBtj7BO9A7EBLVPv+7N8BNvv7wMQQ2OTXgFF6PfGaWu9A/AI='), this.addDataEntry(dt + 'merge node', 200, 80, 'Merge Node', '7ZXPboMwDMafJncInbRrS7teNqlSnyAUC6KFGAXTf0+/hKQUunbrpE7aYQck53PsON8PKSxJq/3SiLp8wxwUSxYsSQ0i+ajap6AU45HMWTJnnEf2Y/zlRjbuslEtDGi6p4D7gq1QLXjFCw0dVBCaUtQuNCVWWduwZFZSZQedxzbcgiG5EepVZKBW2EiSqG2OsB5kp0oWuvIjZUiElU2Gk+0W2N+cvpPC6EvACsgc7JZQ8OwvF+1kTqWXJkEqQRYljTXR+HXRNzo7Y4NgznWjku+NgryAdViCynC3OAtDz7qcjUs08oiahE3MhLPIuezHHls3tM1gq3NwU0V2pZzvM7F5Lzo9RYXGpjRqdyjofGpMdxjWoL2ylkc3Ycx7Bm7wEYEGW7OB0R9yBxQDSpDcjltd8zyUrlDajj3MOAqYDmO4pw4kTAEUii7A9VPcxXLyeJYnXF+Ra+wN6DOPkxKY/YRv1/Gv8uQXPPmv8Xz65/mbPB/Nzy7PD5zfPnz/PgA='), this.addDataEntry(dt + 'no buffer', 300, 60, 'No Buffer', 'zZTBboMwDIafJteKwlZpx9JuPU2a1Mt2TMGFSCFGwW2hTz8HApSulXrYoQck+4/t2P4AEa2KemNlmX9iClpE7yJaWUTqrKJegdYiDFQqorUIw4AfEX7cOZ23p0EpLRh6JCHsEo5SH6BTlgkpNJ1cUaO9nFPBza3nIoqrXJZOLerM9T2rmqrQM1Wt0JBFjopPuSLYljJxYScOYk1qlRl2E+4MLAv+ZrAE9d3uW8m3vgEsgGzDIT7hrRsuOKmUcp/gBw5yUFnuqyy8JqvOz4ZK42rY8Nu5vanoz6ZEuJCFG01TO86lZzA+7Pc8Z69mkxjvXe0Y0gy23gW9w9P7KMQXANoztnO06sxLl27nFUlLS2vbEyyBdx1bPJgU3ACBSzNpf27QuJpu+SqReunZ7JAICxdaK/ru09j+cfbstb9mq86ux3k4TOFan0Cs8GATmLxkD3C1oCWp47TULWo+9QsVVwyDxjO64sy9ZkA+6Ar1cOtD9F+ej34Pb0r2Jvn7nPmLbQbQzhlJc9Gn41z3nD3o/+bO7vjv7cIvf82/'), this.createVertexTemplateEntry('shape=rect;html=1;whiteSpace=wrap;align=center;', 160, 80, 'object node name:\n type name\n[state, state ...]', 'Object Node', null, null, this.getTagsForStencil(gn, '', dt + 'object node').join(' ')), this.addEntry(dt + 'object node', function() { var cardCell = new mxCell('Action', new mxGeometry(0, 0, 120, 60), s + 'isControl;whiteSpace=wrap;align=center;'); cardCell.vertex = true; var label1 = new mxCell('pin name: type name\n[state, state ...]', new mxGeometry(0, 30, 0, 0), 'resizable=0;html=1;align=right;verticalAlign=middle;labelPosition=left;verticalLabelPosition=middle;labelBackgroundColor=none;spacingRight=5;'); label1.geometry.relative = false; label1.setConnectable(false); label1.vertex = true; cardCell.insert(label1); return sb.createVertexTemplateFromCells([cardCell], cardCell.geometry.width, cardCell.geometry.height, 'Object Node'); }), this.addDataEntry(dt + 'optional', 300, 60, 'Optional', 'zZTBboMwDIafJteKwlZpx9J2PU2a1Mt2TMGCSAlGwS3Qp58DAUrXSj3ssAOS/cd2bH+AiDam2VtZ5h+YghbRTkQbi0i9ZZoNaC3CQKUi2oowDPgR4fuD02V3GpTSQkHPJIR9wlnqE/TKOiGFRS9X1Gov52S4ue1SRHGVy9Kppslc34uqrYxeqGqDBVnkqLjOFcGhlIkLqzmINalVVrCbcGdgWfA3gyVoHnbfSb71PaABsi2H+IS3frigVinlPsEPHOSgstxXWXlNVr2fjZWm1bDht3N/U9GvTYlwJY0bTVM3zrWHpdui1KOazWK8d7NjSDM4eBf0EevdJMRXALoztnO06sJLl27nFUlLa2u7EyyBdx1bPBUpuAECl1akw3mBhavplq8SqdeezRGJ0LjQRtHXkMb2t7MXr8M1B3VxPS7DcQrX+gxihSebwOwle4KrBS1Jneel7lHzqZ+ouGIYtJ7RDWfuNQPyQTeox1ufov/y/+gP8OZk75J/zJm/2HYE7ZyJNBf9d5ybgbMH/dfc2Z3+vX349a/5Bw=='), this.addEntry(dt + 'optional', function() { var cardCell = new mxCell('act', new mxGeometry(0, 0, 200, 100), s + 'isActStream;align=left;spacingLeft=5;verticalAlign=top;spacingTop=-3;fontStyle=1;'); cardCell.vertex = true; var label1 = new mxCell('<<optional>>', new mxGeometry(200, 50, 0, 0), 'resizable=0;html=1;align=left;verticalAlign=top;labelPosition=left;verticalLabelPosition=middle;labelBackgroundColor=none;fontSize=10;spacingTop=5;'); label1.geometry.relative = false; label1.setConnectable(false); label1.vertex = true; cardCell.insert(label1); return sb.createVertexTemplateFromCells([cardCell], cardCell.geometry.width, cardCell.geometry.height, 'Optional'); }), this.addDataEntry(dt + 'overwrite', 300, 60, 'Overwrite', 'zZTBboMwDIafJteKwlZpx9J2PU2a1Mt2TMGCSCFGwS3Qp58DAUrXSj3ssAOS/cd2bH+AiDZFs7eyzD8wBS2inYg2FpF6q2g2oLUIA5WKaCvCMOBHhO8PTpfdaVBKC4aeSQj7hLPUJ+iVdUIKTS9X1Gov51Rwc9uliOIql6VTiyZzfS+qtir0QlUbNGSRo+I6VwSHUiYurOYg1qRWmWE34c7AsuBvBkvQPOy+k3zre8ACyLYc4hPe+uGCWqWU+wQ/cJCDynJfZeU1WfV+NlaaVsOG3879TUW/NiXClSzcaJq6ca495Llqy1sY5WwW5L2bJUOawcG7oI9Y7yYhviLQnbGdo1UX3rp0S69IWlpb251gCbzs2OLJpOAmCFyaSYdzg8bVdNtXidRrD+eIRFi40EbR15DG9rezF6/DNQd1cT0uw3EK1/qMYoUnm8DsLXsCrAUtSZ3npe5h86mfqLhiGLQe0g1o7jUD8kE3rMdbn8L/8g/xD/TmaO+ifwyav9l2JO2cCTUX/XegmwG0J/3X4Nmd/r59+PXP+Qc='), this.createVertexTemplateEntry(s + 'paramSet;whiteSpace=wrap;align=center;', 160, 100, 'Action', 'Parameter Set', null, null, this.getTagsForStencil(gn, 'paramSet', dt + 'parameter set').join(' ')), this.createVertexTemplateEntry(s + 'paramActSet;align=left;spacingLeft=15;verticalAlign=top;spacingTop=-3;fontStyle=1;', 250, 120, 'act', 'Parameter Set', null, null, this.getTagsForStencil(gn, 'paramActSet', dt + 'parameter set').join(' ')), this.addDataEntry(dt + 'probability', 120, 160, 'Probability', 'zVTLboMwEPwaXyNi2uQcoM2llSqlP2DMBqwaG9lOA/n6rsEhb7WRqqoHJO/sjj2eQSZxWrdLw5rqVRcgSfxE4tRo7YZV3aYgJaGRKEicEUoj/Ah9vtGd9t2oYQaU+wmBDoRPJjcwIAvuhFYDbF0nA1y5GsVlUxIntmKNR+u29LontrO1nDRG5ywXUrgOZ7aVcLBqGPeDWxxDjElRKiw5agODQDgbjIP2pv4eCuKXoGtwpsORrShcFSbCHaMKRFntabMAMjsA5cg92IGL4Mh1d+ILd8g88fqO7oqH+86M0HiKy6QfXjXAxVpwNngZkXl24agBK3Ys70tPPHJ475SEtfNbokO4l1wEONfO6RobkuUg37QV/TEX8y9n7VNewvhHafRGFamWGvPIlFYoJllr5VZi53X1N7IYo1BlEtgZfRyz41op4C7cYvzbvsuUXs+0PcuzG+qHX0jy4X8m6XRzf4xHpHszfPfUPw9wrO9IEMvDK9j3Th7JLw=='), this.addDataEntry(dt + 'probability', 120, 160, 'Probability', 'zVRdb4MgFP01PK6x0I/nqVtfuqRJ9wdQqZIh1yDttL9+gFRb22Zrsix7MOGec0+4nCMgEpXNStGqeIOMCUReEIkUgO5WZRMxIRAOeIZIjDAOzIfw6x126tigoopJ/RMB7gQHKvasQ2iqO6zWrfBYoUszWTxFJKwLWlm0bHI79KRu61JMjGijIDE8FTyXhhdsp217RVMu87Wr4rlBDkxpnlLx7Bs1VEPfuy3iJ2KQHUi99SPYjf2gRs2au4d1kD/pikHJtGpNyyfPdOE7vCFBwXhenGQLD9K6A/JeO3hnFt6+21aSKyvRMrTzGWNowgXXdhTHLBAm08CaYZu3FUv5zniiOUjbsoyvElCs5keauNIKzxIZOT72NwGtoTSEoAkTG6i52+aqfz2iL3UhTT9yBXuZRSBAGV6CZKeY+NGlFAxBhl4d43mfXQpSslT7U/S/5neZ4tuZNqM8266e/UKSs/+ZZHdTHozxTPRoht1l/OsA+/qBBE05PJmOu3hRvwA='), this.createVertexTemplateEntry('shape=rect;html=1;whiteSpace=wrap;align=center;', 120, 60, '<<continuous>>\nObject Node', 'Rate', null, null, this.getTagsForStencil(gn, '', dt + 'rate').join(' ')), this.createVertexTemplateEntry('shape=rect;html=1;whiteSpace=wrap;align=center;', 120, 60, '<<discrete>>\nObject Node', 'Rate', null, null, this.getTagsForStencil(gn, '', dt + 'rate').join(' ')), this.createVertexTemplateEntry('shape=rect;html=1;whiteSpace=wrap;align=center;', 140, 120, '{ rate = constant }\n{ rate = distribution }\n<<continuous>>\n<<discrete>>\nObject Node', 'Rate', null, null, this.getTagsForStencil(gn, '', dt + 'rate').join(' ')), this.createVertexTemplateEntry('shape=rect;html=1;overflow=fill;whiteSpace=wrap;', 140, 80, '' + 'Object Node
' +
'<<rate>>
' +
'rate = constant
' +
'rate = distribution
sd Interaction1
', 'Sequence Diagram', null, null, this.getTagsForStencil(gn, 'package', dt + 'sequence diagram').join(' ')), this.addEntry(dt + 'lifeline', function() { var cardCell = new mxCell('b1:Block1', new mxGeometry(0, 0, 160, 60), 'shape=rect;html=1;whiteSpace=wrap;align=center;'); cardCell.vertex = true; var assoc1 = new mxCell('', new mxGeometry(0, 0, 0, 0), 'edgeStyle=none;html=1;dashed=1;endArrow=none;align=center;verticalAlign=bottom;exitX=0.5;exitY=1;'); assoc1.geometry.setTerminalPoint(new mxPoint(80, 150), false); assoc1.geometry.relative = true; assoc1.geometry.x = 1; assoc1.edge = true; cardCell.insertEdge(assoc1, true); return sb.createVertexTemplateFromCells([cardCell, assoc1], 160, 150, 'Lifeline'); }), this.addDataEntry(dt + 'execution specification', 160, 220, 'Execution Specification', 'xZTbboMwDIafJveU7NDbQrdeTZrUJ8iIR6IFgkJa6NvPJS40W6sxddKQkOLTj/1hhfG86jdONOrFSjCMPzGeO2t9OFV9DsawNNGS8TVL0wRflj5fiS6GaNIIB7WfU5CGgr0wOwietwXjq8zY4oPEWn8wFGuVaI5HBwWqZ8pX2PAaC7JOaQ/bRhTHcIfjoE8YXdZoFtgLOHTQt8B56K/2O7io2Q3YCrw7YEqnpVeU8RBmShToUlHZySfaYJdj6TQ9HgjAZRj8G4xfEHjXxuTWWDckchieG4emgkea7UDJCdlnTNILSJZ/gOTuZyQgS9iSWdsaYixStAokGVDLlXO2mzKD2lEiYtPanSsgWlEvXAk++lEzCDowwut9rH4LkPv/BzJ/+njhZrMgoVerUX9UWcZbOK7cSSH8ICr6AnTs6RJjNKcLL6Sf34ef'), this.addDataEntry(dt + 'execution specification', 160, 220, 'Execution Specification', 'zZTNbsIwDMefJvfSbBNXKBsnpEl9giyxmmhpU6WBlrefIaaQUaRKm7QdKsVf/9q/WGG8qIetF63eOQWW8VfGC+9ciKd6KMBalmdGMb5heZ7hx/K3B9HFOZq1wkMT5hTkseAg7B6i52PB+GptnfwksS4cLcU6LdrT0YNE9bUONTa8wYJ1r02AshXyFO5xHPQJa6oGTYm9gEcH/Qt8gOFhv2cXNbsFV0PwR0zpjQqaMl7iTJkGU2kqu/hEF+1qLL1OjwcCMA2D38GAAWTZgvxPJKiALjY7UnJG9i2ofALU8hdAPd2BugMEqoKSzMY1kEJSotOgyIBGrbx3/TUzqp0kEjid23sJyeIG4SsIyfXNQOjBimAOqfpPgDz/PZD506cbN5sFCb07g/qjyjJdw3EtLwrxgqjoG9CxpynGaF6fwZh++0p+AQ=='), this.addEntry(dt + 'use', function() { var cardCell = new mxCell('Interaction3', new mxGeometry(0, 0, 160, 60), s + 'package;labelX=40;whiteSpace=wrap;align=center;'); cardCell.vertex = true; var label1 = new mxCell('ref', new mxGeometry(0, 0, 0, 0), 'html=1;align=left;verticalAlign=top;labelPosition=left;verticalLabelPosition=top;labelBackgroundColor=none;spacingLeft=5;spacingTop=-2;fontStyle=1;'); label1.geometry.relative = false; label1.setConnectable(false); label1.vertex = true; cardCell.insert(label1); return sb.createVertexTemplateFromCells([cardCell], cardCell.geometry.width, cardCell.geometry.height, 'Interaction Use'); }), this.addEntry(dt + 'combined fragment', function() { var bg = new mxCell('sd Interaction1
', new mxGeometry(0, 0, 350, 320), s + 'package;labelX=100;html=1;overflow=fill;strokeWidth=1;recursiveResize=0;'); bg.vertex = true; var cardCell2 = new mxCell('b1: Block1', new mxGeometry(30, 40, 80, 30), inh + 'shape=rect;html=1;whiteSpace=wrap;align=center;'); cardCell2.vertex = true; bg.insert(cardCell2); var cardCell3 = new mxCell('b2: Block2', new mxGeometry(140, 40, 80, 30), inh + 'shape=rect;html=1;whiteSpace=wrap;align=center;'); cardCell3.vertex = true; bg.insert(cardCell3); var cardCell4 = new mxCell('b3: Block3', new mxGeometry(250, 40, 80, 30), inh + 'shape=rect;html=1;whiteSpace=wrap;align=center;'); cardCell4.vertex = true; bg.insert(cardCell4); var cardCell5 = new mxCell('alt', new mxGeometry(20, 90, 200, 160), inh + s + 'package;labelX=35;fontStyle=1;align=left;verticalAlign=top;spacingLeft=5;spacingTop=-3;'); cardCell5.vertex = true; bg.insert(cardCell5); var assoc1 = new mxCell('', new mxGeometry(0, 0, 0, 0), inh + 'endArrow=none;html=1;edgeStyle=none;dashed=1;'); assoc1.geometry.setTerminalPoint(new mxPoint(70, 300), false); assoc1.geometry.relative = true; assoc1.edge = true; cardCell2.insertEdge(assoc1, true); bg.insert(assoc1); var assoc2 = new mxCell('', new mxGeometry(0, 0, 0, 0), inh + 'endArrow=none;html=1;edgeStyle=none;dashed=1;'); assoc2.geometry.setTerminalPoint(new mxPoint(180, 300), false); assoc2.geometry.relative = true; assoc2.edge = true; bg.insert(assoc2); cardCell3.insertEdge(assoc2, true); var assoc3 = new mxCell('', new mxGeometry(0, 0, 0, 0), inh + 'endArrow=none;html=1;edgeStyle=none;dashed=1;'); assoc3.geometry.setTerminalPoint(new mxPoint(290, 300), false); assoc3.geometry.relative = true; assoc3.edge = true; bg.insert(assoc3); cardCell4.insertEdge(assoc3, true); var assoc4 = new mxCell('', new mxGeometry(0, 0, 0, 0), inh + 'endArrow=none;html=1;edgeStyle=none;dashed=1;'); assoc4.geometry.setTerminalPoint(new mxPoint(20, 170), false); assoc4.geometry.setTerminalPoint(new mxPoint(220, 170), true); assoc4.geometry.relative = true; assoc4.edge = true; bg.insert(assoc4); var assoc5 = new mxCell('[if x < 10]', new mxGeometry(0, 0, 0, 0), inh + 'endArrow=open;html=1;edgeStyle=none;verticalAlign=bottom;labelBackgroundColor=none;endSize=12;'); assoc5.geometry.setTerminalPoint(new mxPoint(70, 150), true); assoc5.geometry.setTerminalPoint(new mxPoint(180, 150), false); assoc5.geometry.relative = true; assoc5.geometry.x = -1; assoc5.edge = true; bg.insert(assoc5); var label1 = new mxCell('msg1', new mxGeometry(1, 0, 0, 0), 'align=right;html=1;verticalAlign=bottom;labelBackgroundColor=none;'); label1.geometry.relative = true; label1.setConnectable(false); label1.vertex = true; assoc5.insert(label1); var assoc6 = new mxCell('[else]', new mxGeometry(0, 0, 0, 0), inh + 'endArrow=open;html=1;edgeStyle=none;verticalAlign=bottom;labelBackgroundColor=none;align=right;endSize=12;'); assoc6.geometry.setTerminalPoint(new mxPoint(70, 230), true); assoc6.geometry.setTerminalPoint(new mxPoint(180, 230), false); assoc6.geometry.relative = true; assoc6.geometry.x = -1; assoc6.edge = true; bg.insert(assoc6); var label2 = new mxCell('msg2', new mxGeometry(1, 0, 0, 0), 'align=right;html=1;verticalAlign=bottom;labelBackgroundColor=none;'); label2.geometry.relative = true; label2.setConnectable(false); label2.vertex = true; assoc6.insert(label2); bg.insert(assoc6); var assoc7 = new mxCell('msg3', new mxGeometry(0, 0, 0, 0), inh + 'endArrow=open;html=1;edgeStyle=none;verticalAlign=bottom;labelBackgroundColor=none;endSize=12;'); assoc7.geometry.setTerminalPoint(new mxPoint(70, 290), true); assoc7.geometry.setTerminalPoint(new mxPoint(290, 290), false); assoc7.geometry.relative = true; assoc7.edge = true; bg.insert(assoc7); return sb.createVertexTemplateFromCells([bg], 350, 320, 'Combined Fragment'); }), this.addDataEntry(dt + 'state invariant configuration', 120, 220, 'State Invariant / Continuations', 'xVTLboMwEPwaXyMCpfeEtDlFqpRTjxbeYksGI9sJ8Pdd4gVCHhJSpfSAvM9hZ7wyS7Ky3Vtey4MRoFnywZLMGuODVbYZaM3iSAmW7FgcR/ix+PNJdn3JRjW3UPklDXFoOHN9ghBhyeY7BJ3vNAWd5HVvWsgRdit9iZPu1mg2Unk41jzv0w3ywBjXqqjQzXEIsBign4D10D4d9BKiKfdgSvC2w5JGCS+pgshEElQhqS2lGHfBL8bWiTYaxPyxCsmdCnV/IMP0Toor7oMqZVv0F7hynSv1Kjc9o+0PHkdqe4lQHWUjEuQVwr3dr8+tXiAKGHSoTAXz9RHcSRDkQCU21ppmqgxoPcRMDWdONofZBntuC/Cz61ygmQXNvTrP0f8iSPr/gixnP1+xxVoQ0JdRiD+ivNM60RoOD8+IEC6Imm4EHWd6pDG603sYyq+fy18='), this.addDataEntry(dt + 'coregion', 250, 220, 'Coregion', '1ZbJbsIwEEC/xleUtdAjkJZTpUocenaTaWLVyUS22fr1dbATSAIqKkvpAcmzZuaNbUz8ab6eCVpmL5gAJ/4T8acCUZlVvp4C58RzWEL8iHieo3/Eez5idbdWp6QCCnVKgGcClpQvwGgkCScLEkbEH0+MUaoNr40ZLaulgFinn2Qq1xVHrl6uMqZgXtK4Mq90P1pHOUsLLca6GBBaYT8GQsH6aMFbla12BpiDEhvtsmKJyqyHY5pyMmBpZsNCq6PSyGkTumtfLyyBwzT8Ho0egb2Waxj5Oq3mN5AbmfNBjAJShkXloAR+wpst3D8TgA0IbJ+bDos9Pt4BPMML4Al+xlMz0YGslNDeIx+M8yly1FshMmysdBEuozYXd9TjEvSxBOdTCf8TleBWVB5+pgJJCnMrFlh0sCRUZpBYAYpkLASudp4CF0WytTsNqSphi5PEhYihddMpKlJot3kCTQGcKrZsZz8Hz/De8AR9POHf4RndG54rsLChr8h0xubAhu3rvbnL6wxmQDaoA7Sp4iTGjz3GuX9ZylIXq2odllD9J1a3GYspH9u3wTsqhXntPGdf1Zdc74wtfP0ZdYfkXm9IrtOf0oXPwo2ndLOT1JtS94X46ylpcfdCN+77D/hv'), this.addDataEntry(dt + 'creation destruction event', 250, 220, 'Creation/Destruction Event', '1ZfdcqMgFICfxnsFTdvLJO32ZjvTmTwB0bPKFMUBUpM+/aKgCZJO7ean2cxkhvMr5zsIEuBluX0WpC5eeAYswE8BXgrOlRmV2yUwFqCQZgF+DBAK9T9Avz6xRp01rImASk0JQCbgnbANGM06CvB8wXj6ZpNJtWPWJgtSt0MBqc6+KFSpJ/yoAxZNQRWsapK25kaXo3WE0bzSYqrnAkIr7LNAKNh+Ot9OZSf7DLwEJXbapaGZKqxHaGoKC6B5YcOw1RFp5HwI3VevBxbAcRjYh4F6GOiWYPQBiS16Z+TYitdgFXusvgL0hzK25IyLzoqh+7ngzsHkwWVy5zNBR5AMnE5hkkxnogNpLWGERSrB38BKZwYT3ztcEuxxiX0s8elQZv8RlKiXL07l7msqkOWwsmLFqxZLRmQBmS0fqmwuBG/25gM2gm+qrHMNB1JtQoeT5BuRgnMQKCJyUM5ynkBTACOKvrvZT8Fzf2t4Eh/P7OfwPNwanguwsKGvnOqMwws7OvGGvbzPYBpkg0ZAh1lMYhyFHuRUAFEwBfUBXV6DPvcX7TZFU8Lm9jtgzZXipXFd0Y82NkLnX6T4Wo0Zdya6YGei7y1/YGvePO0VR7rTuWix79J5+zLz+xL/WF+Sy/XFv0x8812RO/nye+vAbwtzd65TOnE97OFooxp/X/4zdi3ur4fG/fD2+Bc='), this.addDataEntry(dt + 'duration constraint', 250, 250, 'Duration Constraint', 'zZbNjpswEMefxpdKQXwsjXoMod1DVW2ltA/g4hFYMhjZzibp03ccuwnBREFbVO0himfsGWZ+/5GBZNv2+Kxo33yTDATJPpNsq6Q0btUetyAESWPOSFaSNI3xR9Ivd3aT827cUwWdmROQuoBXKvbgPCTb/NSgnF+bk/B+3dDeLhVUmLloTIvFlgkuDw03sOtpZbcP2Ar6qOB1h2aFdWCyrPDPAWXgeLfWs8sX+gyyBaNOeOTAmWn8idj1EzfA68aH5d5HtbPrS+i1c1z45qdBZCGIdcGiKPvAyLoMaAza/wumPdZWxkifdCsixlvoNJcIoVDSUHNelqtPMTosBl5RsfGUjLTMNCLkXf3DGuUq/xdiPmDl1Y9PI3qPiD4tQPQpJDqmCKyGnTc72eFfwahugHm00LGNUvJw3R5wd9lsihs6Wu5VBTfTPQOYAoESvd6mmureh36XHDNeQOe3nIOJNFTVYHzQCOGlillU84DqFu8N9Nh9tldu0GaAHpAcYJY9dBMD+ksaI1t3dMd/2zRJel+D/w58PeLthiDgHaR5lGc53T6GulHFXva2GLxp4ihKsqmLZjHl/O1SeLvM36+ayUwZHsoZJLozF2/Qcx3o+fJ1cfEm3gvvWLY0Xkq28evnzbKhef2WcseHn1p/AA=='), this.addDataEntry(dt + 'duration constraint', 250, 200, 'Time Constraint', '3ZbbUoMwEIafJpcyHFq5LqC9cJw6U18gJStkDIQJoQef3kBiQZFprVSrF0yzm/13tv9HMiAvzLZzgYv0nhNgyLtBXig4l3qVbUNgDLk2JciLkOva6kHu7cCu0+zaBRaQy2MErhasMatAZ3SilDtmEkASWJow57n6CVKZqUkjRy0JLlMgJoCczITgm7ZSd6tbDA7YpMx0c+AZSLFTJQIYlnT9XodLHSb7ur30gVPV0bW35o/Z7xUlr0QMpqhryIBu9xZ+6COxSED2+qhFZ/o21dj9ufXev7XeO9V778fMn/TMD7Egi6qeBvmBbVmOh/zoi0Q6EHgBucqsQUgaYzZjNFFxtOJS8kxtlAWOaZ4EJo6mWr6kL3Vrx72Es2MwOJPjMBzk2Ws08GKcwHPa47m4Gx2e5EVL7rEOLhqbPxY252zYrvt3oB9Iy1J9g++dP7OJDTpBk1SZHzC8Ahbg+DkRvMpJyBkXY1yZxroro/htkkPC8cj5PXKy8XEzGjIGT3+I2KGr7ujDNz3XnanC9rtSl3c/O18B'), this.addDataEntry(dt + 'message', 250, 250, 'Message', 'zZbfboIwFMafhmS7gzJ1t4LTqyVLeIIKJ9CsUFKqyJ5+B1tUQDNHCHpB6L/zcc7vowXL9dPDRtI8+RQRcMv9sFxfCqF0Kz34wLlFbBZZ7soixMbLIusbs85x1s6phEzdE0B0wJ7yHeiRrWO5S4+L8NuIFariZq5IaF43JYSo7iUqxYRXGOCVCVMQ5DSsp0ssB8coZ3GG3RBzAYkD5lkgFRxu5nscMsluQKSgZIVLShapxKywdU12AixOTJhrxmih+/Ep9Fw9NgyA6zDcPgzSwCDPBKMJmJmip4Dz1oPTIwJRDIHpZiLDmxfRIoHIcLlABFm0lFKU55VarZZo0SjETobQelnvACSBU8X2balr1ZvQL8FQ8QS24VqZ5846/BSVMSgT1EF4yuIuqrPHU3WnokrsybDOe1hpUWVhgHuQ8nsIX4cqcsA97NWbloWUL82e3gqlRKqXBuynlnHIbfiTv7+LDmftfo/zn4Z1dcbza9Hzq7bLp5y/IC2avg73bFuf3v8wDbtrxhuhZ7HQmY/kYU9oPBPfB51lo+y0tmmt4/FhDvaOO3ughd2vUVdnsIPYPf9p6uWXP6K/'), this.createEdgeTemplateEntry('edgeStyle=none;html=1;endArrow=sysMLLost;endSize=12;verticalAlign=bottom;', 160, 0, 'lost', 'Lost Message', null, this.getTagsForStencil(gn, '', dt + 'lost message').join(' ')), this.createEdgeTemplateEntry('edgeStyle=none;html=1;endArrow=open;endSize=12;verticalAlign=bottom;startArrow=sysMLFound;startSize=12;', 160, 0, 'found', 'Found Message', null, this.getTagsForStencil(gn, '', dt + 'found message').join(' ')), this.createEdgeTemplateEntry('edgeStyle=none;html=1;endArrow=none;verticalAlign=bottom;dashed=1;strokeWidth=2;', 160, 0, '', 'General Ordering', null, this.getTagsForStencil(gn, '', dt + 'general ordering').join(' ')) ]; this.addPalette('sysmlInteractions', 'SysML / Interactions', expand || false, mxUtils.bind(this, function(content) { for (var i = 0; i < fns.length; i++) { content.appendChild(fns[i](content)); } })); }; Sidebar.prototype.addSysMLStateMachinesPalette = function(expand) { var s = 'shape=mxgraph.sysml.'; var inh = 'strokeColor=inherit;fillColor=inherit;gradientColor=inherit;'; var gn = ''; var dt = 'sysml state machine '; var sb = this; var fns = [ this.addDataEntry(dt + 'choice pseudo state', 150, 100, 'Choice Pseudo State', 'zZXbcoIwEIafJvcctPeC1ulFZ5zxCYLZQqaBZUJQ9OmbkKCgMqVjnfaCmd1/k+zyfxxIGOfNWtIye0cGgoQrEsYSUdkob2IQggQeZyRckiDw9EWC15Gq31a9kkoo1JQNgd2wp6IGq1ihUkfhhCqjpQllhnlSVySMMpXrQZe+DgVNQGyw4opjYRbxNNONIyp4anIBHybdg1R8R8XCyTlnTJ9ve+saNKPzt5Ibfg2Yg5JHveTo5re35x04U5mVZk7KwM7S12hl8/R80MUbHTh77lsVfm8VsBS2LgWR4GF1EfqutTUdZyj5CQtFRc+yzsJrzxJUCnNdkFgXDMxUXkcgorvPtNVjFCh1qcDCNIWCLaRsm2EJhVW2/GQm9LWvkb0HM/iAgKIyBTV4RiZAkSCo4vvhUfc8d1s3yPWJgdcMYXY7KqzlDtyiK1DnrpPYzW7ZzaM3RoIXYaw2ZnhkvnwYaMfsDs5bEj/kOIGaNeyPqLk30veuKNpH6TcozkcppsbhpyF0H7HHCI6+zv8YrT9/FludXn5ydnn/H/gF'), this.addEntry(dt + 'composite state', function() { var bg = new mxCell('CompositeState1', new mxGeometry(0, 0, 220, 190), s + 'compState;align=left;verticalAlign=top;spacingTop=-3;spacingLeft=18;strokeWidth=1;recursiveResize=0;html=1;'); bg.vertex = true; var cardCell2 = new mxCell('', new mxGeometry(20, 50, 20, 20), 'shape=ellipse;html=1;fillColor=strokeColor;verticalLabelPosition=bottom;labelBackgroundColor=#ffffff;verticalAlign=top;'); cardCell2.vertex = true; bg.insert(cardCell2); var cardCell3 = new mxCell('State1', new mxGeometry(80, 60, 100, 40), inh + 'shape=rect;html=1;rounded=1;whiteSpace=wrap;align=center;'); cardCell3.vertex = true; bg.insert(cardCell3); var cardCell4 = new mxCell('State2', new mxGeometry(80, 130, 100, 40), inh + 'shape=rect;html=1;rounded=1;whiteSpace=wrap;align=center;'); cardCell4.vertex = true; bg.insert(cardCell4); var edge1 = new mxCell('', new mxGeometry(0, 0, 0, 0), inh + 'edgeStyle=none;html=1;endArrow=open;endSize=12;'); edge1.geometry.relative = true; edge1.edge = true; cardCell2.insertEdge(edge1, true); cardCell3.insertEdge(edge1, false); bg.insert(edge1); var edge2 = new mxCell('', new mxGeometry(0, 0, 0, 0), inh + 'edgeStyle=none;html=1;endArrow=open;endSize=12;'); edge2.geometry.relative = true; edge2.edge = true; cardCell3.insertEdge(edge2, true); cardCell4.insertEdge(edge2, false); bg.insert(edge2); return sb.createVertexTemplateFromCells([bg], 220, 190, 'Composite State'); }), this.createVertexTemplateEntry(s + 'compState;html=1;align=left;verticalAlign=top;spacingTop=-3;spacingLeft=18;', 200, 160, 'CompositeState1', 'Composite State', null, null, this.getTagsForStencil(gn, 'compState', dt + 'composite state').join(' ')), this.createVertexTemplateEntry('ellipse;html=1;labelPosition=left;verticalLabelPosition=bottom;spacingBottom=10;align=right;verticalAlign=bottom;resizable=0;', 20, 20, 'again', 'Entry Point', null, null, this.getTagsForStencil(gn, 'compState', dt + 'entry point').join(' ')), this.addEntry(dt + 'exit point', function() { var cardCell = new mxCell('aborted', new mxGeometry(0, 10, 20, 20), s + 'flowFinal;labelPosition=right;verticalLabelPosition=top;spacingTop=5;spacingLeft=3;align=left;verticalAlign=top;resizable=0;html=1;'); cardCell.vertex = true; return sb.createVertexTemplateFromCells([cardCell], cardCell.geometry.width, cardCell.geometry.height, 'Exit Point'); }), this.createVertexTemplateEntry(s + 'actFinal;html=1;verticalLabelPosition=bottom;labelBackgroundColor=#ffffff;verticalAlign=top;', 40, 40, '', 'Final State', null, null, this.getTagsForStencil(gn, 'actFinal', dt + 'final state').join(' ')), this.createVertexTemplateEntry('shape=ellipse;html=1;fontSize=18;align=center;', 40, 40, 'H*', 'History, Deep Pseudo State', null, null, this.getTagsForStencil(gn, '', dt + 'history deep pseudo state').join(' ')), this.createVertexTemplateEntry('shape=ellipse;html=1;fontSize=18;align=center;', 40, 40, 'H', 'History, Shallow Pseudo State', null, null, this.getTagsForStencil(gn, '', dt + 'history shallow pseudo state').join(' ')), this.createVertexTemplateEntry('shape=ellipse;html=1;fillColor=strokeColor;fontSize=18;fontColor=#ffffff;', 40, 40, '', 'Initial Pseudo State', null, null, this.getTagsForStencil(gn, '', dt + 'initial pseudo state').join(' ')), this.createVertexTemplateEntry('shape=ellipse;html=1;fillColor=strokeColor;fontSize=18;fontColor=#ffffff;', 40, 40, '', 'Junction Pseudo State', null, null, this.getTagsForStencil(gn, '', dt + 'junction pseudo state').join(' ')), this.createVertexTemplateEntry(s + 'accEvent;flipH=1;whiteSpace=wrap;align=center;html=1;', 140, 40, 'Req(Id)', 'Receive Signal Action', null, null, this.getTagsForStencil(gn, 'accEvent', dt + 'receive signal action').join(' ')), this.createVertexTemplateEntry(s + 'sendSigAct;whiteSpace=wrap;align=center;html=1;', 140, 40, 'TurnOn', 'Send Signal Action', null, null, this.getTagsForStencil(gn, 'sendSigAct', dt + 'send signal action').join(' ')), this.createVertexTemplateEntry('shape=rect;html=1;whiteSpace=wrap;align=center;', 140, 40, 'MinorReq := Id;', 'Action', null, null, this.getTagsForStencil(gn, '', dt + 'action').join(' ')), this.createVertexTemplateEntry(s + 'region;align=left;verticalAlign=top;spacingTop=-3;spacingLeft=25;html=1;', 200, 160, 'S', 'Region', null, null, this.getTagsForStencil(gn, '', dt + 'region').join(' ')), this.createVertexTemplateEntry('shape=rect;rounded=1;html=1;whiteSpace=wrap;align=center;', 100, 40, 'State1', 'Simple State', null, null, this.getTagsForStencil(gn, '', dt + 'simple state').join(' ')), this.createVertexTemplateEntry(s + 'simpleState;html=1;overflow=fill;whiteSpace=wrap;align=center;', 200, 100, '' + 'State2
entry / entryActivity
do / doActivity
exit / exitActivity
' +
'<<actor>>
' +
'ActorName
' +
'<<allocated>>
' +
'Named
Element
' + 'BlockName
allocatedFrom
' + '<<elementType>> ElementName
allocatedTo
' + '<<elementType>> ElementName
', 'Allocation derived properties (Block)', null, null, this.getTagsForStencil(gn, '', dt + 'derived property block').join(' ')), this.addDataEntry(dt + 'derived property comment', 270, 140, 'Allocation derived properties (Comment)', 'xVRNb+MgEP01HCPZOK16rZO2l3Yv6R8g9sRGHQzF5Ku/fgdM7bKJpVZa7R4sz7xhhuHxGFas1OnJCtO+6BqQFQ+sWFmt3WCp0woQGc9kzYo14zyjj/HHmWgeopkRFjr3nQQ+JBwE7mFAGL9FSi0Nwb074wDfvu99S6UStpEdK+4zcxrdhdOGoDzBEHZuAh2c3EKgbHzuECqnqmQ18R/23n4CAlFXwkH9aLX6jNJpthcZ1p9xAoWijkq89ABBETevZwNjIE2KXvYwrPwlFMztMtPsq/7/rdIeZtqEJ5fJ+1YYb3ba0a9snSLhrXMye/nhA/mNt42oZNc8h9ta34QThgtcxwv8kqcPYHeoj+TuJCmsKI+tdLChEr7ekQT+Jb+iZsGOnVEu6WNWwQGK8n0CrcDZMy2JCctB4NlR1q6Noi4i1oJs2ljlLmKiH/xmrDQ9DzLiC7n+WoqL15IwP8OyhcqztdOd28Ro/i8IOsdodslQzq8wtPwLDC2vzJM/aLF639Xg12ephlBsAUtRvTVhyUqjtkGknRcpdPW9tUFhEalF34Y6+UgU1A0kNPV6bytIZp2j+QQuudBvkGkBhZOHtPoPmCJ3muohlgz93w=='), this.addEntry(dt + 'derived property internal block diagram', function() { var bg = new mxCell( '' +
'<<block>>
' +
'BlockName
' + 'PartName
allocatedFrom
' + '<<elementType>> ElementName
', new mxGeometry(20, 60, 210, 80), inh + 'shape=rect;html=1;overflow=fill;strokeWidth=2;whiteSpace=wrap;align=center;'); cardCell2.vertex = true; bg.insert(cardCell2); return sb.createVertexTemplateFromCells([bg], 250, 160, 'Allocation derived properties (Internal Block Diagram)'); }), this.createVertexTemplateEntry(s + 'simpleState;html=1;overflow=fill;whiteSpace=wrap;align=center;', 200, 100, '' + 'ActivityName
allocatedTo
' + '<<elementType>> ElementName
', 'Allocation Derived Properties (Activity Diagram)', null, null, this.getTagsForStencil(gn, '', dt + 'derived property activity diagram').join(' ')), this.addEntry(dt + 'activity partition', function() { var cardCell = new mxCell( '' +
'<<allocate>>
:ElementName
req ReqDiagram
', 'Requirement Diagram', null, null, this.getTagsForStencil(gn, 'package', dt + 'diagram').join(' ')), this.createVertexTemplateEntry('shape=rect;overflow=fill;html=1;whiteSpace=wrap;align=center;', 200, 100, '' +
'<<requirement>>
Requirement Name
text="The system shall do"
Id="62j32."
' +
'<<testCase>>
TestCaseName
' + 'NodeName
' +
'<<stereotypeName>>{PropertyName=ValueString}ElementName
' +
'<<stereotypeName>>{PropertyName=ValueString};
' +
'BooleanPropertyName
' +
'ElementName
' + '<<stereotypeName>>NodeName
' +
'<<stereotypeName>>
PropertyName=ValueString
' +
'MultiPropertyName=ValueString, ValueString
' +
'BooleanPropertyName