diff options
-rw-r--r-- | doc/dw-out-of-flow-floats.doc | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/doc/dw-out-of-flow-floats.doc b/doc/dw-out-of-flow-floats.doc index ee26bc4d..bc371222 100644 --- a/doc/dw-out-of-flow-floats.doc +++ b/doc/dw-out-of-flow-floats.doc @@ -97,7 +97,24 @@ other side); if you look at the definition (dw::OutOfFlowMgr::addWidgetOOF) it becomes clear that this order is equivalent to the generation order. -dw::OutOfFlowMgr::Float::CompareGBAndExtIndex ... +dw::OutOfFlowMgr::Float::CompareGBAndExtIndex compares *externalIndex* +for floats with same generators, otherwise: (i) if one generator (T1) +is a direct anchestor of the other generator (T2), the child of T1, +which is an anchestor of, or identical to, T2 is compared to the float +generated by T1, using *externalIndex*, as in this example: + + T1 -+-> child --> ... -> T2 -> Float + `-> Float + +Otherwise, the two blocks are compared, according to their position in +dw::OutOfFlowMgr::tbInfos: + + common anchestor -+-> ... --> T1 -> Float + `-> ... --> T2 -> Float + +This is equivalent to the generation order, as long it is ensured that +*externalIndex* reflects the generation order within a generating +block, for both floats and child blocks. dw::OutOfFlowMgr::Float::ComparePosition ... |