summaryrefslogtreecommitdiff
path: root/librelogo/source/icons/breeze/lc_editglossary.png
diff options
context:
space:
mode:
authorArmin Le Grand (collabora) <Armin.LeGrand@collabora.com>2026-03-03 10:39:41 +0100
committerArmin Le Grand <Armin.Le.Grand@me.com>2026-03-03 16:19:27 +0100
commit9e7549cd5adcb5d8b042dd60caee90b2df587db7 (patch)
tree7be0cc7a660d8460251884eb17c8be695fd71cb7 /librelogo/source/icons/breeze/lc_editglossary.png
parentb9fb1674312a0c4a2a4038fa4623e0ad4fad244a (diff)
SmartArt: Diverse changes for SmartArt handling
Changed the DiagramImportSize no longer be handled/held as part of the DiagramModel part, but with the change to use the XShapes/SdrObjects consequently use the transformation from there to be consistent. With that change also added own impls of TRGet/SetBaseGeometry to SdrObjGroup. There were none, thus the defaults from SdrObject were used. This is mainly correct, but since SdrObjGroup is based on GetSnapRect() it already contains the evtl. existing anchor offset (from SW), so the results were wrong for SW. Secured the knowledge if we are in Im/Export by adding methods for is/inc/decImportExport to SdrModel and using these. Locking the model was pretty safe, but e.g. missing for import. Still added it there to be consistent with other imports, may also bring some speedup. I have cleaned LayoutNode from the member 'SmartArtDiagram& mrDgm' since LayoutNode is model data and with that in place it would have been necessary to deep-clone or re-import the complete DiagramLayout, just to make sure that those members of SmartArtDiagram& will reference the correct - newly created - SmartArtDiagram. That again would have been hard to keep under control due to LayoutNodes hosting a full hierarchy of LayoutNodes in it's base class LayoutAtom, so complicated deep-copy and need of virtual Clone method at LayoutAtom to do the right thing for all eight derivations of it. This is now no longer needed. It can just stay shared, thus the DiagramLayoutPtr gets just copied above. This reflects that the layout mechanism hosted by these atoms is not changed itself, but used (in some ForEach manner) to create the shapes, so does not need to be changed itself. It gets now just additionally referenced by the SmartArtDiagram copy costructor. That is for non-deep copy/paste where this copy operator is used. Instead of deep copy the SmartArtDiagram constructor with import from boost::property_tree has to be used which will have to re-import the layout model data to mpLayout anyways. Instead of having SmartArtDiagram as member it now will be handed as needed to import contexts (LayoutNodeContext and derivatives). All those classes are used temporarily and are not part of the model. It also gets handed over for shape re-creation in LayoutAtomVisitorBase and it's derivates. Also those classes are used temporarily and are not part of the model. Added detection of click on Diagram frame in SC and SW to get the Dialog working as in SW and SD to be able to test# some stuff. All still secured by ACTIVATE_ADVANCED_DIAGRAM_FEATURES and wirk in progress, but some stuff is looking better. Change-Id: I660b205155a4e317585035ec3cacddbc96db08c7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200875 Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com> Tested-by: Jenkins
Diffstat (limited to 'librelogo/source/icons/breeze/lc_editglossary.png')
0 files changed, 0 insertions, 0 deletions