unit PptxML; interface type SldLayoutId = class(OpenXmlCompositeElement) 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: SldLayoutId);override; function ConvertToPoint();override; public // attributes property property Id read ReadXmlAttrId write WriteXmlAttrId; property IdN read ReadXmlAttrIdN write WriteXmlAttrIdN; property RId read ReadXmlAttrRId write WriteXmlAttrRId; function ReadXmlAttrId(_ns: string); function WriteXmlAttrId(_p1: any; _p2: any); function ReadXmlAttrIdN(); function WriteXmlAttrIdN(_value: any); function ReadXmlAttrRId(); function WriteXmlAttrRId(_value: any); public // Attributes XmlAttrId: OpenXmlAttribute; XmlAttrIdN: OpenXmlAttribute; XmlAttrRId: OpenXmlAttribute; end; implementation function SldLayoutId.Create();overload; begin {self.}Create(nil, "p", "sldLayoutId"); end; function SldLayoutId.Create(_node: XmlNode);overload; begin inherited Create(_node); end; function SldLayoutId.Create(_parent: tslobj; _prefix: string; _local_name: string);overload; begin setsysparam(pn_calcctrlword(), getsysparam(pn_calcctrlword()) .| 0x200); inherited Create(_parent, _prefix, _local_name); end; function SldLayoutId.Init();override; begin pre := {self.}Prefix ? {self.}Prefix + ":" : ""; attributes_ := array(); attributes_pf_ := array( pre + "id": makeweakref(thisFunction(WriteXmlAttrId)), "id": makeweakref(thisFunction(WriteXmlAttrIdN)), "r:id": makeweakref(thisFunction(WriteXmlAttrRId)), ); sorted_child_ := array( ); container_ := new TSOfficeContainer(sorted_child_); end; function SldLayoutId.Copy(_obj: SldLayoutId);override; begin tslassigning_backup := tslassigning; tslassigning := 1; class(OpenXmlCompositeElement).Copy(_obj); if not ifnil(_obj.Id) then {self.}Id := _obj.Id; if not ifnil(_obj.IdN) then {self.}IdN := _obj.IdN; if not ifnil(_obj.RId) then {self.}RId := _obj.RId; tslassigning := tslassigning_backup; end; function SldLayoutId.ConvertToPoint();override; begin end; function SldLayoutId.ReadXmlAttrId(_ns: string); begin if _ns = "" then return {self.}ReadXmlAttrIdN(); if _ns = "r" then return {self.}ReadXmlAttrRId(); return ifnil({self.}XmlAttrId.Value) ? fallback_.XmlAttrId.Value : {self.}XmlAttrId.Value; end; function SldLayoutId.WriteXmlAttrId(_p1: any; _p2: any); begin if realparamcount = 2 then begin if _p1 = "" then return {self.}WriteXmlAttrIdN(_p2); if _p1 = "r" then return {self.}WriteXmlAttrRId(_p2); end if ifnil({self.}XmlAttrId) then begin {self.}XmlAttrId := new OpenXmlAttribute({self.}Prefix, "id", nil); attributes_[{self.}Prefix ? {self.}Prefix + ":" + "id" : "id"] := {self.}XmlAttrId; end {self.}XmlAttrId.Value := realparamcount = 1 ? _p1 : _p2; end; function SldLayoutId.ReadXmlAttrIdN(); begin return ifnil({self.}XmlAttrIdN.Value) ? fallback_.XmlAttrIdN.Value : {self.}XmlAttrIdN.Value; end; function SldLayoutId.WriteXmlAttrIdN(_value: any); begin if ifnil({self.}XmlAttrIdN) then begin {self.}XmlAttrIdN := new OpenXmlAttribute("", "id", nil); attributes_["id"] := {self.}XmlAttrIdN; end {self.}XmlAttrIdN.Value := _value; end; function SldLayoutId.ReadXmlAttrRId(); begin return ifnil({self.}XmlAttrRId.Value) ? fallback_.XmlAttrRId.Value : {self.}XmlAttrRId.Value; end; function SldLayoutId.WriteXmlAttrRId(_value: any); begin if ifnil({self.}XmlAttrRId) then begin {self.}XmlAttrRId := new OpenXmlAttribute("r", "id", nil); attributes_["r:id"] := {self.}XmlAttrRId; end {self.}XmlAttrRId.Value := _value; end; end.