Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[elk-dev] Migration protocol

Hi Elkers,

here's what we discussed today to clear things up a bit and talk about
certain refactorings.

Cheers,
 Christoph Daniel


- DiagramLayoutEngine knows how to invoke layout on a diagram, bringing
connectors and algorithms together
- GraphLayoutEngine knows how to execute layout on an ElkGraph


- LayoutConfigurator is a generic layout option container
- The levels of layout:
  - DiagramLayoutEngine knows about setups / connectors and can create a
connector for a given workbench part to extract the graph
  - GraphLayoutEngine expects an ElkGraph with options set and executes
layout algorithms
  - Layout algorithms can also be called directly
- ILayoutSetup is registered to build the connection between connectors
and the objects they support
- ILayoutConnector knows how to extract the layout graph from a
workbench part / editor / stuff and how to apply layout information back
- LayoutConfigurationManager is responsible for applying additional
layout options from sources such as LayoutConfigurator
- ILayoutConfigurationStore is the thing where layout options coming
from the layout view can be stored and restored


TODO:
- Remove RECURSIVE_SUFFIX and associated functionality from
LayoutConfigurationManager
- Move the extension point to core
- Make AbstractGraphLayoutEngine non-abstract again
- Add a method that retrieves the default layout algorithm to
GraphLayoutEngine
- Have the GraphLayoutEngine be injected in LayoutConfigurator for it to
apply the default layout algorithm
- Change the ELKM language to use less = signs


Attachment: signature.asc
Description: OpenPGP digital signature


Back to the top