type ClrMap = class(OpenXmlElement) public function Create();overload; function Create(_node);overload; function Create(_parent, _prefix, _local_name);overload; function Init();override; function InitAttributes();override; function InitChildren();override; function InitNode(_node);override; function Copy(_obj);override; property Bg1 read ReadXmlAttrBg1 write WriteXmlAttrBg1; property Tx1 read ReadXmlAttrTx1 write WriteXmlAttrTx1; property Bg2 read ReadXmlAttrBg2 write WriteXmlAttrBg2; property Tx2 read ReadXmlAttrTx2 write WriteXmlAttrTx2; property Accent1 read ReadXmlAttrAccent1 write WriteXmlAttrAccent1; property Accent2 read ReadXmlAttrAccent2 write WriteXmlAttrAccent2; property FolHlink read ReadXmlAttrFolHlink write WriteXmlAttrFolHlink; function ReadXmlAttrBg1(); function WriteXmlAttrBg1(_value); function ReadXmlAttrTx1(); function WriteXmlAttrTx1(_value); function ReadXmlAttrBg2(); function WriteXmlAttrBg2(_value); function ReadXmlAttrTx2(); function WriteXmlAttrTx2(_value); function ReadXmlAttrAccent1(); function WriteXmlAttrAccent1(_value); function ReadXmlAttrAccent2(); function WriteXmlAttrAccent2(_value); function ReadXmlAttrFolHlink(); function WriteXmlAttrFolHlink(_value); public // Attributes XmlAttrBg1; XmlAttrTx1; XmlAttrBg2; XmlAttrTx2; XmlAttrAccent1; XmlAttrAccent2; XmlAttrFolHlink; // Children end; function ClrMap.Create();overload; begin self.Create(nil, "p", "clrMap"); end; function ClrMap.Create(_node);overload; begin class(OpenXmlElement).Create(_node); end; function ClrMap.Create(_parent, _prefix, _local_name);overload; begin class(OpenXmlElement).Create(_parent, _prefix, _local_name); end; function ClrMap.Init();override; begin self.XmlAttrBg1 := new OpenXmlAttribute(nil, "bg1", nil); self.XmlAttrTx1 := new OpenXmlAttribute(nil, "tx1", nil); self.XmlAttrBg2 := new OpenXmlAttribute(nil, "bg2", nil); self.XmlAttrTx2 := new OpenXmlAttribute(nil, "tx2", nil); self.XmlAttrAccent1 := new OpenXmlAttribute(nil, "accent1", nil); self.XmlAttrAccent2 := new OpenXmlAttribute(nil, "accent2", nil); self.XmlAttrFolHlink := new OpenXmlAttribute(nil, "folHlink", nil); end; function ClrMap.InitAttributes();override; begin attributes_ := array( self.XmlAttrBg1, self.XmlAttrTx1, self.XmlAttrBg2, self.XmlAttrTx2, self.XmlAttrAccent1, self.XmlAttrAccent2, self.XmlAttrFolHlink, ); end; function ClrMap.InitChildren();override; begin child_elements_ := array( ); sorted_child_ := array( "": -1, ); end; function ClrMap.InitNode(_node);override; begin if ifObj(self.XmlNode) then for k,v in child_elements_ do v.InitNode(nil); self.XmlNode := ifObj(_node) ? _node : nil; end; function ClrMap.Copy(_obj);override; begin if not ifnil(_obj.XmlAttrBg1.Value) then self.XmlAttrBg1.Value := _obj.XmlAttrBg1.Value; if not ifnil(_obj.XmlAttrTx1.Value) then self.XmlAttrTx1.Value := _obj.XmlAttrTx1.Value; if not ifnil(_obj.XmlAttrBg2.Value) then self.XmlAttrBg2.Value := _obj.XmlAttrBg2.Value; if not ifnil(_obj.XmlAttrTx2.Value) then self.XmlAttrTx2.Value := _obj.XmlAttrTx2.Value; if not ifnil(_obj.XmlAttrAccent1.Value) then self.XmlAttrAccent1.Value := _obj.XmlAttrAccent1.Value; if not ifnil(_obj.XmlAttrAccent2.Value) then self.XmlAttrAccent2.Value := _obj.XmlAttrAccent2.Value; if not ifnil(_obj.XmlAttrFolHlink.Value) then self.XmlAttrFolHlink.Value := _obj.XmlAttrFolHlink.Value; end; function ClrMap.ReadXmlAttrBg1(); begin return self.XmlAttrBg1.Value; end; function ClrMap.WriteXmlAttrBg1(_value); begin self.XmlAttrBg1.Value := _value; end; function ClrMap.ReadXmlAttrTx1(); begin return self.XmlAttrTx1.Value; end; function ClrMap.WriteXmlAttrTx1(_value); begin self.XmlAttrTx1.Value := _value; end; function ClrMap.ReadXmlAttrBg2(); begin return self.XmlAttrBg2.Value; end; function ClrMap.WriteXmlAttrBg2(_value); begin self.XmlAttrBg2.Value := _value; end; function ClrMap.ReadXmlAttrTx2(); begin return self.XmlAttrTx2.Value; end; function ClrMap.WriteXmlAttrTx2(_value); begin self.XmlAttrTx2.Value := _value; end; function ClrMap.ReadXmlAttrAccent1(); begin return self.XmlAttrAccent1.Value; end; function ClrMap.WriteXmlAttrAccent1(_value); begin self.XmlAttrAccent1.Value := _value; end; function ClrMap.ReadXmlAttrAccent2(); begin return self.XmlAttrAccent2.Value; end; function ClrMap.WriteXmlAttrAccent2(_value); begin self.XmlAttrAccent2.Value := _value; end; function ClrMap.ReadXmlAttrFolHlink(); begin return self.XmlAttrFolHlink.Value; end; function ClrMap.WriteXmlAttrFolHlink(_value); begin self.XmlAttrFolHlink.Value := _value; end;