On Mon, Dec 03, 2001 at 03:38:18PM +0100, Andre Poenitz wrote:

> > An inset that is locked demands that many operations should be requested
> > of it first. For example, updates on insets.
> 
> Does anything needs this kind of focus that is _not_ in immediate
> neighbourhood of the cursor?

yes, for example insetgraphics that have finished rendering (which is what
the bug fixes ;)

> If so, why isn't the cursor used for such things?

that would require each cursor to know not only its container, but the tree
of containers...

I don't understand why we have :

inset->updateInset(some_other_inset)

AND

inset->updateInsetInInset(some_other_inset)

but that's just an implementation detail I think. I would prefer just to
hand off updateInset(some) to the locking inset and have done.

> So if I look at all the insets as some kind of tree, the "interesting
> spot" is someway down a path from the root to a leaaf, and
> bv->theLockingInset() is some kind of short cut on that path?

nope, bv->theLockInset() is always the top-level locked inset (I think).
The chain of inset->the_locking_inset has to be follwoed to get to the current
active locked inset 

> ... and introduces some kind of "back reference" which is usually a pain to
> maintain and to get right?

I don't think so. An inset does not know which inset contains it.

john

-- 
"Faced with the prospect of rereading this book, I would rather have 
 my brains ripped out by a plastic fork."
        - Charles Cooper on "Business at the Speed of Thought" 

Reply via email to