Hi all,I'm working on https://bugs.documentfoundation.org/show_bug.cgi?id=126512 "Open pptx and save as odp, handle of shape is visible but cannot be moved"
I have found, that this can be fixed by adding the reference properties (RefX, RefY, RefAngle, RefR) to the handles in method SdrObjCustomShape::MergeDefaultAttributes in /core/svx/source/svdraw/svdoashp.cxx
I have tested it for single shapes. To implement it for all shapes, I need a method, that has a shape type (e.g. "ooxml-blockArc") and a handle-index as input and has a first reference name and its referenced adjustment value index, and a second reference name and its referenced adjustment value index as output. More than two references do not exist for a handle.
There are 120 preset shapes that have a handle at all. Some have more than one handle, so there are 243 handles in total.
I can imagine to write a parser similar to the one from https://opengrok.libreoffice.org/xref/core/oox/source/drawingml/customshapepresetdata.cxx. There the information is fetched at runtime from the file "oox-drawingml-cs-presets".
Or I create a static array with the necessary information and fetch the information from there, similar to https://opengrok.libreoffice.org/xref/core/oox/source/drawingml/presetgeometrynames.cxx
Any other ideas? How do it best? Kind regards Regina