216 lines
6.5 KiB
Plaintext
216 lines
6.5 KiB
Plaintext
type PptxComponents = class(TSComponentsBase)
|
|
public
|
|
function Create();
|
|
function Init();override;
|
|
|
|
property Rels read ReadRels;
|
|
property App read ReadApp;
|
|
property Core read ReadCore;
|
|
property PresentationRels read ReadPresentationRels;
|
|
property SlideLayouts read ReadSlideLayouts;
|
|
property SlideLayoutRels read ReadSlideLayoutRels;
|
|
property SlideMasters read ReadSlideMasters;
|
|
property SlideMasterRels read ReadSlideMasterRels;
|
|
property Slides read ReadSlides;
|
|
property SlideRels read ReadSlideRels;
|
|
property Themes read ReadThemes;
|
|
property Presentation read ReadPresentation;
|
|
property PresProps read ReadPresProps;
|
|
property TableStyles read ReadTableStyles;
|
|
property ViewProps read ReadViewProps;
|
|
property ContentTypes read ReadContentTypes;
|
|
function ReadRels();
|
|
function ReadApp();
|
|
function ReadCore();
|
|
function ReadPresentationRels();
|
|
function ReadSlideLayouts(_index: integer);
|
|
function ReadSlideLayoutRels(_index: integer);
|
|
function ReadSlideMasters(_index: integer);
|
|
function ReadSlideMasterRels(_index: integer);
|
|
function ReadSlides(_index: integer);
|
|
function ReadSlideRels(_index: integer);
|
|
function ReadThemes(_index: integer);
|
|
function ReadPresentation();
|
|
function ReadPresProps();
|
|
function ReadTableStyles();
|
|
function ReadViewProps();
|
|
function ReadContentTypes();
|
|
|
|
protected
|
|
function NewObject(_name: string): tslobj;override;
|
|
|
|
private
|
|
|
|
// xml
|
|
rels_: Relationships;
|
|
app_: Properties;
|
|
core_: CoreProperties;
|
|
presentation_rels_: Relationships;
|
|
slide_layout_array_: array of SldLayout;
|
|
slide_layout_rels_array_ array of Relationships;
|
|
slide_master_array_: array of SldMaster;
|
|
slide_master_rels_array_: array of Relationships;
|
|
slide_array_: array of Sld;
|
|
slide_rels_array_: array of Relationships;
|
|
theme_array_: array of Theme;
|
|
presentation_: Presentation;
|
|
pres_props_: PresnetationPr;
|
|
table_styles_: TblStyleLst;
|
|
view_props_: ViewPr;
|
|
content_types_: Types;
|
|
end;
|
|
|
|
function PptxComponents.Create();
|
|
begin
|
|
inherited;
|
|
end;
|
|
|
|
function PptxComponents.Init();override;
|
|
begin
|
|
conf_ := array
|
|
(
|
|
"rels": array("_rels/.rels", "Relationships"),
|
|
"app": array("docProps/app.xml", "Properties"),
|
|
"core": array("docProps/core.xml", "cp:coreProperties"),
|
|
"presentation_rels": array("ppt/_rels/presentation.xml.rels", "Relationships"),
|
|
"slide_layout": array("ppt/slideLayouts/slideLayout%d.xml", "p:sldLayout"),
|
|
"slide_layout_rels": array("ppt/slideLayouts/_rels/slideLayout%d.xml.rels", "Relationships"),
|
|
"slide_master": array("ppt/slideMasters/slideMaster%d.xml", "p:sldMaster"),
|
|
"slide_master_rels": array("ppt/slideMasters/_rels/slideMaster%d.xml.rels", "Relationships"),
|
|
"slide": array("ppt/slides/slide%d.xml", "p:sld"),
|
|
"slide_rels": array("ppt/slides/_rels/slide%d.xml.rels", "Relationships"),
|
|
"theme": array("ppt/theme/theme%d.xml", "a:theme"),
|
|
"presentation": array("ppt/presentation.xml", "p:presentation"),
|
|
"pres_props": array("ppt/presProps.xml", "p:presentationPr"),
|
|
"table_styles": array("ppt/tableStyles.xml", "a:tblStyleLst"),
|
|
"view_props": array("ppt/viewProps.xml", "p:viewPr"),
|
|
"content_types": array("[Content_Types].xml", "Types"),
|
|
);
|
|
rels_ := nil;
|
|
app_ := nil;
|
|
core_ := nil;
|
|
presentation_rels_ := nil;
|
|
slide_layout_array_ := array();
|
|
slide_layout_rels_array_ := array();
|
|
slide_master_array_ := array();
|
|
slide_master_rels_array_ := array();
|
|
slide_array_ := array();
|
|
slide_rels_array_ := array();
|
|
theme_array_ := array();
|
|
presentation_ := nil;
|
|
pres_props_ := nil;
|
|
table_styles_ := nil;
|
|
view_props_ := nil;
|
|
content_types_ := nil;
|
|
end;
|
|
|
|
function PptxComponents.NewObject(_name: string): tslobj;override;
|
|
begin
|
|
case _name of
|
|
"rels", "presentation_rels", "slide_layout_rels", "slide_master_rels", "slide_rels":
|
|
return new Relationships();
|
|
"app":
|
|
return new Properties();
|
|
"core":
|
|
return new CoreProperties();
|
|
"theme":
|
|
return new Theme();
|
|
"content_types":
|
|
return new Types();
|
|
"slide":
|
|
return new Sld();
|
|
"slide_layout":
|
|
return new SldLayout();
|
|
"slide_master":
|
|
return new SldMaster();
|
|
"presentation":
|
|
return new Presentation();
|
|
"pres_props":
|
|
return new PresnetationPr();
|
|
"table_styles":
|
|
return new TblStyleLst();
|
|
"view_props":
|
|
return new ViewPr();
|
|
end;
|
|
end;
|
|
|
|
function PptxComponents.ReadRels();
|
|
begin
|
|
return {self.}SetProp(rels_, "rels");
|
|
end;
|
|
|
|
function PptxComponents.ReadApp();
|
|
begin
|
|
return {self.}SetProp(app_, "app");
|
|
end;
|
|
|
|
function PptxComponents.ReadCore();
|
|
begin
|
|
return {self.}SetProp(core_, "core");
|
|
end;
|
|
|
|
function PptxComponents.ReadPresentationRels();
|
|
begin
|
|
return {self.}SetProp(presentation_rels_, "presentation_rels");
|
|
end;
|
|
|
|
function PptxComponents.ReadSlideLayouts(_index: integer);
|
|
begin
|
|
return {self.}SetPropArr(slide_layout_array_, "slide_layout", _index);
|
|
end;
|
|
|
|
function PptxComponents.ReadSlideLayoutRels(_index: integer);
|
|
begin
|
|
return {self.}SetPropArr(slide_layout_rels_array_, "slide_layout_rels", _index);
|
|
end;
|
|
|
|
function PptxComponents.ReadSlideMasters(_index: integer);
|
|
begin
|
|
return {self.}SetPropArr(slide_master_array_, "slide_master", _index);
|
|
end;
|
|
|
|
function PptxComponents.ReadSlideMasterRels(_index: integer);
|
|
begin
|
|
return {self.}SetPropArr(slide_master_rels_array_, "slide_master_rels", _index);
|
|
end;
|
|
|
|
function PptxComponents.ReadSlides(_index: integer);
|
|
begin
|
|
return {self.}SetPropArr(slide_array_, "slide", _index);
|
|
end;
|
|
|
|
function PptxComponents.ReadSlideRels(_index: integer);
|
|
begin
|
|
return {self.}SetPropArr(slide_rels_array_, "slide_rels", _index);
|
|
end;
|
|
|
|
function PptxComponents.ReadThemes(_index: integer);
|
|
begin
|
|
return {self.}SetPropArr(theme_array_, "theme", _index);
|
|
end;
|
|
|
|
function PptxComponents.ReadPresentation();
|
|
begin
|
|
return {self.}SetProp(presentation_, "presentation");
|
|
end;
|
|
|
|
function PptxComponents.ReadPresProps();
|
|
begin
|
|
return {self.}SetProp(pres_props_, "pres_props");
|
|
end;
|
|
|
|
function PptxComponents.ReadTableStyles();
|
|
begin
|
|
return {self.}SetProp(table_styles_, "table_styles");
|
|
end;
|
|
|
|
function PptxComponents.ReadViewProps();
|
|
begin
|
|
return {self.}SetProp(view_props_, "view_props");
|
|
end;
|
|
|
|
function PptxComponents.ReadContentTypes();
|
|
begin
|
|
return {self.}SetProp(content_types_, "content_types");
|
|
end;
|