Date: prev next · Thread: first prev next last
2019 Archives by date, by thread · List index


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

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.