Commit Graph

175 Commits

Author SHA1 Message Date
pedesen 3f6a7d5621 fix(tests): revise expectConnected and adjust test cases 2015-10-07 15:15:57 +02:00
Kristin Polenz 188487ebdc feat(modeling/UpdateProperties): unclaim old business object id 2015-10-05 16:13:46 +02:00
Ricardo Matias 8a0f566ee3 feat(replace): add cancel events
Closes #337
2015-09-28 11:35:38 +02:00
Nico Rehwaldt 4891eb4f84 fix(draw): show labels with text
Closes #362
2015-09-14 16:20:49 +02:00
Ricardo Matias 31f0ea1ec0 feat(modeling): add support for custom elements
This commit adds part of the infrastructure that allows
the coexistence between bpmn elements and custom ones.

Closes #348
2015-09-03 09:57:30 +02:00
pedesen 6482273aa4 test(modeling/lanes): expect labels to be children of lanes
Related to #326
2015-09-03 06:39:09 +02:00
Nico Rehwaldt e78e4c94a3 test(matchers): add custom .bounds matcher
Closes #349
2015-09-02 14:36:39 +02:00
pedesen d831ed45b8 test(modeling/behavior): add test cases for boundary event connections
Related to #323
2015-09-01 16:31:24 +02:00
Nico Rehwaldt afa72ad5bd fix(modeling): correctly update Lane#flowNodeRefs
Previously, the bpmn:FlowNode <-> bpmn:Lane relationship was not
properly maintained in the BpmnUpdater.

This commit fixes the behavior.

Closes #341
2015-08-31 15:00:27 +02:00
Nico Rehwaldt f8d6658c10 fix(import): import elements with missing #flowNodeRef
We now properly import lane children with missing #flowNodeRef.

Closes #340
2015-08-25 15:49:00 +02:00
Ricardo Matias 34bd632544 fix(modeling): add caveat for message flows layouting
related to bpmn-io/diagram-js#110
2015-08-25 11:04:51 +02:00
Nico Rehwaldt b0ce4d834d test(util): add MockEvents util + use in tests
* MockEvents provides a simple to use interface for creating
  events globally or locally to the currently active DiagramJS
  instance.
2015-08-24 16:02:21 +02:00
Nico Rehwaldt 711a2df758 feat(modeling): wrap existing elements in new lane
Related to #316
2015-08-21 17:34:41 +02:00
Nico Rehwaldt 42b66b1602 chore(project): move {modeling->}/rules
This syncs the bpmn-js structure with diagram-js.
2015-08-21 17:34:41 +02:00
Nico Rehwaldt e9a7bfa986 fix(modeling): make sure lanes get ids assigned 2015-08-21 17:34:41 +02:00
Nico Rehwaldt 4afefcb838 feat(rules): add lane rules
* add create / move rules
* add resize rules

Related to #316
2015-08-21 17:34:41 +02:00
Nico Rehwaldt d520574d1a feat(modeling): wire lanes in BPMN 2.0 xml
Related to #316
2015-08-21 17:34:41 +02:00
pedesen 1cdce93f5b fix(selection): select element replacements after move
Closes #335
2015-08-21 13:46:21 +02:00
pedesen fed7aefabe chore(test): add test case for issue #326 2015-08-21 11:46:50 +02:00
Nico Rehwaldt 5c629a9889 chore(modeling/behavior): rename Remove{->Participant}Behavior 2015-08-19 17:24:49 +02:00
Nico Rehwaldt e237937726 chore(modeling): update BpmnUpdater to hook into element.updateAttachment
BREAKING CHANGE:

* The id of the update attachment command changed from 'shape.attach' to
'element.updateAttachment'
2015-08-19 14:34:07 +02:00
Ricardo Matias fd3afbb508 test(modeling/layout): fix test case values
closes #266
2015-08-19 13:52:46 +02:00
Nico Rehwaldt 3cb1721c89 chore(modeling): rename Modeling#move{Shapes->Elements}
Related to bpmn-io/diagram-js#107

BREAKING CHANGE:

* Modeling#moveShapes got renamed to Modeling#moveElements
* Id of command changed from 'shapes.move' to 'elements.move'
2015-08-13 10:51:52 +02:00
Nico Rehwaldt 485f83f026 test(modeling): simplify CreateBoundaryEventBehavior tests 2015-08-06 10:58:50 +02:00
Nico Rehwaldt ece7b7d597 feat(snapping): snap boundary events
This adds immediate feedback when creating and moving boundary events.

* During move, boundary events are snapped, if attachment is allowed
* Boundary events snap to their siblings and not to elements inside
the host

Closes #320
2015-08-06 10:58:50 +02:00
Nico Rehwaldt dac5bb397b fix(modeling/rules): correct boundary rules
* clean up boundary related rules
* split boundary tests into separate section
* add boundary message flow tests
* fix boundary message flow behavior

Closes #319
2015-07-30 17:11:19 +02:00
Nico Rehwaldt 8e4f480868 feat(modeling/layout): improve sequence flow layouting behind Gateways
Closes bpmn-io/bpmn-js#227
2015-07-30 10:36:06 +02:00
Ricardo Matias 75dc681d46 feat(modeling): add boundary events behavior
This commit adds support for modeling boundery events.

Users may pull out the boundary events from the palette.

Closes #292
2015-07-22 17:23:31 +02:00
pedesen 363ce892c9 fix(modeling): sequence flow can be reconnected to participant
Closes #315
2015-07-20 16:48:44 +02:00
pedesen 8c6c920482 fix(modeling): message flow updating correctly after changing source
Closes #267
2015-07-20 16:48:44 +02:00
pedesen c3e4ad3e40 test(project): replace jasmine with mocha
Closes #204
2015-07-15 17:42:37 +02:00
Nico Rehwaldt 71a5c2e1ed fix(modeling): correctly update extension attributes
Closes #301
2015-06-22 14:35:30 +02:00
Nico Rehwaldt 749120c4e9 fix(modeling): allow only bpmn:FlowNode(s) to be dropped on flow
Closes #297
2015-06-09 11:04:05 +02:00
Nico Rehwaldt 084d831d9e feat(modeling): add generic create-on-flow
Closes #232
2015-06-02 14:22:58 +02:00
Nico Rehwaldt d3aa1a7667 fix(modeling/rules): allow moving message flows
Closes #276
2015-05-12 18:04:42 +02:00
Nico Rehwaldt bd2a4dd16b fix(rules): connect message flow to message/untyped events only
Closes #261
2015-05-12 14:35:21 +02:00
Ricardo Matias 6f8999b8ae fix(modeling/BpmnUpdater): restore children di when changing diagram type
closes #253
2015-05-04 15:08:32 +02:00
Nico Rehwaldt b233ab957c feat(snapping): add bpmn-specific move snapping
This commit adds message flow + collaboration specific snapping by
subclassing the diagram-js provided default Snapping implementation.

* Add collaboration snapping
* Rename lib/util/{Name}.js -> lib/util/{Name}Util.js

Closes #255
2015-04-29 15:04:54 +02:00
Nico Rehwaldt 183a41cf26 fix(modeling): convert to process when deleting last participant only
Related to #128
2015-04-28 14:13:54 +02:00
Nico Rehwaldt 6eceb0926b feat(layout): add straight layouting for message flows
This commit adds a straight layouting strategy for message flows.
Other than that it makes sure connection attachments are being
remembered during reconnection / shape move.

Closes #249
Closes #179
2015-04-22 16:19:26 +02:00
Nico Rehwaldt 087506cc9a feat(modeling): transform message <> sequence flows
Closes #199
2015-04-22 16:12:58 +02:00
Nico Rehwaldt c14a87e5ad feat(modeling): add message flow modeling
Related to #199
Closes #201
2015-04-22 16:12:58 +02:00
Ricardo Matias 6011de1c4a fix(resize): correctly compute cropping box after resize
closes #236
2015-04-22 09:20:07 +02:00
Ricardo Matias 0381811d03 feat(space-tool): add create/remove space behaviour
closes #132
2015-04-16 10:00:18 +02:00
Nico Rehwaldt 0a03e59866 feat(modeling): add participant modeling behavior
This commit adds the ability to model participants from the palette.

* Empty diagrams can be used as a start for participant _AND_ process diagram
* Process diagrams can be converted to collaboration diagrams by dropping
  a participant onto them

Closes #128
2015-04-14 15:23:16 +02:00
Nico Rehwaldt 2e73f5ab85 fix(modeling): update id property in diagram-js, too
This fixes a bug where updating the id property of an element
was not propagated to the diagram. Thus, retrieving the element
based on the new id from diagram-js did not work.

Closes #238
2015-04-13 10:55:17 +02:00
Nico Rehwaldt e6885eaebc test(project): replace brfs with stringify
This _could_ fix the various bundle building issues we are seeing on
travis-ci and locally.

Closes #234
2015-03-31 14:22:53 +02:00
Nico Rehwaldt 3996408404 chore(project): migrate to modularized lodash@3
* use specialized lodash utilities
* consistently apply 'use strict'

Related to #185
2015-02-02 14:46:21 +01:00
Nico Rehwaldt 85e512c97d feat(modeler): add bendpoints
It is now possible to add bendpoints to flows or drag bendpoints to
update their position / trigger reconnects.

Upon bendpoint move a rule is checked to figure out whether or not a
bendpoint operation is allowed or not.

Closes #123
Closes #138
Closes #139
Closes #165
2015-01-20 17:19:56 +01:00
Nico Rehwaldt 2019c658df feat(modeling): add property update mechanism
This adds the modeling#updateProperties(element, props) method to the
modeler that can be used to set BPMN 2.0 properties on elements.

By assigning the properties this way, the modeler is aware of the
elements that got changed and can update / redraw the elements
accordingly.

This hooks up with the modelers undo/redo chain, too.

Related to #167
2015-01-02 16:15:18 +01:00
Nico Rehwaldt 6041717c6c feat(modeling): implement create via palette/context-pad
Related to #137
2014-12-07 13:08:50 +01:00
Nico Rehwaldt e387768ef1 fix(modeling): use correct parent for bpmn:TextAnnotation 2014-12-02 08:36:15 +01:00
Nico Rehwaldt a5ed6aa9db test(modeling/move): add label move undo tests 2014-11-28 13:19:57 +01:00
Nico Rehwaldt 9e37037ac6 fix(move): adjust positioning of all attached labels 2014-11-28 11:38:06 +01:00
Nico Rehwaldt 2258642cb4 fix(modeling): skip updating BPMN parent on label move 2014-11-27 11:55:38 +01:00
Nico Rehwaldt 2f679a36b9 feat(modeling): move to rules infrastructure
Related to bpmn-io/diagram-js#55
2014-11-21 09:22:51 +01:00
Nico Rehwaldt 2707fc8858 chore(test): fix brfs include encoding 2014-11-21 09:22:51 +01:00
jdotzki 51918b3493 feat(drop): basic implementation
This commit adds a basic implementation for model drop

* using rules to check whether the drop is allowed
* updating the model after drop

See #127
2014-11-21 09:21:41 +01:00
Nico Rehwaldt 3a377a3871 chore(core/ElementRegistry): pull API changes
Related to #153
2014-11-17 17:36:22 +01:00
Nico Rehwaldt c58532aeac chore(import): reorganize import related functionality
This commit puts all import related stuff into the import module.

The core module remains as an entry point to require the basic modules
needed by bpmn-js. At the time this is { import, draw }.
2014-10-30 12:06:43 +01:00
Nico Rehwaldt 4428be4227 fix(draw): render labels as one-liner per default
This is a temporary fix for #113
2014-09-15 14:41:26 +02:00
Nico Rehwaldt 8cc530bf58 feat(modeling): move external labels with nodes
Closes #105
2014-09-11 17:22:59 +02:00
Nico Rehwaldt d0644c953a feat(modeling): integrate connection repair 2014-09-04 13:47:31 +02:00
Nico Rehwaldt a301acc4c4 feat(modeling): integrate connection.move
Related to #125
2014-08-28 16:17:55 +02:00
Nico Rehwaldt c685c0fcce feat(project): add manhattan style layouting for flows
Related to #48
2014-08-27 16:55:26 +02:00
jdotzki 470e0f88ba feat(modeling): update bpmn model on remove
On removeShape/removeConnection the BPMN model is updated accordingly.

related to #106
2014-08-22 15:20:48 +02:00
Nico Rehwaldt 86d5c20f07 fix(modeling): strip all namespaces for semantic id generation
Related to #108
2014-08-12 11:03:47 +02:00
jdotzki 58b9964828 improve(bpmnfactory): add semantic element IDs
The ID will have an semantic prefix: SequenceFlow_6bpz90i

related to bpmn-io/bpmn-js#108
2014-08-11 17:55:54 +02:00
Nico Rehwaldt fb86037cdd fix(modeling): properly update sourceRef/targetRef for associations
Related to #90
2014-08-05 17:57:19 +02:00
Nico Rehwaldt 911e991bc8 chore(tests): instantiate modeler only when neccessary
This commit replaces the test helper #bootstrapBpmnJS with either

This ensures we can have different Modeler/Viewer specific bootstrap
code being called based on whether we test modeling or viewing only
features.
2014-08-05 08:17:22 +02:00
Nico Rehwaldt b1663db035 fix(modeling): correct initial label positioning 2014-08-04 09:34:45 +02:00
Nico Rehwaldt 9bf74c95e6 chore(modeling): pull diagram-js changes 2014-08-04 09:34:45 +02:00
Nico Rehwaldt 11f166a7f9 fix(modeling): update di bounds during shape.create 2014-08-04 09:34:44 +02:00
Nico Rehwaldt 72729ce248 fix(modeling/BpmnFactory): do not serialize point#original 2014-08-01 08:32:56 +02:00
Nico Rehwaldt 826d798f19 chore(tests): remove unused node test folders
This commit cleans up reminders of the node-js test suite removal
by removing the test/node folder.

The test structure has been aligned by moving all tests from

* test/spec/browser to test/spec
* test/spec/integration to test/integration
2014-08-01 07:20:15 +02:00