On Fri, Aug 8, 2014 at 6:18 PM, Matteo Campanelli <
matteo.campane...@gmail.com> wrote:

>
> [Code]
>
The code above truncates the text in the first box.
> The text in the second paragraph is restored by creating an appropriate
> SdrChainedTextPrimitive object and its create2DDecomposition method.
> It seems that such a method is never called when all text is overflowing,
> i.e. when newText above is NULL.
> The two are plausibly one consequence of the other.
>
Elaborating on the last two sentences:
I verified that when OutlinerParaObject is NULL, SdrChainedTextPrimitive is
not created (and thus text cannot be moved to the second text box).

I traced the problem back to SdrTextAttribute objects in
createTextPrimitive not having a property isToBeChained set to true.
Apparently, this happens because createSdrFooAttribute functions
(sdrattributecreator.cxx) ignores chaining property. I fixed the issue for
createSdrTextAttribute but it seems not to be that simple for the sibling
methods.
Working on that...


> An ideal solution would be to replace that NULL pointer with a dummy
> OutlinerParaObject or something like that.
> Any hint on how to do this?
>
This may still be necessary to bypass the problem.


> In case anyone wanted to have a look:
>
> http://cgit.freedesktop.org/libreoffice/core/tree/svx/source/svdraw/svdotxed.cxx?h=feature/gsoc14-draw-chained-text-boxes#n252
>
>
> http://cgit.freedesktop.org/libreoffice/core/tree/svx/source/sdr/primitive2d/sdrtextprimitive2d.cxx?h=feature/gsoc14-draw-chained-text-boxes#n488
>
> Cheers,
> Matteo
>
_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice

Reply via email to