blob: cfe4855b8f1444dc94ffb35489dc9fd783dec8fd [file]
<?xml version="1.0" encoding="UTF-8"?>
<description:Group xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:tool="http://www.eclipse.org/sirius/diagram/description/tool/1.1.0" xmlns:tool_1="http://www.eclipse.org/sirius/description/tool/1.1.0" name="statemachine" version="12.0.0.2017041100">
<ownedViewpoints name="StateMachine" modelFileExtension="*.statemachine">
<ownedRepresentations xsi:type="description_1:DiagramDescription" name="StateMachineDiagram" domainClass="statemachine::Statemachine" enablePopupBars="true">
<metamodel href="http://www.eclipse.org/sirius/tests/sample/xtext/Statemachine#/"/>
<defaultLayer name="Default">
<nodeMappings name="SMD_StateNode" preconditionExpression="false" semanticCandidatesExpression="feature:states" domainClass="statemachine::State">
<style xsi:type="style:SquareDescription" labelPosition="node" resizeKind="NSEW">
<borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
<labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
<color xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='blue']"/>
</style>
</nodeMappings>
<edgeMappings name="SMD_Transition_Edge" sourceMapping="//@ownedViewpoints[name='StateMachine']/@ownedRepresentations[name='StateMachineDiagram']/@defaultLayer/@containerMappings[name='SMD_StateContainer']" targetMapping="//@ownedViewpoints[name='StateMachine']/@ownedRepresentations[name='StateMachineDiagram']/@defaultLayer/@containerMappings[name='SMD_StateContainer']" targetFinderExpression="feature:state" sourceFinderExpression="feature:eContainer" domainClass="statemachine::Transition" useDomainElement="true">
<style sizeComputationExpression="2">
<strokeColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='gray']"/>
<centerLabelStyleDescription labelExpression="aql:self.event.name">
<labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
</centerLabelStyleDescription>
</style>
</edgeMappings>
<containerMappings name="SMD_StateContainer" semanticCandidatesExpression="feature:states" domainClass="statemachine::State">
<subNodeMappings name="SMD_ActionState" semanticCandidatesExpression="aql:self.actions" domainClass="statemachine::Command">
<style xsi:type="style:SquareDescription" labelPosition="node" resizeKind="NSEW">
<borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
<labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
<color xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='gray']"/>
</style>
</subNodeMappings>
<style xsi:type="style:FlatContainerStyleDescription" borderSizeComputationExpression="1" roundedCorner="true">
<borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
<labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
<backgroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='light_blue']"/>
<foregroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='light_gray']"/>
</style>
<conditionnalStyles predicateExpression="aql:self.actions->size()>0">
<style xsi:type="style:FlatContainerStyleDescription" borderSizeComputationExpression="1" roundedCorner="true">
<borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
<labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
<backgroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='light_green']"/>
<foregroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='green']"/>
</style>
</conditionnalStyles>
</containerMappings>
<toolSections name="SMD_CreationTools">
<ownedTools xsi:type="tool:ContainerCreationDescription" name="SMD_CreateState" label="Create a State" containerMappings="//@ownedViewpoints[name='StateMachine']/@ownedRepresentations[name='StateMachineDiagram']/@defaultLayer/@containerMappings[name='SMD_StateContainer']">
<variable name="container"/>
<viewVariable name="containerView"/>
<initialOperation>
<firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="aql:self">
<subModelOperations xsi:type="tool_1:CreateInstance" typeName="statemachine::State" referenceName="states">
<subModelOperations xsi:type="tool_1:SetValue" featureName="name" valueExpression="aql:'newState'+self.eContainer().eContents(statemachine::State)->size()"/>
</subModelOperations>
</firstModelOperations>
</initialOperation>
</ownedTools>
<ownedTools xsi:type="tool:EdgeCreationDescription" name="SMD_CreateTransition" label="CreateTransition" edgeMappings="//@ownedViewpoints[name='StateMachine']/@ownedRepresentations[name='StateMachineDiagram']/@defaultLayer/@edgeMappings[name='SMD_Transition_Edge']">
<sourceVariable name="source"/>
<targetVariable name="target"/>
<sourceViewVariable name="sourceView"/>
<targetViewVariable name="targetView"/>
<initialOperation>
<firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="aql:self.eContainer()">
<subModelOperations xsi:type="tool_1:CreateInstance" typeName="statemachine::Event" referenceName="events" variableName="newEvent">
<subModelOperations xsi:type="tool_1:Let" variableName="nbInstance" valueExpression="aql:self.eContainer().eContents(statemachine::Event)->size()"/>
<subModelOperations xsi:type="tool_1:SetValue" featureName="name" valueExpression="aql:'newEvent'+nbInstance"/>
<subModelOperations xsi:type="tool_1:SetValue" featureName="displayname" valueExpression="aql:'display name'+nbInstance"/>
<subModelOperations xsi:type="tool_1:SetValue" featureName="code" valueExpression="aql:'code'+nbInstance"/>
</subModelOperations>
<subModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:source">
<subModelOperations xsi:type="tool_1:CreateInstance" typeName="statemachine::Transition" referenceName="transitions">
<subModelOperations xsi:type="tool_1:SetValue" featureName="state" valueExpression="aql:target"/>
<subModelOperations xsi:type="tool_1:SetValue" featureName="event" valueExpression="var:newEvent"/>
</subModelOperations>
</subModelOperations>
</firstModelOperations>
</initialOperation>
</ownedTools>
</toolSections>
</defaultLayer>
</ownedRepresentations>
<ownedJavaExtensions qualifiedClassName="org.eclipse.sirius.tests.sample.xtext.statemachine.design.Services"/>
</ownedViewpoints>
</description:Group>