Community
Participate
Working Groups
The layout model provided by GEF4 Layout contains an ISubgraphLayout interface which represents a number of "pruned" (i.e. hidden) nodes. As hiding/unhiding of nodes is UI dependent, this should be removed from the layout model and the layout algorithms.
The concept seems to be used in the SpaceTreeLayoutAlgorithm and SpringLayoutAlgorithm. We will have to remove it from there as well.
The ExpandCollapseManager (see bug #467978) is related to this as well. IMHO, hiding should not be handled internally by the layout algorithm, but provided by the client.
*** Bug 467978 has been marked as a duplicate of this bug. ***
Pushed the following changes to origin/master: - Removed ISubgraphLayout abstraction, as hiding/unhiding of nodes should not be performed by layout algorithm (but instead by client). - Removed IEntityLayout abstraction (replaced all usages with INodeLayout) as it is no longer needed (was common concept above INodeLayout and ISubgraphLayout). - Removed IPruningListener, which is was related to hiding/unhiding of nodes. - Removed ExpandCollapseManager and related implementation from SpaceTreeLayoutAlgorithm (maximizeExpansion method is now direct member of SpaceTreeLayoutAlgorithm). Removed all pruning related functionality from the algorithm as well. - Added an example for SpaceTreeLayoutAlgorithm to Layout examples. Resolving as fixed in 3.11.0 M5.