Andre Poenitz wrote:

> 
> Can anybody see a regression other than slowness with this?
> 
> [This makes 'redoParagraphs' a loop over 'redoParagraph' instead of
> calling the first from the latter.]

Just for information, your plan is to re-implement drawing in a clear 
and transparent way. Thereafter, ascertain what optimisations are 
necessary to speed things up. In this way, you hope to understand how 
the whole thing fits together.

Presumably you envisage a final, top-level algorithm taht can be 
represented in psudo code as

        Paragraph * par = par_that_has_been_modified();
        par()->metrics();

        ParagraphIterator pit = top_visible_paragraph();
        ParagraphIterator pend = one_past_bottom_visible_paragraph();
        for (; pit != pend; ++pit) {
                pit->draw();
        }

The Paragraph::metrics() and Paragraph::draw() functions are just 
simple, 'brainless' loops over all chars/insets? No further 
optimisation should be needed.

Is this how you envisage things panning out?

(Ok, I understand that rows and paragraph positions come in here 
somewhere too)

-- 
Angus

Reply via email to