From 9101d13b21702a02229e9587412035409bde0b50 Mon Sep 17 00:00:00 2001 From: csh Date: Fri, 6 Sep 2024 13:44:23 +0800 Subject: [PATCH] update --- .../docx/CnfStyleUnitDecorator@DOCX.tsf | 38 +++ .../decorator/docx/TrPrUnitDecorator@DOCX.tsf | 2 + autoclass/docx/CnfStyle@DOCX.tsf | 297 ++++++++++++++++++ autoclass/docx/TrPr@DOCX.tsf | 18 +- 4 files changed, 351 insertions(+), 4 deletions(-) create mode 100644 autoclass/decorator/docx/CnfStyleUnitDecorator@DOCX.tsf create mode 100644 autoclass/docx/CnfStyle@DOCX.tsf diff --git a/autoclass/decorator/docx/CnfStyleUnitDecorator@DOCX.tsf b/autoclass/decorator/docx/CnfStyleUnitDecorator@DOCX.tsf new file mode 100644 index 0000000..4380c7d --- /dev/null +++ b/autoclass/decorator/docx/CnfStyleUnitDecorator@DOCX.tsf @@ -0,0 +1,38 @@ +type CnfStyleUnitDecorator = class(CnfStyle) +uses TSSafeUnitConverter; +public + function Create(_obj: CnfStyle); + function GetObject(); + function Convert(); +private + object_: CnfStyle; +end; + +function CnfStyleUnitDecorator.Create(_obj: CnfStyle); +begin + class(CnfStyle).Create(); + object_ := _obj; + {self.}Convert(); +end; + +function CnfStyleUnitDecorator.GetObject(); +begin + return object_; +end; + +function CnfStyleUnitDecorator.Convert(); +begin + {self.}XmlAttrVal.Value := object_.XmlAttrVal.Value; + {self.}XmlAttrFirstRow.Value := object_.XmlAttrFirstRow.Value; + {self.}XmlAttrLastRow.Value := object_.XmlAttrLastRow.Value; + {self.}XmlAttrFirstColumn.Value := object_.XmlAttrFirstColumn.Value; + {self.}XmlAttrLastColumn.Value := object_.XmlAttrLastColumn.Value; + {self.}XmlAttrOddVBand.Value := object_.XmlAttrOddVBand.Value; + {self.}XmlAttrEvenVBand.Value := object_.XmlAttrEvenVBand.Value; + {self.}XmlAttrOddHBand.Value := object_.XmlAttrOddHBand.Value; + {self.}XmlAttrEvenHBand.Value := object_.XmlAttrEvenHBand.Value; + {self.}XmlAttrFirstRowFirstColumn.Value := object_.XmlAttrFirstRowFirstColumn.Value; + {self.}XmlAttrFirstRowLastColumn.Value := object_.XmlAttrFirstRowLastColumn.Value; + {self.}XmlAttrLastRowFirstColumn.Value := object_.XmlAttrLastRowFirstColumn.Value; + {self.}XmlAttrLastRowLastColumn.Value := object_.XmlAttrLastRowLastColumn.Value; +end; \ No newline at end of file diff --git a/autoclass/decorator/docx/TrPrUnitDecorator@DOCX.tsf b/autoclass/decorator/docx/TrPrUnitDecorator@DOCX.tsf index d812064..8f8ba1b 100644 --- a/autoclass/decorator/docx/TrPrUnitDecorator@DOCX.tsf +++ b/autoclass/decorator/docx/TrPrUnitDecorator@DOCX.tsf @@ -23,6 +23,8 @@ end; function TrPrUnitDecorator.Convert(); begin {self.}TrHeight := new TrHeightUnitDecorator(object_.TrHeight); + {self.}TblHeader := new PureWValUnitDecorator(object_.TblHeader); {self.}Jc := new PureWValUnitDecorator(object_.Jc); if not ifnil(object_.XmlChildCantSplit.Value) then {self.}XmlChildCantSplit.Value := object_.XmlChildCantSplit.Value; + {self.}CnfStyle := new CnfStyleUnitDecorator(object_.CnfStyle); end; \ No newline at end of file diff --git a/autoclass/docx/CnfStyle@DOCX.tsf b/autoclass/docx/CnfStyle@DOCX.tsf new file mode 100644 index 0000000..d553fae --- /dev/null +++ b/autoclass/docx/CnfStyle@DOCX.tsf @@ -0,0 +1,297 @@ +type CnfStyle = 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: CnfStyle);override; + + property Val read ReadXmlAttrVal write WriteXmlAttrVal; + property FirstRow read ReadXmlAttrFirstRow write WriteXmlAttrFirstRow; + property LastRow read ReadXmlAttrLastRow write WriteXmlAttrLastRow; + property FirstColumn read ReadXmlAttrFirstColumn write WriteXmlAttrFirstColumn; + property LastColumn read ReadXmlAttrLastColumn write WriteXmlAttrLastColumn; + property OddVBand read ReadXmlAttrOddVBand write WriteXmlAttrOddVBand; + property EvenVBand read ReadXmlAttrEvenVBand write WriteXmlAttrEvenVBand; + property OddHBand read ReadXmlAttrOddHBand write WriteXmlAttrOddHBand; + property EvenHBand read ReadXmlAttrEvenHBand write WriteXmlAttrEvenHBand; + property FirstRowFirstColumn read ReadXmlAttrFirstRowFirstColumn write WriteXmlAttrFirstRowFirstColumn; + property FirstRowLastColumn read ReadXmlAttrFirstRowLastColumn write WriteXmlAttrFirstRowLastColumn; + property LastRowFirstColumn read ReadXmlAttrLastRowFirstColumn write WriteXmlAttrLastRowFirstColumn; + property LastRowLastColumn read ReadXmlAttrLastRowLastColumn write WriteXmlAttrLastRowLastColumn; + function ReadXmlAttrVal(); + function WriteXmlAttrVal(_value); + function ReadXmlAttrFirstRow(); + function WriteXmlAttrFirstRow(_value); + function ReadXmlAttrLastRow(); + function WriteXmlAttrLastRow(_value); + function ReadXmlAttrFirstColumn(); + function WriteXmlAttrFirstColumn(_value); + function ReadXmlAttrLastColumn(); + function WriteXmlAttrLastColumn(_value); + function ReadXmlAttrOddVBand(); + function WriteXmlAttrOddVBand(_value); + function ReadXmlAttrEvenVBand(); + function WriteXmlAttrEvenVBand(_value); + function ReadXmlAttrOddHBand(); + function WriteXmlAttrOddHBand(_value); + function ReadXmlAttrEvenHBand(); + function WriteXmlAttrEvenHBand(_value); + function ReadXmlAttrFirstRowFirstColumn(); + function WriteXmlAttrFirstRowFirstColumn(_value); + function ReadXmlAttrFirstRowLastColumn(); + function WriteXmlAttrFirstRowLastColumn(_value); + function ReadXmlAttrLastRowFirstColumn(); + function WriteXmlAttrLastRowFirstColumn(_value); + function ReadXmlAttrLastRowLastColumn(); + function WriteXmlAttrLastRowLastColumn(_value); + +public + // Attributes + XmlAttrVal: OpenXmlAttribute; + XmlAttrFirstRow: OpenXmlAttribute; + XmlAttrLastRow: OpenXmlAttribute; + XmlAttrFirstColumn: OpenXmlAttribute; + XmlAttrLastColumn: OpenXmlAttribute; + XmlAttrOddVBand: OpenXmlAttribute; + XmlAttrEvenVBand: OpenXmlAttribute; + XmlAttrOddHBand: OpenXmlAttribute; + XmlAttrEvenHBand: OpenXmlAttribute; + XmlAttrFirstRowFirstColumn: OpenXmlAttribute; + XmlAttrFirstRowLastColumn: OpenXmlAttribute; + XmlAttrLastRowFirstColumn: OpenXmlAttribute; + XmlAttrLastRowLastColumn: OpenXmlAttribute; + + // Children + +end; + +function CnfStyle.Create();overload; +begin + {self.}Create(nil, "w", "cnfStyle"); +end; + +function CnfStyle.Create(_node: XmlNode);overload; +begin + class(OpenXmlElement).Create(_node: XmlNode); +end; + +function CnfStyle.Create(_parent: tslobj; _prefix: string; _local_name: string);overload; +begin + class(OpenXmlElement).Create(_parent, _prefix, _local_name); +end; + +function CnfStyle.Init();override; +begin + {self.}XmlAttrVal := new OpenXmlAttribute({self.}Prefix, "val", nil); + {self.}XmlAttrFirstRow := new OpenXmlAttribute({self.}Prefix, "firstRow", nil); + {self.}XmlAttrLastRow := new OpenXmlAttribute({self.}Prefix, "lastRow", nil); + {self.}XmlAttrFirstColumn := new OpenXmlAttribute({self.}Prefix, "firstColumn", nil); + {self.}XmlAttrLastColumn := new OpenXmlAttribute({self.}Prefix, "lastColumn", nil); + {self.}XmlAttrOddVBand := new OpenXmlAttribute({self.}Prefix, "oddVBand", nil); + {self.}XmlAttrEvenVBand := new OpenXmlAttribute({self.}Prefix, "evenVBand", nil); + {self.}XmlAttrOddHBand := new OpenXmlAttribute({self.}Prefix, "oddHBand", nil); + {self.}XmlAttrEvenHBand := new OpenXmlAttribute({self.}Prefix, "evenHBand", nil); + {self.}XmlAttrFirstRowFirstColumn := new OpenXmlAttribute({self.}Prefix, "firstRowFirstColumn", nil); + {self.}XmlAttrFirstRowLastColumn := new OpenXmlAttribute({self.}Prefix, "firstRowLastColumn", nil); + {self.}XmlAttrLastRowFirstColumn := new OpenXmlAttribute({self.}Prefix, "lastRowFirstColumn", nil); + {self.}XmlAttrLastRowLastColumn := new OpenXmlAttribute({self.}Prefix, "lastRowLastColumn", nil); +end; + +function CnfStyle.InitAttributes();override; +begin + attributes_ := array( + {self.}XmlAttrVal, + {self.}XmlAttrFirstRow, + {self.}XmlAttrLastRow, + {self.}XmlAttrFirstColumn, + {self.}XmlAttrLastColumn, + {self.}XmlAttrOddVBand, + {self.}XmlAttrEvenVBand, + {self.}XmlAttrOddHBand, + {self.}XmlAttrEvenHBand, + {self.}XmlAttrFirstRowFirstColumn, + {self.}XmlAttrFirstRowLastColumn, + {self.}XmlAttrLastRowFirstColumn, + {self.}XmlAttrLastRowLastColumn, + ); +end; + +function CnfStyle.InitChildren();override; +begin + child_elements_ := array( + ); + sorted_child_ := array( + "": -1, + ); +end; + +function CnfStyle.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 CnfStyle.Copy(_obj: CnfStyle);override; +begin + if not ifnil(_obj.XmlAttrVal.Value) then + {self.}XmlAttrVal.Value := _obj.XmlAttrVal.Value; + if not ifnil(_obj.XmlAttrFirstRow.Value) then + {self.}XmlAttrFirstRow.Value := _obj.XmlAttrFirstRow.Value; + if not ifnil(_obj.XmlAttrLastRow.Value) then + {self.}XmlAttrLastRow.Value := _obj.XmlAttrLastRow.Value; + if not ifnil(_obj.XmlAttrFirstColumn.Value) then + {self.}XmlAttrFirstColumn.Value := _obj.XmlAttrFirstColumn.Value; + if not ifnil(_obj.XmlAttrLastColumn.Value) then + {self.}XmlAttrLastColumn.Value := _obj.XmlAttrLastColumn.Value; + if not ifnil(_obj.XmlAttrOddVBand.Value) then + {self.}XmlAttrOddVBand.Value := _obj.XmlAttrOddVBand.Value; + if not ifnil(_obj.XmlAttrEvenVBand.Value) then + {self.}XmlAttrEvenVBand.Value := _obj.XmlAttrEvenVBand.Value; + if not ifnil(_obj.XmlAttrOddHBand.Value) then + {self.}XmlAttrOddHBand.Value := _obj.XmlAttrOddHBand.Value; + if not ifnil(_obj.XmlAttrEvenHBand.Value) then + {self.}XmlAttrEvenHBand.Value := _obj.XmlAttrEvenHBand.Value; + if not ifnil(_obj.XmlAttrFirstRowFirstColumn.Value) then + {self.}XmlAttrFirstRowFirstColumn.Value := _obj.XmlAttrFirstRowFirstColumn.Value; + if not ifnil(_obj.XmlAttrFirstRowLastColumn.Value) then + {self.}XmlAttrFirstRowLastColumn.Value := _obj.XmlAttrFirstRowLastColumn.Value; + if not ifnil(_obj.XmlAttrLastRowFirstColumn.Value) then + {self.}XmlAttrLastRowFirstColumn.Value := _obj.XmlAttrLastRowFirstColumn.Value; + if not ifnil(_obj.XmlAttrLastRowLastColumn.Value) then + {self.}XmlAttrLastRowLastColumn.Value := _obj.XmlAttrLastRowLastColumn.Value; +end; + +function CnfStyle.ReadXmlAttrVal(); +begin + return {self.}XmlAttrVal.Value; +end; + +function CnfStyle.WriteXmlAttrVal(_value); +begin + {self.}XmlAttrVal.Value := _value; +end; + +function CnfStyle.ReadXmlAttrFirstRow(); +begin + return {self.}XmlAttrFirstRow.Value; +end; + +function CnfStyle.WriteXmlAttrFirstRow(_value); +begin + {self.}XmlAttrFirstRow.Value := _value; +end; + +function CnfStyle.ReadXmlAttrLastRow(); +begin + return {self.}XmlAttrLastRow.Value; +end; + +function CnfStyle.WriteXmlAttrLastRow(_value); +begin + {self.}XmlAttrLastRow.Value := _value; +end; + +function CnfStyle.ReadXmlAttrFirstColumn(); +begin + return {self.}XmlAttrFirstColumn.Value; +end; + +function CnfStyle.WriteXmlAttrFirstColumn(_value); +begin + {self.}XmlAttrFirstColumn.Value := _value; +end; + +function CnfStyle.ReadXmlAttrLastColumn(); +begin + return {self.}XmlAttrLastColumn.Value; +end; + +function CnfStyle.WriteXmlAttrLastColumn(_value); +begin + {self.}XmlAttrLastColumn.Value := _value; +end; + +function CnfStyle.ReadXmlAttrOddVBand(); +begin + return {self.}XmlAttrOddVBand.Value; +end; + +function CnfStyle.WriteXmlAttrOddVBand(_value); +begin + {self.}XmlAttrOddVBand.Value := _value; +end; + +function CnfStyle.ReadXmlAttrEvenVBand(); +begin + return {self.}XmlAttrEvenVBand.Value; +end; + +function CnfStyle.WriteXmlAttrEvenVBand(_value); +begin + {self.}XmlAttrEvenVBand.Value := _value; +end; + +function CnfStyle.ReadXmlAttrOddHBand(); +begin + return {self.}XmlAttrOddHBand.Value; +end; + +function CnfStyle.WriteXmlAttrOddHBand(_value); +begin + {self.}XmlAttrOddHBand.Value := _value; +end; + +function CnfStyle.ReadXmlAttrEvenHBand(); +begin + return {self.}XmlAttrEvenHBand.Value; +end; + +function CnfStyle.WriteXmlAttrEvenHBand(_value); +begin + {self.}XmlAttrEvenHBand.Value := _value; +end; + +function CnfStyle.ReadXmlAttrFirstRowFirstColumn(); +begin + return {self.}XmlAttrFirstRowFirstColumn.Value; +end; + +function CnfStyle.WriteXmlAttrFirstRowFirstColumn(_value); +begin + {self.}XmlAttrFirstRowFirstColumn.Value := _value; +end; + +function CnfStyle.ReadXmlAttrFirstRowLastColumn(); +begin + return {self.}XmlAttrFirstRowLastColumn.Value; +end; + +function CnfStyle.WriteXmlAttrFirstRowLastColumn(_value); +begin + {self.}XmlAttrFirstRowLastColumn.Value := _value; +end; + +function CnfStyle.ReadXmlAttrLastRowFirstColumn(); +begin + return {self.}XmlAttrLastRowFirstColumn.Value; +end; + +function CnfStyle.WriteXmlAttrLastRowFirstColumn(_value); +begin + {self.}XmlAttrLastRowFirstColumn.Value := _value; +end; + +function CnfStyle.ReadXmlAttrLastRowLastColumn(); +begin + return {self.}XmlAttrLastRowLastColumn.Value; +end; + +function CnfStyle.WriteXmlAttrLastRowLastColumn(_value); +begin + {self.}XmlAttrLastRowLastColumn.Value := _value; +end; diff --git a/autoclass/docx/TrPr@DOCX.tsf b/autoclass/docx/TrPr@DOCX.tsf index 9416239..8883175 100644 --- a/autoclass/docx/TrPr@DOCX.tsf +++ b/autoclass/docx/TrPr@DOCX.tsf @@ -18,8 +18,10 @@ public // Children TrHeight: TrHeight; + TblHeader: PureWVal; Jc: PureWVal; XmlChildCantSplit: OpenXmlEmpty; + CnfStyle: CnfStyle; end; @@ -41,8 +43,10 @@ end; function TrPr.Init();override; begin {self.}TrHeight := new TrHeight(self, {self.}Prefix, "trHeight"); + {self.}TblHeader := new PureWVal(self, {self.}Prefix, "tblHeader"); {self.}Jc := new PureWVal(self, {self.}Prefix, "jc"); {self.}XmlChildCantSplit := new OpenXmlEmpty(self, {self.}Prefix, "cantSplit"); + {self.}CnfStyle := new CnfStyle(self, {self.}Prefix, "cnfStyle"); end; function TrPr.InitAttributes();override; @@ -55,14 +59,18 @@ function TrPr.InitChildren();override; begin child_elements_ := array( 0: {self.}TrHeight, - 1: {self.}Jc, - 2: {self.}XmlChildCantSplit, + 1: {self.}TblHeader, + 2: {self.}Jc, + 3: {self.}XmlChildCantSplit, + 4: {self.}CnfStyle, ); sorted_child_ := array( "": -1, {self.}TrHeight.ElementName: 0, - {self.}Jc.ElementName: 1, - {self.}XmlChildCantSplit.ElementName: 2, + {self.}TblHeader.ElementName: 1, + {self.}Jc.ElementName: 2, + {self.}XmlChildCantSplit.ElementName: 3, + {self.}CnfStyle.ElementName: 4, ); end; @@ -107,8 +115,10 @@ end; function TrPr.Copy(_obj: TrPr);override; begin {self.}TrHeight.Copy(_obj.TrHeight); + {self.}TblHeader.Copy(_obj.TblHeader); {self.}Jc.Copy(_obj.Jc); {self.}XmlChildCantSplit.Copy(_obj.XmlChildCantSplit); + {self.}CnfStyle.Copy(_obj.CnfStyle); end; function TrPr.ReadXmlChildCantSplit();