On Wed, May 30, 2007 at 02:42:14PM +0200, Alfredo Braunstein wrote:
> Abdelrazak Younes wrote:
> 
> > Alfredo Braunstein wrote:
> >> Abdelrazak Younes wrote:
> >> 
> >>> I am not sure that registering every single DocIterator would be any
> >>> more efficient that my signal/slot solution. At the end you will have to
> >>> go through a table.
> >> 
> >> Small remark: note that not all DocIterators need to be stable (mainly
> >> cursors, maybe also bookmarks & error marks), one could have a class
> >> derived from DocIterator for that purpose.
> > 
> > I agree but it's more work than my signal based solution which is
> > assured to work in all cases. I tell you what, in order to save the bits
> > Andre is worried about I am going to remove the signal from Inset and
> > transfer them to InsetText and InsetMathHull. In 1.6, we can think of
> > this other solution. But really, my solution is cheap in terms of CPU
> > and it will be cheaper in terms of memory when I do the change described
> > above.
> 
> In general terms Abdel I agree that it is not so bad if it really works (in
> order to implement a "correct" solution (TM) having something working even
> if inefficient is /good/, not bad), but are we sure that it works in all
> cases? In general it seems wrong to me that invalidation of cursors is only
> due to inset destruction. For instance, put a cursor inside an inset, then
> in another window add or remove some text before the inset so the position
> of the inset changes... no destruction occurs, but is the cursor still
> valid? (sorry don't have svn to check here.)

It isn't, as the pos() in the slice corresponding to the changed inset
is changed.

Andre'

Reply via email to