type Fonts = 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: Fonts);override; public // attributes property property XmlnsMc read ReadXmlAttrXmlnsMc write WriteXmlAttrXmlnsMc; property XmlnsR read ReadXmlAttrXmlnsR write WriteXmlAttrXmlnsR; property XmlnsW read ReadXmlAttrXmlnsW write WriteXmlAttrXmlnsW; property XmlnsW14 read ReadXmlAttrXmlnsW14 write WriteXmlAttrXmlnsW14; property XmlnsW15 read ReadXmlAttrXmlnsW15 write WriteXmlAttrXmlnsW15; property XmlnsW16Cex read ReadXmlAttrXmlnsW16Cex write WriteXmlAttrXmlnsW16Cex; property XmlnsW16Cid read ReadXmlAttrXmlnsW16Cid write WriteXmlAttrXmlnsW16Cid; property XmlnsW16 read ReadXmlAttrXmlnsW16 write WriteXmlAttrXmlnsW16; property XmlnsW16Du read ReadXmlAttrXmlnsW16Du write WriteXmlAttrXmlnsW16Du; property XmlnsW16sdtdh read ReadXmlAttrXmlnsW16sdtdh write WriteXmlAttrXmlnsW16sdtdh; property XmlnsW16se read ReadXmlAttrXmlnsW16se write WriteXmlAttrXmlnsW16se; property McIgnorable read ReadXmlAttrMcIgnorable write WriteXmlAttrMcIgnorable; function ReadXmlAttrXmlnsMc(); function WriteXmlAttrXmlnsMc(_value); function ReadXmlAttrXmlnsR(); function WriteXmlAttrXmlnsR(_value); function ReadXmlAttrXmlnsW(); function WriteXmlAttrXmlnsW(_value); function ReadXmlAttrXmlnsW14(); function WriteXmlAttrXmlnsW14(_value); function ReadXmlAttrXmlnsW15(); function WriteXmlAttrXmlnsW15(_value); function ReadXmlAttrXmlnsW16Cex(); function WriteXmlAttrXmlnsW16Cex(_value); function ReadXmlAttrXmlnsW16Cid(); function WriteXmlAttrXmlnsW16Cid(_value); function ReadXmlAttrXmlnsW16(); function WriteXmlAttrXmlnsW16(_value); function ReadXmlAttrXmlnsW16Du(); function WriteXmlAttrXmlnsW16Du(_value); function ReadXmlAttrXmlnsW16sdtdh(); function WriteXmlAttrXmlnsW16sdtdh(_value); function ReadXmlAttrXmlnsW16se(); function WriteXmlAttrXmlnsW16se(_value); function ReadXmlAttrMcIgnorable(); function WriteXmlAttrMcIgnorable(_value); // multi property property Fonts read ReadFonts; function ReadFonts(_index); function AddFont(): Font; function AppendFont(): Font; public // Attributes XmlAttrXmlnsMc: OpenXmlAttribute; XmlAttrXmlnsR: OpenXmlAttribute; XmlAttrXmlnsW: OpenXmlAttribute; XmlAttrXmlnsW14: OpenXmlAttribute; XmlAttrXmlnsW15: OpenXmlAttribute; XmlAttrXmlnsW16Cex: OpenXmlAttribute; XmlAttrXmlnsW16Cid: OpenXmlAttribute; XmlAttrXmlnsW16: OpenXmlAttribute; XmlAttrXmlnsW16Du: OpenXmlAttribute; XmlAttrXmlnsW16sdtdh: OpenXmlAttribute; XmlAttrXmlnsW16se: OpenXmlAttribute; XmlAttrMcIgnorable: OpenXmlAttribute; // Children end; function Fonts.Create();overload; begin {self.}Create(nil, "w", "fonts"); end; function Fonts.Create(_node: XmlNode);overload; begin class(OpenXmlElement).Create(_node: XmlNode); end; function Fonts.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 Fonts.Init();override; begin pre := {self.}Prefix ? {self.}Prefix + ":" : ""; attributes_ := array(); attributes_pf_ := array( "xmlns:mc": makeweakref(thisFunction(WriteXmlAttrXmlnsMc)), "xmlns:r": makeweakref(thisFunction(WriteXmlAttrXmlnsR)), "xmlns:w": makeweakref(thisFunction(WriteXmlAttrXmlnsW)), "xmlns:w14": makeweakref(thisFunction(WriteXmlAttrXmlnsW14)), "xmlns:w15": makeweakref(thisFunction(WriteXmlAttrXmlnsW15)), "xmlns:w16cex": makeweakref(thisFunction(WriteXmlAttrXmlnsW16Cex)), "xmlns:w16cid": makeweakref(thisFunction(WriteXmlAttrXmlnsW16Cid)), "xmlns:w16": makeweakref(thisFunction(WriteXmlAttrXmlnsW16)), "xmlns:w16du": makeweakref(thisFunction(WriteXmlAttrXmlnsW16Du)), "xmlns:w16sdtdh": makeweakref(thisFunction(WriteXmlAttrXmlnsW16sdtdh)), "xmlns:w16se": makeweakref(thisFunction(WriteXmlAttrXmlnsW16se)), "mc:Ignorable": makeweakref(thisFunction(WriteXmlAttrMcIgnorable)), ); sorted_child_ := array( pre + "font": array(0, makeweakref(thisFunction(AppendFont))), ); container_ := new TSOfficeContainer(sorted_child_); end; function Fonts.Copy(_obj: Fonts);override; begin tslassigning_backup := tslassigning; tslassigning := 1; class(OpenXmlElement).Copy(_obj); if not ifnil(_obj.XmlnsMc) then {self.}XmlnsMc := _obj.XmlnsMc; if not ifnil(_obj.XmlnsR) then {self.}XmlnsR := _obj.XmlnsR; if not ifnil(_obj.XmlnsW) then {self.}XmlnsW := _obj.XmlnsW; if not ifnil(_obj.XmlnsW14) then {self.}XmlnsW14 := _obj.XmlnsW14; if not ifnil(_obj.XmlnsW15) then {self.}XmlnsW15 := _obj.XmlnsW15; if not ifnil(_obj.XmlnsW16Cex) then {self.}XmlnsW16Cex := _obj.XmlnsW16Cex; if not ifnil(_obj.XmlnsW16Cid) then {self.}XmlnsW16Cid := _obj.XmlnsW16Cid; if not ifnil(_obj.XmlnsW16) then {self.}XmlnsW16 := _obj.XmlnsW16; if not ifnil(_obj.XmlnsW16Du) then {self.}XmlnsW16Du := _obj.XmlnsW16Du; if not ifnil(_obj.XmlnsW16sdtdh) then {self.}XmlnsW16sdtdh := _obj.XmlnsW16sdtdh; if not ifnil(_obj.XmlnsW16se) then {self.}XmlnsW16se := _obj.XmlnsW16se; if not ifnil(_obj.McIgnorable) then {self.}McIgnorable := _obj.McIgnorable; tslassigning := tslassigning_backup; end; function Fonts.ReadXmlAttrXmlnsMc(); begin return {self.}XmlAttrXmlnsMc.Value; end; function Fonts.WriteXmlAttrXmlnsMc(_value); begin if ifnil({self.}XmlAttrXmlnsMc) then begin {self.}XmlAttrXmlnsMc := new OpenXmlAttribute("xmlns", "mc", nil); attributes_[length(attributes_)] := {self.}XmlAttrXmlnsMc; end {self.}XmlAttrXmlnsMc.Value := _value; end; function Fonts.ReadXmlAttrXmlnsR(); begin return {self.}XmlAttrXmlnsR.Value; end; function Fonts.WriteXmlAttrXmlnsR(_value); begin if ifnil({self.}XmlAttrXmlnsR) then begin {self.}XmlAttrXmlnsR := new OpenXmlAttribute("xmlns", "r", nil); attributes_[length(attributes_)] := {self.}XmlAttrXmlnsR; end {self.}XmlAttrXmlnsR.Value := _value; end; function Fonts.ReadXmlAttrXmlnsW(); begin return {self.}XmlAttrXmlnsW.Value; end; function Fonts.WriteXmlAttrXmlnsW(_value); begin if ifnil({self.}XmlAttrXmlnsW) then begin {self.}XmlAttrXmlnsW := new OpenXmlAttribute("xmlns", "w", nil); attributes_[length(attributes_)] := {self.}XmlAttrXmlnsW; end {self.}XmlAttrXmlnsW.Value := _value; end; function Fonts.ReadXmlAttrXmlnsW14(); begin return {self.}XmlAttrXmlnsW14.Value; end; function Fonts.WriteXmlAttrXmlnsW14(_value); begin if ifnil({self.}XmlAttrXmlnsW14) then begin {self.}XmlAttrXmlnsW14 := new OpenXmlAttribute("xmlns", "w14", nil); attributes_[length(attributes_)] := {self.}XmlAttrXmlnsW14; end {self.}XmlAttrXmlnsW14.Value := _value; end; function Fonts.ReadXmlAttrXmlnsW15(); begin return {self.}XmlAttrXmlnsW15.Value; end; function Fonts.WriteXmlAttrXmlnsW15(_value); begin if ifnil({self.}XmlAttrXmlnsW15) then begin {self.}XmlAttrXmlnsW15 := new OpenXmlAttribute("xmlns", "w15", nil); attributes_[length(attributes_)] := {self.}XmlAttrXmlnsW15; end {self.}XmlAttrXmlnsW15.Value := _value; end; function Fonts.ReadXmlAttrXmlnsW16Cex(); begin return {self.}XmlAttrXmlnsW16Cex.Value; end; function Fonts.WriteXmlAttrXmlnsW16Cex(_value); begin if ifnil({self.}XmlAttrXmlnsW16Cex) then begin {self.}XmlAttrXmlnsW16Cex := new OpenXmlAttribute("xmlns", "w16cex", nil); attributes_[length(attributes_)] := {self.}XmlAttrXmlnsW16Cex; end {self.}XmlAttrXmlnsW16Cex.Value := _value; end; function Fonts.ReadXmlAttrXmlnsW16Cid(); begin return {self.}XmlAttrXmlnsW16Cid.Value; end; function Fonts.WriteXmlAttrXmlnsW16Cid(_value); begin if ifnil({self.}XmlAttrXmlnsW16Cid) then begin {self.}XmlAttrXmlnsW16Cid := new OpenXmlAttribute("xmlns", "w16cid", nil); attributes_[length(attributes_)] := {self.}XmlAttrXmlnsW16Cid; end {self.}XmlAttrXmlnsW16Cid.Value := _value; end; function Fonts.ReadXmlAttrXmlnsW16(); begin return {self.}XmlAttrXmlnsW16.Value; end; function Fonts.WriteXmlAttrXmlnsW16(_value); begin if ifnil({self.}XmlAttrXmlnsW16) then begin {self.}XmlAttrXmlnsW16 := new OpenXmlAttribute("xmlns", "w16", nil); attributes_[length(attributes_)] := {self.}XmlAttrXmlnsW16; end {self.}XmlAttrXmlnsW16.Value := _value; end; function Fonts.ReadXmlAttrXmlnsW16Du(); begin return {self.}XmlAttrXmlnsW16Du.Value; end; function Fonts.WriteXmlAttrXmlnsW16Du(_value); begin if ifnil({self.}XmlAttrXmlnsW16Du) then begin {self.}XmlAttrXmlnsW16Du := new OpenXmlAttribute("xmlns", "w16du", nil); attributes_[length(attributes_)] := {self.}XmlAttrXmlnsW16Du; end {self.}XmlAttrXmlnsW16Du.Value := _value; end; function Fonts.ReadXmlAttrXmlnsW16sdtdh(); begin return {self.}XmlAttrXmlnsW16sdtdh.Value; end; function Fonts.WriteXmlAttrXmlnsW16sdtdh(_value); begin if ifnil({self.}XmlAttrXmlnsW16sdtdh) then begin {self.}XmlAttrXmlnsW16sdtdh := new OpenXmlAttribute("xmlns", "w16sdtdh", nil); attributes_[length(attributes_)] := {self.}XmlAttrXmlnsW16sdtdh; end {self.}XmlAttrXmlnsW16sdtdh.Value := _value; end; function Fonts.ReadXmlAttrXmlnsW16se(); begin return {self.}XmlAttrXmlnsW16se.Value; end; function Fonts.WriteXmlAttrXmlnsW16se(_value); begin if ifnil({self.}XmlAttrXmlnsW16se) then begin {self.}XmlAttrXmlnsW16se := new OpenXmlAttribute("xmlns", "w16se", nil); attributes_[length(attributes_)] := {self.}XmlAttrXmlnsW16se; end {self.}XmlAttrXmlnsW16se.Value := _value; end; function Fonts.ReadXmlAttrMcIgnorable(); begin return {self.}XmlAttrMcIgnorable.Value; end; function Fonts.WriteXmlAttrMcIgnorable(_value); begin if ifnil({self.}XmlAttrMcIgnorable) then begin {self.}XmlAttrMcIgnorable := new OpenXmlAttribute("mc", "Ignorable", nil); attributes_[length(attributes_)] := {self.}XmlAttrMcIgnorable; end {self.}XmlAttrMcIgnorable.Value := _value; end; function Fonts.ReadFonts(_index); begin ind := ifnil(_index) ? -2 : _index; pre := {self.}Prefix ? {self.}Prefix + ":" : ""; return container_.Get(pre + "font", ind); end; function Fonts.AddFont(): Font; begin obj := new Font(self, {self.}Prefix, "font"); container_.Insert(obj); return obj; end; function Fonts.AppendFont(): Font; begin obj := new Font(self, {self.}Prefix, "font"); container_.Append(obj); return obj; end;