diff --git a/lib/draw/BpmnRenderer.js b/lib/draw/BpmnRenderer.js index 936683b3..4d4df555 100644 --- a/lib/draw/BpmnRenderer.js +++ b/lib/draw/BpmnRenderer.js @@ -392,6 +392,15 @@ export default function BpmnRenderer( var event = getSemantic(element); var isThrowing = isThrowEvent(event); + if (event.eventDefinitions && event.eventDefinitions.length>1) { + if (event.parallelMultiple) { + return renderer('bpmn:ParallelMultipleEventDefinition')(parentGfx, element, isThrowing); + } + else { + return renderer('bpmn:MultipleEventDefinition')(parentGfx, element, isThrowing); + } + } + if (isTypedEvent(event, 'bpmn:MessageEventDefinition')) { return renderer('bpmn:MessageEventDefinition')(parentGfx, element, isThrowing); } @@ -408,16 +417,6 @@ export default function BpmnRenderer( return renderer('bpmn:SignalEventDefinition')(parentGfx, element, isThrowing); } - if (isTypedEvent(event, 'bpmn:CancelEventDefinition') && - isTypedEvent(event, 'bpmn:TerminateEventDefinition', { parallelMultiple: false })) { - return renderer('bpmn:MultipleEventDefinition')(parentGfx, element, isThrowing); - } - - if (isTypedEvent(event, 'bpmn:CancelEventDefinition') && - isTypedEvent(event, 'bpmn:TerminateEventDefinition', { parallelMultiple: true })) { - return renderer('bpmn:ParallelMultipleEventDefinition')(parentGfx, element, isThrowing); - } - if (isTypedEvent(event, 'bpmn:EscalationEventDefinition')) { return renderer('bpmn:EscalationEventDefinition')(parentGfx, element, isThrowing); } diff --git a/test/fixtures/bpmn/draw/events.bpmn b/test/fixtures/bpmn/draw/events.bpmn index 79add36f..e6929ced 100644 --- a/test/fixtures/bpmn/draw/events.bpmn +++ b/test/fixtures/bpmn/draw/events.bpmn @@ -1,5 +1,5 @@ - + @@ -33,7 +33,7 @@ - + @@ -96,7 +96,7 @@ - + @@ -113,7 +113,7 @@ - + @@ -126,249 +126,309 @@ + + + + + + + + + + + + + + + + + + + + + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +