Speeding up AbiWord for very large documents

From: Diana Maria Prajescu <diana.prajescu_at_gmail.com>
Date: Wed Mar 21 2012 - 00:57:46 CET

Hello,

I have started reading about AbiWord and looking through the code in
order to understand how it's structured and I am a bit confused
regarding some things. Please correct me if I'm wrong.

A document is represented by the FL_DocLayout class and this class is
the root of two hierarchies: one corresponds to the document's content
and one corresponds to the document's layout. The document's content
is a list of sections (fl_SectionLayout) which contains one or more
blocks (fl_BlockLayout). For the layout hierarchy a document has one
or more pages (fp_Page), a page has one or more columns (fp_Column), a
column has one or more lines (fp_Line), a line contains one or more
runs (fp_Run).

The _breakSection() function iterates through sections and assembles
the document's content into pages, columns etc. so when a line
modifies the section in which the line is must be iterated again
beginning with the line's position. What determines a section's size?
Is it possible that when modifying the layout for a section the next
section's layout must be modified too?

In the project idea's description it says that we can either speed up
_breakSection() or to run it in the background, making only onscreen
changes. I my opinion making only onscreen changes and the other in
the background will bring a greater increase in speed.

--
Regards,
Diana Prajescu
Received on Wed Mar 21 00:58:15 2012

This archive was generated by hypermail 2.1.8 : Wed Mar 21 2012 - 00:58:15 CET