type PlotArea = class(OpenXmlElement) public function Create();overload; function Create(_node: XmlNode);overload; function Create(_parent: tslobj; _prefix: string; _local_name: string);overload; function Init();override; function Copy(_obj: PlotArea);override; public // empty property property Layout read ReadXmlChildLayout write WriteXmlChildLayout; function ReadXmlChildLayout(); function WriteXmlChildLayout(_value); // normal property property BarChart read ReadXmlChildBarChart; property CatAx read ReadXmlChildCatAx; property ValAx read ReadXmlChildValAx; property DTable read ReadXmlChildDTable; property SpPr read ReadXmlChildSpPr; function ReadXmlChildBarChart(); function ReadXmlChildCatAx(); function ReadXmlChildValAx(); function ReadXmlChildDTable(); function ReadXmlChildSpPr(); public // Children XmlChildLayout: OpenXmlEmpty; XmlChildBarChart: BarChart; XmlChildCatAx: Ax; XmlChildValAx: Ax; XmlChildDTable: DTable; XmlChildSpPr: SpPr; end; function PlotArea.Create();overload; begin {self.}Create(nil, "c", "plotArea"); end; function PlotArea.Create(_node: XmlNode);overload; begin class(OpenXmlElement).Create(_node: XmlNode); end; function PlotArea.Create(_parent: tslobj; _prefix: string; _local_name: string);overload; begin setsysparam(pn_calcctrlword(), getsysparam(pn_calcctrlword()) .| 0x200); class(OpenXmlElement).Create(_parent, _prefix, _local_name); end; function PlotArea.Init();override; begin pre := {self.}Prefix ? {self.}Prefix + ":" : ""; attributes_ := array(); attributes_pf_ := array( ); sorted_child_ := array( pre + "layout": array(0, makeweakref(thisFunction(ReadXmlChildLayout))), pre + "barChart": array(1, makeweakref(thisFunction(ReadXmlChildBarChart))), pre + "catAx": array(2, makeweakref(thisFunction(ReadXmlChildCatAx))), pre + "ValAx": array(3, makeweakref(thisFunction(ReadXmlChildValAx))), pre + "dTable": array(4, makeweakref(thisFunction(ReadXmlChildDTable))), pre + "SpPr": array(5, makeweakref(thisFunction(ReadXmlChildSpPr))), ); container_ := new TSOfficeContainer(sorted_child_); end; function PlotArea.Copy(_obj: PlotArea);override; begin tslassigning_backup := tslassigning; tslassigning := 1; class(OpenXmlElement).Copy(_obj); if not ifnil(_obj.XmlChildLayout) then ifnil({self.}XmlChildLayout) ? {self.}Layout.Copy(_obj.XmlChildLayout) : {self.}XmlChildLayout.Copy(_obj.XmlChildLayout); if not ifnil(_obj.XmlChildBarChart) then {self.}BarChart.Copy(_obj.XmlChildBarChart); if not ifnil(_obj.XmlChildCatAx) then {self.}CatAx.Copy(_obj.XmlChildCatAx); if not ifnil(_obj.XmlChildValAx) then {self.}ValAx.Copy(_obj.XmlChildValAx); if not ifnil(_obj.XmlChildDTable) then {self.}DTable.Copy(_obj.XmlChildDTable); if not ifnil(_obj.XmlChildSpPr) then {self.}SpPr.Copy(_obj.XmlChildSpPr); tslassigning := tslassigning_backup; end; function PlotArea.ReadXmlChildLayout(); begin if tslassigning and ifnil({self.}XmlChildLayout) then begin {self.}XmlChildLayout := new OpenXmlEmpty(self, {self.}Prefix, "layout"); container_.Set({self.}XmlChildLayout); return {self.}XmlChildLayout; end return ifnil({self.}XmlChildLayout) ? false : {self.}XmlChildLayout.BoolValue(); end; function PlotArea.WriteXmlChildLayout(_value); begin if ifnil({self.}XmlChildLayout) then begin {self.}XmlChildLayout := new OpenXmlEmpty(self, {self.}Prefix, "layout"); container_.Set({self.}XmlChildLayout); end {self.}XmlChildLayout.Value := _value; end; function PlotArea.ReadXmlChildBarChart(); begin if tslassigning and ifnil({self.}XmlChildBarChart) then begin {self.}XmlChildBarChart := new BarChart(self, {self.}Prefix, "barChart"); container_.Set({self.}XmlChildBarChart); end return {self.}XmlChildBarChart; end; function PlotArea.ReadXmlChildCatAx(); begin if tslassigning and ifnil({self.}XmlChildCatAx) then begin {self.}XmlChildCatAx := new Ax(self, {self.}Prefix, "catAx"); container_.Set({self.}XmlChildCatAx); end return {self.}XmlChildCatAx; end; function PlotArea.ReadXmlChildValAx(); begin if tslassigning and ifnil({self.}XmlChildValAx) then begin {self.}XmlChildValAx := new Ax(self, {self.}Prefix, "ValAx"); container_.Set({self.}XmlChildValAx); end return {self.}XmlChildValAx; end; function PlotArea.ReadXmlChildDTable(); begin if tslassigning and ifnil({self.}XmlChildDTable) then begin {self.}XmlChildDTable := new DTable(self, {self.}Prefix, "dTable"); container_.Set({self.}XmlChildDTable); end return {self.}XmlChildDTable; end; function PlotArea.ReadXmlChildSpPr(); begin if tslassigning and ifnil({self.}XmlChildSpPr) then begin {self.}XmlChildSpPr := new SpPr(self, {self.}Prefix, "SpPr"); container_.Set({self.}XmlChildSpPr); end return {self.}XmlChildSpPr; end;