Depending on the support of its sublayouts, Recursive Layout may
support the following generic parameters defined in the IlvGraphLayout class (see Generic parameters and features):
The following paragraphs describe the
particular way in which these parameters are used by this subclass.
Allowed time
The Recursive Layout can stop the entire
layout of a nested graph after a certain amount of time. If the
allowed time setting has elapsed, the Recursive Layout stops;
that means it stops the currently running layout of a subgraph
and skips the subsequent layouts of subgraphs that have not yet
been started. If at the stop time point a sublayout is running on
a subgraph that does not support the “allowed time” feature, then
this sublayout first runs to completion before the Recursive
Layout is stopped. If the Recursive Layout stops early because
the allowed time has elapsed, the result code in the layout
report is:
IlvGraphLayoutReport.STOPPED_AND_INVALID
Percentage completion calculation
The Recursive Layout calculates the
percentage of completion. This value can be obtained from the
layout report during the run of the layout. The value is a very
rough estimation. If the layouts on the subgraphs do not support
the calculation of the percentage completion, the Recursive
Layout can report the percentage based only on the information of
how many layouts of subgraphs are already finished. For example,
if the entire nesting structure contains five nested graphs, the
mechanism reports 20% after the layout of the first subgraph has
finished, 40% after the layout of the second subgraph has
finished, and so on. If the layouts of the subgraphs support the
calculation of the percentage completion, the Recursive Layout
calculates a more detailed percentage. In most cases, the
calculated percentage is only a very rough estimation that does
not always grow linearly over time.
For a detailed description of this feature, see Percentage of completion calculation and
Listener layout.
Save parameters to named properties
The Recursive Layout instance can save its layout parameters into
named properties if all its sublayouts support this feature. This
can be used to save layout parameters to
.ivl
files. (For a detailed description of this feature, see Percentage of completion calculationand Saving layout parameters and preferred
layouts.)
Stop immediately
The Recursive Layout can be stopped at any
time.
It stops the currently running layout of a subgraph after
cleanup if the method stopImmediately is called and skips the
subsequent layouts of subgraphs that have not yet been started.
If at the stop time point a sublayout is
running on a subgraph that does not support the “stop
immediately” feature, then this sublayout first runs to
completion before the Recursive Layout is stopped.
For a description of this method in the IlvGraphLayout class,
see Stop immediately. If the layout stops
before completion, the result code in the layout report is
IlvGraphLayoutReport.STOPPED_AND_INVALID
.