You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@poi.apache.org by Mark Murphy <jm...@gmail.com> on 2017/04/15 04:44:23 UTC

Re: [Bug 60887] Surface XSSF header/footer attributes

In writing unit tests for bug 60887, I have found an issue that I believe
will be confusing to users. I put setters and getters in XSSFHeaderFooter
for the global header/footer attributes. The reason I put it there is that
these attributes are indeed global for the sheet, they are not specific to
First, or Even/Odd headers and footers. Unfortunately this class is
Abstract, and needs to be that way due to the way XSSFHeader,
XSSFFirstHeader, etc. work. So the confusion I can foresee is that If a
user has different First and EvenOdd Headers and Footers, Settiong these
attributes in one will set that attribute in all the rest. It is not
intuitively obvious that if you create an XSSFOddHeader, and an
XSSFEvenHeader that they refer to the same XSSFHeaderFooter object. It then
follows that it wouldn't be obvious by looking at the interface that
changing AlignWithMargins in one will make the same change in all the rest,
but it does. I am not real sure how to deal with this. As it stands, the
classes require an intimate knowledge of the underlying structures in order
to use them effectively, and that is just not right for a user facing
interface.

On Tue, Mar 21, 2017 at 4:16 PM, <bu...@apache.org> wrote:

> https://bz.apache.org/bugzilla/show_bug.cgi?id=60887
>
> --- Comment #2 from Greg Woolsey <gw...@apache.org> ---
> Sounds appropriate to me.
>
> --
> You are receiving this mail because:
> You are the assignee for the bug.
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@poi.apache.org
> For additional commands, e-mail: dev-help@poi.apache.org
>
>