<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Feb 22, 2016 at 12:57 AM, Khaled Hosny <span dir="ltr"><<a href="mailto:khaledhosny@eglug.org" target="_blank">khaledhosny@eglug.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span class="">On Sun, Feb 21, 2016 at 10:56:16PM +0100, Craig Bradney wrote:<br>
> > We managed to finally rebase the work, it can now be found at:<br>
> > <a href="https://github.com/HOST-Oman/scribus/tree/boxes" rel="noreferrer" target="_blank">https://github.com/HOST-Oman/scribus/tree/boxes</a><br>
> ><br>
> > It builds and runs, but some regressions were introduced during the<br>
> > (complex) rebase, we are now tracking them down then back to completing<br>
> > the work. We really appreciate if people can poke around and tell us if<br>
> > we are moving on the right direction.<br>
> ><br>
> > Regards,<br>
> > Khaled<br>
> ><br>
> > P.S. Since Andreas is not responding again and the more we work on the<br>
> > code the harder it is to rebase, we had to abandon work on the old pull<br>
> > request to his GitHub repository in order to be able to rebase the code.<br>
><br>
><br>
> Cool stuff. Building it now so I can help a little if required to help<br>
> merge/diff/patch in the future.<br>
<br>
</span>Great. We just fixed the couple of regressions we found after the merge<br>
and the code should be now back to the same state before the merge,<br>
which is that screen rendering is OK, PDF semi-works and we are working<br>
on completing it, all other backends are broken (PS, SVG, XPS,<br>
ScPageOutput?).<br>
<br>
To give an overview of the changes:<br>
<br>
A new boxes model have been introduced, there are currently 3 box types<br>
implemented: GroupBox (kind of a container for other boxes), LineBox (a<br>
specialised GroupBox for lines) and GlyphBox (the smallest box<br>
containing a glyph or group of closely related glyphs).<br>
<br>
The result of PageItem_TextFrame::layout() is packaged in a GroupBox<br>
containing LineBoxes which in turn contain GlyphBoxes. There is a<br>
Box::render() method (implemented by all subclasses) that takes a<br>
ScPainter and do all the heavy lifting of rendering a box and eventually<br>
calls ScPainter primitives to do the actual rendering (drawLine,<br>
drawGlyph, etc.).<br>
<br>
ScPainter have been turned into a virtual class, with specialised<br>
implementations for each target output. The existing Cairo-based painter<br>
have been turned into a ScScreenPainter (but I think ScImagePainter<br>
would be more accurate now since I just found that it draws to a Cairo<br>
image surface). A new PdfPainter have been introduced for PDF output<br>
(incomplete yet), and there should be a new PsPainter, SvgPainter, etc.<br>
all implementing the output-specific code.<br>
<br>
Regards,<br>
Khaled</blockquote><div><br></div><div>Great! Rebuilding now. </div><div><br></div><div>Questions: </div><div>1) Should I submit bugs to <a href="https://github.com/HOST-Oman/scribus/issues">https://github.com/HOST-Oman/scribus/issues</a> ?</div><div>2) Are you guys going to have a roadmap to help testers see where you'd like to see tests more focused on? </div><div><br></div><div>/Kunda</div><div><br></div></div><br></div></div>