fix(modeling): collapsed subprocess dont shows itself on the replace-menu

Solved with #247

Closes #509
This commit is contained in:
Jan Stümmel 2016-04-19 13:24:34 +02:00 committed by Vladimirs Katusenoks
parent 07a1ef29b6
commit 489a6af3b2
1 changed files with 13 additions and 4 deletions

View File

@ -1,6 +1,7 @@
'use strict'; 'use strict';
var getBusinessObject = require('../../../util/ModelUtil').getBusinessObject; var getBusinessObject = require('../../../util/ModelUtil').getBusinessObject;
var isExpanded = require('../../../util/DiUtil').isExpanded;
/** /**
* Returns true, if an element is from a different type * Returns true, if an element is from a different type
@ -19,11 +20,19 @@ function isDifferentType(element) {
var businessObject = getBusinessObject(element), var businessObject = getBusinessObject(element),
eventDefinition = businessObject.eventDefinitions && businessObject.eventDefinitions[0]; eventDefinition = businessObject.eventDefinitions && businessObject.eventDefinitions[0];
var isEventDefinitionEqual = (eventDefinition && eventDefinition.$type) === target.eventDefinitionType, var isTypeEqual = businessObject.$type === target.type;
isTypeEqual = businessObject.$type === target.type,
isTriggeredByEventEqual = businessObject.triggeredByEvent == target.triggeredByEvent;
return !isTypeEqual || !isEventDefinitionEqual || !isTriggeredByEventEqual; var isEventDefinitionEqual =
(eventDefinition && eventDefinition.$type) === target.eventDefinitionType;
var isTriggeredByEventEqual =
target.triggeredByEvent === undefined ||
businessObject.triggeredByEvent === target.triggeredByEvent;
var isExpandedEqual =
target.isExpanded === undefined || target.isExpanded === isExpanded(businessObject);
return !isTypeEqual || !isEventDefinitionEqual || !isTriggeredByEventEqual || !isExpandedEqual;
}; };
} }