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


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





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.