Bug 40753

Summary: HSLF: support for master sheets
Product: POI Reporter: Yegor Kozlov <yegor>
Component: HSLFAssignee: POI Developers List <dev>
Status: RESOLVED FIXED    
Severity: normal    
Priority: P2    
Version: unspecified   
Target Milestone: ---   
Hardware: Other   
OS: other   
Attachments: patch with the changes
modified classes

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
org.apache.poi.hslf.model.SlideMaster.
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
org.apache.poi.hslf.model.Line.
I hate to do it but they were wrong and confusing. 

Yegor
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