Bug 40753 - HSLF: support for master sheets
Summary: HSLF: support for master sheets
Alias: None
Product: POI
Classification: Unclassified
Component: HSLF (show other bugs)
Version: unspecified
Hardware: Other other
: P2 normal (vote)
Target Milestone: ---
Assignee: POI Developers List
Depends on:
Reported: 2006-10-13 07:41 UTC by Yegor Kozlov
Modified: 2006-10-17 11:01 UTC (History)
0 users

patch with the changes (80.61 KB, patch)
2006-10-13 07:42 UTC, Yegor Kozlov
Details | Diff
modified classes (66.73 KB, application/x-zip-compressed)
2006-10-13 07:42 UTC, Yegor Kozlov

Note You need to log in before you can comment on or make changes to this bug.
Description Yegor Kozlov 2006-10-13 07:41:51 UTC
Summary of changes

(1) Support of master sheets in HSLF

org.apache.poi.hslf.model.MasterSheet  is a superclass of all master sheets -
Slide masters, Notes masters, Handout masters, etc.
For now HSLF supports only sLide masters, the implementation is in
Since it is a subclass of Sheet all required initializers added to SlideShow.

No more RichTextRun.getFontName(),  RichTextRun.getFontSize() and other style
accessors return null or -1! 
If style is not defined or the requested attribute is missing it is read from
the master sheet.

(2) support for color schemes.

If a RGB value is in the range [0x8000000, 0x8000007] it means that the color
from the sheet's color scheme is used. 

0x8000000 - use color with index 0
0x8000001 - use color with index 1
0x8000007 - use color with index 7
(ColorSchemeAtom holds 8 colors) 

This rule works for all type of colors: line, fill, font color, etc.

(3) Polished code for org.apache.poi.hslf.model.Shape and the subclasses. 

I had to change the signatures of the static constants in
I hate to do it but they were wrong and confusing. 

Comment 1 Yegor Kozlov 2006-10-13 07:42:19 UTC
Created attachment 19000 [details]
patch with the changes
Comment 2 Yegor Kozlov 2006-10-13 07:42:42 UTC
Created attachment 19001 [details]
modified classes
Comment 3 Nick Burch 2006-10-17 11:01:54 UTC
Thanks for all this code Yegor, I've committed it