OfficeXml/autoclass/docx/Tab@DOCX.tsf

118 lines
2.9 KiB
Plaintext

type Tab = 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 InitAttributes();override;
function InitChildren();override;
function InitNode(_node: XmlNode);override;
function Copy(_obj: Tab);override;
property Val read ReadXmlAttrVal write WriteXmlAttrVal;
property Leader read ReadXmlAttrLeader write WriteXmlAttrLeader;
property Pos read ReadXmlAttrPos write WriteXmlAttrPos;
function ReadXmlAttrVal();
function WriteXmlAttrVal(_value);
function ReadXmlAttrLeader();
function WriteXmlAttrLeader(_value);
function ReadXmlAttrPos();
function WriteXmlAttrPos(_value);
public
// Attributes
XmlAttrVal: OpenXmlAttribute;
XmlAttrLeader: OpenXmlAttribute;
XmlAttrPos: OpenXmlAttribute;
// Children
end;
function Tab.Create();overload;
begin
{self.}Create(nil, "w", "tab");
end;
function Tab.Create(_node: XmlNode);overload;
begin
class(OpenXmlElement).Create(_node: XmlNode);
end;
function Tab.Create(_parent: tslobj; _prefix: string; _local_name: string);overload;
begin
class(OpenXmlElement).Create(_parent, _prefix, _local_name);
end;
function Tab.Init();override;
begin
{self.}XmlAttrVal := new OpenXmlAttribute(nil, "val", nil);
{self.}XmlAttrLeader := new OpenXmlAttribute({self.}Prefix, "leader", nil);
{self.}XmlAttrPos := new OpenXmlAttribute({self.}Prefix, "pos", nil);
end;
function Tab.InitAttributes();override;
begin
attributes_ := array(
{self.}XmlAttrVal,
{self.}XmlAttrLeader,
{self.}XmlAttrPos,
);
end;
function Tab.InitChildren();override;
begin
child_elements_ := array(
);
sorted_child_ := array(
"": -1,
);
end;
function Tab.InitNode(_node: XmlNode);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 Tab.Copy(_obj: Tab);override;
begin
if not ifnil(_obj.XmlAttrVal.Value) then
{self.}XmlAttrVal.Value := _obj.XmlAttrVal.Value;
if not ifnil(_obj.XmlAttrLeader.Value) then
{self.}XmlAttrLeader.Value := _obj.XmlAttrLeader.Value;
if not ifnil(_obj.XmlAttrPos.Value) then
{self.}XmlAttrPos.Value := _obj.XmlAttrPos.Value;
end;
function Tab.ReadXmlAttrVal();
begin
return {self.}XmlAttrVal.Value;
end;
function Tab.WriteXmlAttrVal(_value);
begin
{self.}XmlAttrVal.Value := _value;
end;
function Tab.ReadXmlAttrLeader();
begin
return {self.}XmlAttrLeader.Value;
end;
function Tab.WriteXmlAttrLeader(_value);
begin
{self.}XmlAttrLeader.Value := _value;
end;
function Tab.ReadXmlAttrPos();
begin
return {self.}XmlAttrPos.Value;
end;
function Tab.WriteXmlAttrPos(_value);
begin
{self.}XmlAttrPos.Value := _value;
end;