More simplification. This waste a few cycles but only shows up if you have a text inset covering a couple of dozen pages. Which is an unlikely event.
Andre' -- Those who desire to give up Freedom in order to gain Security, will not have, nor do they deserve, either one. (T. Jefferson or B. Franklin or both...)
? 1.diff ? 1.diff.gz ? 2.diff ? 3.diff ? ?t ? fullredraw.diff ? par-row.diff ? tabular-il.diff ? textcache.diff ? insets/1.diff ? mathed/cursor.diff ? support/1.diff Index: rowpainter.C =================================================================== RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/rowpainter.C,v retrieving revision 1.92 diff -u -p -r1.92 rowpainter.C --- rowpainter.C 21 Nov 2003 15:52:11 -0000 1.92 +++ rowpainter.C 21 Nov 2003 16:00:01 -0000 @@ -1020,19 +1020,8 @@ int paintText(BufferView & bv) void paintTextInset(BufferView & bv, LyXText & text, int xo, int baseline) { RowList::iterator rit = text.firstRow(); - RowList::iterator end = text.endRow(); ParagraphList::iterator pit = text.ownerParagraphs().begin(); - - int y_offset = baseline - rit->ascent_of_text(); - int y = y_offset; - while (rit != end && y + rit->height() <= 0) { - y += rit->height(); - text.nextRow(pit, rit); - } - if (y_offset < 0) - paintRows(bv, text, pit, rit, xo, y, 0); - else - paintRows(bv, text, pit, rit, xo, y_offset, 0); + paintRows(bv, text, pit, rit, xo, baseline - rit->ascent_of_text(), 0); }