• Armin Le Grand's avatar
    tdf#118662 Cleanup old hack with cloned SdrCaptionObj · cbc992e7
    Armin Le Grand yazdı
    XclObjComment formally cloned the SdrCaptionObj for a single
    reason - to suppress functionality of the UNO API implementation
    in SvxShape::GetBitmap - non-inserted SdrObjects did not create
    Graphic return values.
    
    Changed this to use an exclusive flag at SdrCaptionObj, only
    accessible for XclObjComment. Due to bad/undefined behaviour
    of SdrObjects that are not iinserted anywhere (see old comment
    in XclObjComment) there is no way to return to cloning the
    SdrObjects just to have them without being added to a SdrPage.
    
    Also improved the time eater UNO API implementation SvxShape::GetBitmap
    to use more modern stuff to create the Graphics needed. All the
    time constructing a full E3DView and setting SdrObjects selected
    and getting the selection as graphic is way too expensive. That
    way save may even get somewhat faster.
    
    Last was to cleanup the bInserted flag in SdrObject. It is no
    longer needed, being inserted now depends on being a member
    of an SdrObjList (Group or Page) - sounds normal anyways and
    is a synergy effect of already done AW080 cleanups.
    
    Checked now on linux. Problem is UnitTest 'testN777345' which
    checks file "n777345.docx".
    
    First point is that this only happens
      #if !defined(MACOSX)
      #if !defined(_WIN32)
    so it's clear why I detected no problem on Windows.
    
    Second point is that this test takes a checksum of a Graphic
    that is created using getReplacementGraphic() this value *will*
    change - of course - every time creation of that graphic is
    even *slightly* modified, so from my POV this UnitTest is
    defined to fill quite often. It may even create different
    results on different systems (!). Adaption of the test value
     will be needed quite often and makes this test questionable.
    
    Change-Id: If0918831a9cbd61b31298aeac7342e1913ee6c7a
    Reviewed-on: https://gerrit.libreoffice.org/57758
    Tested-by: Jenkins
    Reviewed-by: 's avatarArmin Le Grand <Armin.Le.Grand@cib.de>
    cbc992e7
svdocapt.hxx 6.43 KB