How to best deal with XSLFTextParagraph, XSSFTextParagraph and XDDFTextParagraph?

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

How to best deal with XSLFTextParagraph, XSSFTextParagraph and XDDFTextParagraph?


Currently I am trying to find a path between maintaining some source
compatibility and throwing it completely away.

To better illustrate my concerns, please take a look at the latest
commit on my working branch:

On one hand, I break code compatibility renaming *etLineSpacing to
*etLineSpacingValue in order to merge these functions into

On the other hand, I introduce bridges between legacy enumeration and
the XDDF enumeration:

In this effort, I am dancing between the constraints of existing common
interface between HSLFTextParagraph and XSLFTextParagraph on one side,
and duplicated code, which I mostly copied into XDDFTextParagraph in the
past years, in XSLFTextParagraph and XSSFTextParagraph on the other
The origin of the whole XDDF package is due to the fact that both XSLF
and XSSF use the same underlying drawingml schema to represent text
but two distinct implementations had been derived for text bodies in
slides and in spreadsheets before I joined the project.

Maybe the right approach would be to simply throw away both XSLF and
XSSF specific implementations and keep only the XDDFTextParagaph
But then, what would occur with the common interface shared between
HSLFTextParagraph and XSLFTextParagraph, when replacing with
Should it be extended to HSSFTextParagraph and XDDFTextParagaph as well?
I never touched any class on the H**F side of the force!

I would have liked to finish this code cleanup before the wrapping up of
the 5.0.0 release otherwise we would have yet another major break to
6.0.0 with that.

Could you provide some kind of sane advices?

Kind regards,

To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]