OfficeXml/pptx/PptxComponents.tsf

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;