Make ooxml-handles work in odp

Regina Henschel rb.henschel at t-online.de
Sun Aug 4 12:19:49 UTC 2019


Hi all,

Regina Henschel schrieb am 28-Jul-19 um 20:03:
> 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?
> 

Since I didn't get any reaction at all, I now did the approach with 
static array. The result is in https://gerrit.libreoffice.org/#/c/76887/5

But I'm not quite satisfied yet. If you open an 'ooxml' format file, the 
method MergeDefaultAttributes is called twice. In the previous solution 
it is immediately recognized at the beginning of the 'Handle' section 
that the method is not responsible, because pDefCustomShape is then 
NULL. But now also for these cases my 'else' branch would be executed, 
although when opening an 'ooxml' format file the necessary properties 
certainly exist.

Is there a way to tell at this point whether the current file has an 
'ooxml' format?

Otherwise I could only check within the loop in the properties of the 
concrete 'handle', whether RefX, RefY, RefR or RefAngle exists. That's 
still missing, and I'm not sure if it's worth it at all at this point. 
Duplicate entries are already prevented by the createItemIfMissing() method.

Kind regards
Regina


More information about the LibreOffice mailing list