bug 74702

Jan-Marek Glogowski glogow at fbihome.de
Mon Apr 22 11:49:38 UTC 2019


Hi Adrien,

Am 22.04.19 um 10:58 schrieb Adrien Ollier:
>   1.  there is function XParaPortionList::RefDevIsVirtual() that uses attribute XParaPortionList::eRefDevIsVirtual which is of type OutDevType which must be removed.
> XParaPortionList::eRefDevIsVirtual is never set (https://opengrok.libreoffice.org/xref/core/editeng/source/editeng/editobj2.hxx?r=f2373813), so may I delete XParaPortionList::eRefDevIsVirtual, XParaPortionList::RefDevIsVirtual() and the call to XParaPortionList::RefDevIsVirtual() in editeng/source/editeng/impedit4.cxx line 1174?

RefDevIsVirtual uses eRefDevType. Please see the constructor of
XParaPortionList. And GetOutDevType is non-virtual inline, so I would guess
RefDevIsVirtual could just use that, instead of copying the value. meOutDevType
is const, so no really need for a copy. I doubt it's performance-sensitive and
the code has been in the "initial import" git commit in 2000.

Quite probably it's the same for GetRefMapMode, but that isn't const, so
something might try to test the value against the OutputDevice one to detect
changes and handle that. I doubt it, but that needs to be checked.

>   2.  In editeng/source/editeng/impedit2.cxx it is required to cast an OutputDevice* to a vcl::PDFWriterImpl* to know the real type of pOut (and test if the resulting pointer is nullptr or not). This requires to include vcl/source/gdi/pdfwriter_impl.hxx but this file is not in the common directory for inclusion. How can I include vcl/source/gdi/pdfwriter_impl.hxx?

If that is really needed, the header has to be moved to include/vcl. But as Mike
I couldn't quick-grep the code you're referring to.

I've added a comment to the bug to help people understand the task.

Otherwise I agree with Mike: please post a patch to Gerrit, preferably one that
already compiles.

Jan-Marek


More information about the LibreOffice mailing list