Angus Leeming wrote:

> Alfredo Braunstein wrote:
>>> We could add a bool DocumentIterator::contains(inset *) that
>>> checks the stack for that particular inset. then
>>> 
>>> +                                       if (cur.contains(&*it))
>>> +                                               cur.pop();
>> 
>> ... and cur.pop is no good either. we need to cut it to the level
>> in which the inset is found.
>> 
>> What do you
> 
> Agreed. However, I don't know how to do that.

Actually, what we want is to iterate from the 'innermost' inset to the
'outermost'. Eg, if this is our structure:

[A: [B: ] [C: [D: ]] [E: ]] [F: ]

A contains B, C, E.
C contains D.
A and F are on the same level.

We want to iterate:
A B D C E F

Can we do that?
-- 
Angus

Reply via email to