diff --git a/README.md b/README.md index 2ecf197..cc4e130 100644 --- a/README.md +++ b/README.md @@ -12,4 +12,6 @@ TSOffice 项目:纯 TSL 代码实现 excel、word 文件读写 ## 帮助文档 -- [Excel 帮助文档](./ExcelFile%E4%BD%BF%E7%94%A8%E5%B8%AE%E5%8A%A9.xlsx) +- [Excel 帮助文档](./ExcelFile%E4%BD%BF%E7%94%A8%E5%B8%AE%E5%8A%A9.xlsx) 涵盖了对Excel文件的操作API + +- [TOfficeObj 帮助文档](./TOfficeObj.md) 使用的对象的文档说明,比如说“样式”(TStyle)对象 diff --git a/TOfficeObj.md b/TOfficeObj.md new file mode 100644 index 0000000..b99b370 --- /dev/null +++ b/TOfficeObj.md @@ -0,0 +1,144 @@ +# TOfficeObj 说明文档 + +## TStyle + +- **NumberFormat** : `class` : [**TNumFmts**](#tnumfmts) 数字样式 +- **Alignment** : `class` : [**TAligment**](#taligment) 对齐样式 +- **Font** : `class` : [**TFont**](#tfont) 字体样式 +- **Border** : `class` : [**TBorder**](#tborders) 边框样式 +- **Fill** : `class` : [**TFills**](#tfills) 填充样式 +- **Protection** : `class` : [**TProtection**](#tprotection) 保护样式 + +## TNumFmts + +- **FormatCode** : `string` + +## TAligment + +- **Horizontal** : `string` 水平对齐 + - nil(默认):靠右 + - "center" : 居中 + - "left" : 靠左 + - "fill" : 填充 + - "justify" : 两端对齐 + - "distributed" : 分散对齐 + - "centerContinuous" : 跨列居中 +- **Vertical** : `string` 垂直对齐 + - nil(默认):靠下 + - "center" : 居中 + - "top" : 靠上 + - "justify" : 两端对齐 + - "distributed" : 分散对齐 +- **WrapText** : `boolean` 是否自动换行,默认不换行 +- **ReadingOrder** : `string` 文字方向 + - nil(默认):根据内容 + - "1" : 总是从左到右 + - "2" : 总是从右到左 + +## TFont + +- **Name** : `string`,字体名称 +- **Size** : `float` 字体大小 +- **Bold** : `boolean` 是否加粗,默认不加粗 +- **Italic** : `boolean` 是否倾斜,默认不倾斜 +- **Charset** : `string` 字符集,可不设置 +- **Strikethrough** : `boolean` 是否启用删除线,默认不启用 +- **Script** : `string` 上下标 + - "subscript" : 下标 + - "superscript" : 上标 +- _颜色,只能设置以下一种属性_ + - **Color** : `string` RGB 颜色,如"FFA020F0" + - **ThemeColor** : `int` 主题颜色 +- **Underline** : `string` 下划线,默认无 + - "double" : 双下划线 + - "singleAccounting" : 会计单下划线 + - "doubleAccounting" : 会计双下划线 + +```md +未使用 + +- **FontStyle** : `string` +- **OutlineFont** : `string` +- **shadow** : `string` +- **Background** : `string` +- **TintAndShade** : +- **rFont** : +- **ThemeFont** : +- **ColorIndex** : `string` +``` + +## TBorders + +- **Left** : `class` : [**TBorder**](#tborder) 左边框 +- **Right** : `class` : [**TBorder**](#tborder) 右边框 +- **Top** : `class` : [**TBorder**](#tborder) 上边框 +- **Bottom** : `class` : [**TBorder**](#tborder) 下边框 +- **DiagonalUp** : `boolean` 斜上对角线 +- **DiagonalDown** : `boolean` 斜下对角线 +- **Diagonal** : `class` : [**TBorder**](#tborder) 对角线,设置 **DiagonalUp** 或 **DiagonalDown** 时有效 + +## TBorder + +- **LineStyle** : `string` 线型 + - "hair" + - "dotted" + - "dashDotDot" + - "dashDot" + - "dashed" + - "thin" + - "slantDashDot" + - "mediumDashDodDot" + - "mediumDashDot" + - "mediumDashed" + - "medium" + - "thick" + - "double" +- _颜色,只能设置以下一种属性_ + - **Color** : `string` RGB 颜色,如"FFA020F0" + - **ThemeColor** : `int` 主题颜色 + +## TFills + +只能设置一种填充方式 + +- **Pattern** : `class` : [**TPattern**](#tpattern) 图案填充 +- **Gradient** : `class` : [**TGradient**](#tgradient) 颜色渐变填充 + +## TPattern + +- **PatternType** : `string` 图案样式 +- _颜色:前景色,只能设置以下一种属性_ + - **ForegroundColor** : `string` RGB 颜色 + - **ForegroundThemeColor** : `int` 主题颜色 +- _颜色:背景色,只能设置以下一种属性_ + - **BackgroundColor** : `string` RGB 颜色 + - **BackgroundThemeColor** : `int` 主题颜色 + +## TGradient + +- _颜色 1:渐变的颜色 1,但每个颜色只能设置以下一种属性_ + - **Color1** : `string` RGB 颜色 + - **ThemeColor1** : `int` 主题颜色 +- _颜色 2:渐变的颜色 2,但每个颜色只能设置以下一种属性_ + - **Color2** : `string` RGB 颜色 + - **ThemeColor2** : `int` 主题颜色 +- **Shading** : `int` 底纹样式 + + |
取值
| 样式 | 取值 | 样式 | + | ----------------------------------- | -------------------------------------------------------------------------------- | ---- | ------------------------------------------------- | + | 0 | 水平渐变,颜色 1 从上到下渐变到颜色 2 | 1 | 水平渐变,颜色 2 从上到下渐变到颜色 1 | + | 2 | 水平渐变,三层颜色,颜色 1 从上渐变到中间颜色 2,再从颜色 2 渐变到底部颜色 1 | + | 3 | 垂直渐变,颜色 1 从左到右渐变到颜色 2 | 4 | 垂直渐变,颜色 2 从右到左渐变到颜色 1 | + | 5 | 垂直渐变,三层颜色,颜色 1 从左渐变到中间颜色 2,再从颜色 2 渐变到右边颜色 1 | + | 6 | 斜上渐变,颜色 1 左上渐变到右下颜色 2 | 7 | 斜上渐变,颜色 2 左上渐变到右下颜色 1 | + | 8 | 斜上渐变,三层颜色,颜色 1 从左上渐变到对角线颜色 2,再从颜色 2 渐变到右下颜色 1 | + | 9 | 斜下渐变,颜色 1 右上渐变到左下颜色 2 | 10 | 斜下渐变,颜色 2 左上渐变到右下颜色 1 | + | 11 | 斜下渐变,三层颜色,颜色 1 从左上渐变到对角线颜色 2,再从颜色 2 渐变到右下颜色 1 | + | 12 | 角部辐射渐变,颜色 1 左上角辐射渐变到右下角 | 13 | 角部辐射渐变,颜色 1 右上角辐射渐变到左下角颜色 2 | + | 14 | 角部辐射渐变,颜色 1 左下角辐射渐变到右上角 | 15 | 角部辐射渐变,颜色 1 右下角辐射渐变到左上角颜色 2 | + | 16 | 中心辐射渐变,颜色 1 从中心向四周辐射到颜色 2 | + +## TProtection + +- **Lock** : `boolean` 是否锁定 +- **Hide** : `boolean` 是否隐藏 diff --git a/funcext/TSOffice/TOfficeObj.tsf b/funcext/TSOffice/TOfficeObj.tsf index 38b46a3..c34aaa6 100644 --- a/funcext/TSOffice/TOfficeObj.tsf +++ b/funcext/TSOffice/TOfficeObj.tsf @@ -1,5 +1,5 @@ -Function TOfficeObj(n); -Begin +Function TOfficeObj(n); +Begin case lowercase(n) of "nodeinfo": return new NodeInfo(""); @@ -119,12 +119,8 @@ Begin return new TFills(); "tpattern": return new TPattern(); - "tgradient": - return new TGradient(); - "tstop0": - return new TStop0(); - "tstop1": - return new TStop1(); + "tstop": + return new TStop(); "talignment": return new TAlignment(); "tprotection": @@ -197,46 +193,51 @@ Begin return new TCoreProperties(); "tpicture": return new TPicture(); + "tgradient": + return new TGradient(); End; End; /////////////////////////////////////////////////////////////// /// TFont /////////////////////////////////////////////////////////////// -type TFont=class(NodeInfo) - Function Create(); overload; - Begin - Create('font'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TFont=class(NodeInfo) + Function Create(); overload; + Begin + Create('font'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"background", "obj":Background,"attrEx":"","nodeType":"","attrName":""),("name":"b", "obj":Bold,"attrEx":"","nodeType":"empty","attrName":"") ,("name":"color", "obj":Color,"attrEx":"","nodeType":"","attrName":"rgb"),("name":"color", "obj":ColorIndex,"attrEx":"index","nodeType":"","attrName":"") ,("name":"fontstyle", "obj":FontStyle,"attrEx":"","nodeType":"","attrName":""),("name":"i", "obj":Italic,"attrEx":"","nodeType":"empty","attrName":"") ,("name":"name", "obj":Name,"attrEx":"","nodeType":"","attrName":""),("name":"outlinefont", "obj":OutlineFont,"attrEx":"","nodeType":"","attrName":"") ,("name":"shadow", "obj":Shadow,"attrEx":"","nodeType":"","attrName":""),("name":"sz", "obj":Size,"attrEx":"","nodeType":"","attrName":"") - ,("name":"strikethrough", "obj":Strikethrough,"attrEx":"","nodeType":"","attrName":""),("name":"subscript", "obj":Subscript,"attrEx":"","nodeType":"","attrName":"") - ,("name":"superscript", "obj":Superscript,"attrEx":"","nodeType":"","attrName":""),("name":"u", "obj":Underline,"attrEx":"","nodeType":"empty","attrName":"") + ,("name":"strike", "obj":Strikethrough,"attrEx":"","nodeType":"empty","attrName":""),("name":"subscript", "obj":Subscript,"attrEx":"","nodeType":"","attrName":"") + ,("name":"superscript", "obj":Superscript,"attrEx":"","nodeType":"","attrName":""),("name":"u", "obj":Underline,"attrEx":"","nodeType":"empty_string","attrName":"") ,("name":"color", "obj":ThemeColor,"attrEx":"theme","nodeType":"","attrName":""),("name":"tintandshade", "obj":TintAndShade,"attrEx":"","nodeType":"","attrName":"") - ,("name":"rFont", "obj":rFont,"attrEx":"","nodeType":"","attrName":""),("name":"charset", "obj":Charset,"attrEx":"","nodeType":"","attrName":"") - ,("name":"scheme", "obj":ThemeFont,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; + ,("name":"scheme", "obj":ThemeFont,"attrEx":"","nodeType":"","attrName":""),("name":"vertAlign", "obj":Script,"attrEx":"","nodeType":"","attrName":"") + ,("name":"charset", "obj":Charset,"attrEx":"","nodeType":"","attrName":""),("name":"rFont", "obj":rFont,"attrEx":"","nodeType":"","attrName":"") + ) union ExtNodes; End; //Attributes @@ -258,46 +259,52 @@ type TFont=class(NodeInfo) Underline; ThemeColor; TintAndShade; - rFont; - Charset; ThemeFont; + Script; + Charset; + rFont; End; /////////////////////////////////////////////////////////////// /// TComment /////////////////////////////////////////////////////////////// -type TComment=class(NodeInfo) - Function Create(); overload; - Begin - Create('r'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TComment=class(NodeInfo) + Function Create(); overload; + Begin + Create('r'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin + Visible := new BOOL('Visible'); Font := new TFont('rPr'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin - return array(("name":Font.NodeName, "obj":Font,"attrEx":"","nodeType":"","attrName":""),("name":"t", "obj":Text,"attrEx":"","nodeType":"pcdata","attrName":"") - ,("name":"t", "obj":Space,"attrEx":"xml:space","nodeType":"","attrName":"")) union ExtNodes; + Function GetChildren(); override; + Begin + HandleChildren(); + return array(("name":Visible.NodeName, "obj":Visible,"attrEx":"","nodeType":"","attrName":""),("name":Font.NodeName, "obj":Font,"attrEx":"","nodeType":"","attrName":"") + ,("name":"t", "obj":Text,"attrEx":"","nodeType":"pcdata","attrName":""),("name":"t", "obj":Space,"attrEx":"xml:space","nodeType":"","attrName":"") + ) union ExtNodes; End; //Attributes //Nodes + Visible; Font; Text; Space; @@ -306,48 +313,50 @@ End; /////////////////////////////////////////////////////////////// /// TComments /////////////////////////////////////////////////////////////// -type TComments=class(NodeInfo) - Function Create(); overload; - Begin - Create('comment/text'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TComments=class(NodeInfo) + Function Create(); overload; + Begin + Create('comment/text'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('authorId':AuthorId,'ref':Ref) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; - Function AddComment(text); - Begin - o := new TComment("r"); - ExtNodes[ length(ExtNodes) ] := array("name":"r", "obj":o, "attrEx":"", "nodeType":""); - o.Text := text; - o.Font.Bold := ""; - o.Font.Size := 9; - o.Font.rFont := "宋体"; - o.Font.Charset := 134; - return o; - End; - - Function Comment(index); - Begin - return GetNode(index); + Function AddComment(text); + Begin + o := new TComment("r"); + ExtNodes[ length(ExtNodes) ] := array("name":"r", "obj":o, "attrEx":"", "nodeType":""); + o.Text := text; + o.Font.Bold := ""; + o.Font.Size := 9; + o.Font.rFont := "宋体"; + o.Font.Charset := 134; + return o; + End; + + Function Comment(index); + Begin + return GetNode(index); End; //Attributes @@ -360,44 +369,46 @@ End; /////////////////////////////////////////////////////////////// /// TRichText /////////////////////////////////////////////////////////////// -type TRichText=class(NodeInfo) - Function Create(); overload; - Begin - Create('si'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TRichText=class(NodeInfo) + Function Create(); overload; + Begin + Create('si'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; - Function AddText(text); - Begin - o := new TComment("r"); - ExtNodes[ length(ExtNodes) ] := array("name":"r", "obj":o, "attrEx":"", "nodeType":""); - o.Text := text; - return o; - End; - - Function RichText(index); - Begin - return GetNode(index); + Function AddText(text); + Begin + o := new TComment("r"); + ExtNodes[ length(ExtNodes) ] := array("name":"r", "obj":o, "attrEx":"", "nodeType":""); + o.Text := text; + return o; + End; + + Function RichText(index); + Begin + return GetNode(index); End; //Attributes @@ -408,30 +419,32 @@ End; /////////////////////////////////////////////////////////////// /// TxdrFromTo /////////////////////////////////////////////////////////////// -type TxdrFromTo=class(NodeInfo) - Function Create(); overload; - Begin - Create('xdr:from'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TxdrFromTo=class(NodeInfo) + Function Create(); overload; + Begin + Create('xdr:from'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"xdr:col", "obj":Col,"attrEx":"","nodeType":"pcdata","attrName":""),("name":"xdr:colOff", "obj":ColOff,"attrEx":"","nodeType":"pcdata","attrName":"") ,("name":"xdr:row", "obj":Row,"attrEx":"","nodeType":"pcdata","attrName":""),("name":"xdr:rowOff", "obj":RowOff,"attrEx":"","nodeType":"pcdata","attrName":"") ) union ExtNodes; @@ -449,30 +462,32 @@ End; /////////////////////////////////////////////////////////////// /// TOff /////////////////////////////////////////////////////////////// -type TOff=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:off'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TOff=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:off'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('x':X,'y':Y) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; @@ -486,30 +501,32 @@ End; /////////////////////////////////////////////////////////////// /// TExt /////////////////////////////////////////////////////////////// -type TExt=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:ext'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TExt=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:ext'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('cx':Cx,'cy':Cy) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; @@ -523,32 +540,34 @@ End; /////////////////////////////////////////////////////////////// /// TXfrm /////////////////////////////////////////////////////////////// -type TXfrm=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:xfrm'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TXfrm=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:xfrm'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin Off := new TOff('a:off'); Ext := new TExt('a:ext'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":Off.NodeName, "obj":Off,"attrEx":"","nodeType":"","attrName":""),("name":Ext.NodeName, "obj":Ext,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; End; @@ -563,33 +582,35 @@ End; /////////////////////////////////////////////////////////////// /// TClientData /////////////////////////////////////////////////////////////// -type TClientData=class(NodeInfo) - Function Create(); overload; - Begin - Create('x:ClientData'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TClientData=class(NodeInfo) + Function Create(); overload; + Begin + Create('x:ClientData'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin ObjectType := "Note"; MoveWithCells := ""; SizeWithCells := ""; //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('ObjectType':ObjectType) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"x:MoveWithCells", "obj":MoveWithCells,"attrEx":"","nodeType":"empty","attrName":""),("name":"x:SizeWithCells", "obj":SizeWithCells,"attrEx":"","nodeType":"empty","attrName":"") ,("name":"x:Anchor", "obj":Anchor,"attrEx":"","nodeType":"pcdata","attrName":""),("name":"x:AutoFill", "obj":AutoFill,"attrEx":"","nodeType":"pcdata","attrName":"") ,("name":"x:Row", "obj":Row,"attrEx":"","nodeType":"pcdata","attrName":""),("name":"x:Column", "obj":Column,"attrEx":"","nodeType":"pcdata","attrName":"") @@ -611,30 +632,32 @@ End; /////////////////////////////////////////////////////////////// /// TGraphicFramePr /////////////////////////////////////////////////////////////// -type TGraphicFramePr=class(NodeInfo) - Function Create(); overload; - Begin - Create('xdr:cNvGraphicFramePr'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TGraphicFramePr=class(NodeInfo) + Function Create(); overload; + Begin + Create('xdr:cNvGraphicFramePr'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"xdr:cNvPr", "obj":Name,"attrEx":"name","nodeType":"","attrName":""),("name":"xdr:cNvPr", "obj":Id,"attrEx":"id","nodeType":"","attrName":"") ) union ExtNodes; End; @@ -649,33 +672,35 @@ End; /////////////////////////////////////////////////////////////// /// TGraphicFrame /////////////////////////////////////////////////////////////// -type TGraphicFrame=class(NodeInfo) - Function Create(); overload; - Begin - Create('xdr:graphicFrame'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TGraphicFrame=class(NodeInfo) + Function Create(); overload; + Begin + Create('xdr:graphicFrame'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin GraphicFramePr := new TGraphicFramePr('xdr:nvGraphicFramePr'); Xfrm := new TXfrm('xdr:xfrm'); Graphic := new TGraphic('a:graphic'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":GraphicFramePr.NodeName, "obj":GraphicFramePr,"attrEx":"","nodeType":"","attrName":""),("name":Xfrm.NodeName, "obj":Xfrm,"attrEx":"","nodeType":"","attrName":"") ,("name":Graphic.NodeName, "obj":Graphic,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -691,33 +716,35 @@ End; /////////////////////////////////////////////////////////////// /// TtwoCellAnchor /////////////////////////////////////////////////////////////// -type TtwoCellAnchor=class(NodeInfo) - Function Create(); overload; - Begin - Create('xdr:twoCellAnchor'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TtwoCellAnchor=class(NodeInfo) + Function Create(); overload; + Begin + Create('xdr:twoCellAnchor'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin XFrom := new TxdrFromTo('xdr:from'); XTo := new TxdrFromTo('xdr:to'); GraphicFrame := new TGraphicFrame('xdr:graphicFrame'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('editAs':EditAs) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":XFrom.NodeName, "obj":XFrom,"attrEx":"","nodeType":"","attrName":""),("name":XTo.NodeName, "obj":XTo,"attrEx":"","nodeType":"","attrName":"") ,("name":GraphicFrame.NodeName, "obj":GraphicFrame,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -734,20 +761,20 @@ End; /////////////////////////////////////////////////////////////// /// TChart /////////////////////////////////////////////////////////////// -type TChart=class(NodeInfo) - Function Create(); overload; - Begin - Create('t:chart'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TChart=class(NodeInfo) + Function Create(); overload; + Begin + Create('t:chart'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin Series := array(); XAxis := new TChartAxis('XAxis'); YAxis := new TChartAxis('YAxis'); @@ -756,13 +783,15 @@ type TChart=class(NodeInfo) //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"BegColOff", "obj":BegColOff,"attrEx":"","nodeType":"","attrName":""),("name":"BegRowOff", "obj":BegRowOff,"attrEx":"","nodeType":"","attrName":"") ,("name":"EndColOff", "obj":EndColOff,"attrEx":"","nodeType":"","attrName":""),("name":"EndRowOff", "obj":EndRowOff,"attrEx":"","nodeType":"","attrName":"") ,("name":"Name", "obj":Name,"attrEx":"","nodeType":"","attrName":""),("name":"Title", "obj":Title,"attrEx":"","nodeType":"","attrName":"") @@ -779,7 +808,7 @@ type TChart=class(NodeInfo) End; Function AddSeries(Name, Categories, Value); - Begin + Begin Series union= array(("Name":Name,"Categories":Categories,"Values":Value)); End; @@ -816,30 +845,32 @@ End; /////////////////////////////////////////////////////////////// /// TLegend /////////////////////////////////////////////////////////////// -type TLegend=class(NodeInfo) - Function Create(); overload; - Begin - Create('legend'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TLegend=class(NodeInfo) + Function Create(); overload; + Begin + Create('legend'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"ShowLegendKey", "obj":ShowLegendKey,"attrEx":"","nodeType":"","attrName":""),("name":"Position", "obj":Position,"attrEx":"","nodeType":"","attrName":"") ,("name":"None", "obj":None,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -855,30 +886,32 @@ End; /////////////////////////////////////////////////////////////// /// TPlot /////////////////////////////////////////////////////////////// -type TPlot=class(NodeInfo) - Function Create(); overload; - Begin - Create('TPlot'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TPlot=class(NodeInfo) + Function Create(); overload; + Begin + Create('TPlot'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"ShowBubbleSize", "obj":ShowBubbleSize,"attrEx":"","nodeType":"","attrName":""),("name":"ShowCatName", "obj":ShowCatName,"attrEx":"","nodeType":"","attrName":"") ,("name":"ShowLeaderLines", "obj":ShowLeaderLines,"attrEx":"","nodeType":"","attrName":""),("name":"ShowPercent", "obj":ShowPercent,"attrEx":"","nodeType":"","attrName":"") ,("name":"ShowSerName", "obj":ShowSerName,"attrEx":"","nodeType":"","attrName":""),("name":"ShowVal", "obj":ShowVal,"attrEx":"","nodeType":"","attrName":"") @@ -899,32 +932,34 @@ End; /////////////////////////////////////////////////////////////// /// TChartAxis /////////////////////////////////////////////////////////////// -type TChartAxis=class(NodeInfo) - Function Create(); overload; - Begin - Create('ChartAxis'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TChartAxis=class(NodeInfo) + Function Create(); overload; + Begin + Create('ChartAxis'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin NumFont := new TNumFont('NumFont'); NameLayout := new TNameLayout('NameLayout'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"None", "obj":None,"attrEx":"","nodeType":"","attrName":""),("name":"Crossing", "obj":Crossing,"attrEx":"","nodeType":"","attrName":"") ,("name":"MajorGridlines", "obj":MajorGridlines,"attrEx":"","nodeType":"","attrName":""),("name":"MinorGridlines", "obj":MinorGridlines,"attrEx":"","nodeType":"","attrName":"") ,("name":"MajorTickMark", "obj":MajorTickMark,"attrEx":"","nodeType":"","attrName":""),("name":"MinorTickMark", "obj":MinorTickMark,"attrEx":"","nodeType":"","attrName":"") @@ -966,30 +1001,32 @@ End; /////////////////////////////////////////////////////////////// /// TNumFont /////////////////////////////////////////////////////////////// -type TNumFont=class(NodeInfo) - Function Create(); overload; - Begin - Create('NumFont'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TNumFont=class(NodeInfo) + Function Create(); overload; + Begin + Create('NumFont'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"Color", "obj":Color,"attrEx":"","nodeType":"","attrName":""),("name":"Bold", "obj":Bold,"attrEx":"","nodeType":"","attrName":"") ,("name":"Italic", "obj":Italic,"attrEx":"","nodeType":"","attrName":""),("name":"Underline", "obj":Underline,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; @@ -1007,30 +1044,32 @@ End; /////////////////////////////////////////////////////////////// /// TNameLayout /////////////////////////////////////////////////////////////// -type TNameLayout=class(NodeInfo) - Function Create(); overload; - Begin - Create('NameLayout'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TNameLayout=class(NodeInfo) + Function Create(); overload; + Begin + Create('NameLayout'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"X", "obj":X,"attrEx":"","nodeType":"","attrName":""),("name":"Y", "obj":Y,"attrEx":"","nodeType":"","attrName":"") ,("name":"Width", "obj":Width,"attrEx":"","nodeType":"","attrName":""),("name":"Height", "obj":Height,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; @@ -1048,30 +1087,32 @@ End; /////////////////////////////////////////////////////////////// /// Tpt /////////////////////////////////////////////////////////////// -type Tpt=class(NodeInfo) - Function Create(); overload; - Begin - Create('pt'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type Tpt=class(NodeInfo) + Function Create(); overload; + Begin + Create('pt'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('idx':IDx) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"v", "obj":V,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -1085,31 +1126,33 @@ End; /////////////////////////////////////////////////////////////// /// TStrCache /////////////////////////////////////////////////////////////// -type TStrCache=class(NodeInfo) - Function Create(); overload; - Begin - Create('strRef'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TStrCache=class(NodeInfo) + Function Create(); overload; + Begin + Create('strRef'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin Pt := new Tpt('pt'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"ptCount", "obj":PtCount,"attrEx":"","nodeType":"","attrName":""),("name":Pt.NodeName, "obj":Pt,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; End; @@ -1124,31 +1167,33 @@ End; /////////////////////////////////////////////////////////////// /// TStrRef /////////////////////////////////////////////////////////////// -type TStrRef=class(NodeInfo) - Function Create(); overload; - Begin - Create('strRef'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TStrRef=class(NodeInfo) + Function Create(); overload; + Begin + Create('strRef'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin StrCache := new TStrCache('strCache'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"f", "obj":F,"attrEx":"","nodeType":"pcdata","attrName":""),("name":StrCache.NodeName, "obj":StrCache,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; End; @@ -1163,31 +1208,33 @@ End; /////////////////////////////////////////////////////////////// /// TcCat /////////////////////////////////////////////////////////////// -type TcCat=class(NodeInfo) - Function Create(); overload; - Begin - Create('cat'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TcCat=class(NodeInfo) + Function Create(); overload; + Begin + Create('cat'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin StrRef := new TStrRef('strRef'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":StrRef.NodeName, "obj":StrRef,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -1200,31 +1247,33 @@ End; /////////////////////////////////////////////////////////////// /// TNumCache /////////////////////////////////////////////////////////////// -type TNumCache=class(NodeInfo) - Function Create(); overload; - Begin - Create('numCache'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TNumCache=class(NodeInfo) + Function Create(); overload; + Begin + Create('numCache'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin Pt := new Tpt('pt'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"formatCode", "obj":FormatCode,"attrEx":"","nodeType":"","attrName":""),("name":"ptCount", "obj":PtCount,"attrEx":"","nodeType":"","attrName":"") ,("name":Pt.NodeName, "obj":Pt,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -1240,31 +1289,33 @@ End; /////////////////////////////////////////////////////////////// /// TNumRef /////////////////////////////////////////////////////////////// -type TNumRef=class(NodeInfo) - Function Create(); overload; - Begin - Create('numRef'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TNumRef=class(NodeInfo) + Function Create(); overload; + Begin + Create('numRef'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin NumCache := new TNumCache('numCache'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"f", "obj":F,"attrEx":"","nodeType":"pcdata","attrName":""),("name":NumCache.NodeName, "obj":NumCache,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; End; @@ -1279,31 +1330,33 @@ End; /////////////////////////////////////////////////////////////// /// TcVal /////////////////////////////////////////////////////////////// -type TcVal=class(NodeInfo) - Function Create(); overload; - Begin - Create('val'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TcVal=class(NodeInfo) + Function Create(); overload; + Begin + Create('val'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin NumRef := new TNumRef('numRef'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":NumRef.NodeName, "obj":NumRef,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -1316,31 +1369,33 @@ End; /////////////////////////////////////////////////////////////// /// TTx /////////////////////////////////////////////////////////////// -type TTx=class(NodeInfo) - Function Create(); overload; - Begin - Create('tx'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TTx=class(NodeInfo) + Function Create(); overload; + Begin + Create('tx'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin StrRef := new TStrRef('strRef'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":StrRef.NodeName, "obj":StrRef,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -1353,31 +1408,33 @@ End; /////////////////////////////////////////////////////////////// /// TSolidFill /////////////////////////////////////////////////////////////// -type TSolidFill=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:solidFill'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TSolidFill=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:solidFill'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin SchemeClr := new TSchemeClr('a:schemeClr'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":SchemeClr.NodeName, "obj":SchemeClr,"attrEx":"","nodeType":"","attrName":""),("name":"a:srgbClr", "obj":SrgbClr,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; End; @@ -1392,30 +1449,32 @@ End; /////////////////////////////////////////////////////////////// /// TSchemeClr /////////////////////////////////////////////////////////////// -type TSchemeClr=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:schemeClr'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TSchemeClr=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:schemeClr'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('val':Val) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"a:lumMod", "obj":LumMod,"attrEx":"","nodeType":"","attrName":""),("name":"a:lumOff", "obj":LumOff,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; End; @@ -1431,31 +1490,33 @@ End; /////////////////////////////////////////////////////////////// /// TLn /////////////////////////////////////////////////////////////// -type TLn=class(NodeInfo) - Function Create(); overload; - Begin - Create('t:Ln'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TLn=class(NodeInfo) + Function Create(); overload; + Begin + Create('t:Ln'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin SolidFill := new TSolidFill('a:solidFill'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('algn':Algn,'cap':Cap,'cmpd':Cmpd,'w':W) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"a:noFill", "obj":NoFill,"attrEx":"","nodeType":"","attrName":""),("name":"a:round", "obj":Round,"attrEx":"","nodeType":"","attrName":"") ,("name":SolidFill.NodeName, "obj":SolidFill,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -1475,31 +1536,33 @@ End; /////////////////////////////////////////////////////////////// /// TContourClr /////////////////////////////////////////////////////////////// -type TContourClr=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:contourClr'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TContourClr=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:contourClr'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin SchemeClr := new TSchemeClr('a:schemeClr'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":SchemeClr.NodeName, "obj":SchemeClr,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -1512,31 +1575,33 @@ End; /////////////////////////////////////////////////////////////// /// TSp3D /////////////////////////////////////////////////////////////// -type TSp3D=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:sp3d'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TSp3D=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:sp3d'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin ContourClr := new TContourClr('a:contourClr'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('contourW':ContourW) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":ContourClr.NodeName, "obj":ContourClr,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -1550,33 +1615,35 @@ End; /////////////////////////////////////////////////////////////// /// TspPr /////////////////////////////////////////////////////////////// -type TspPr=class(NodeInfo) - Function Create(); overload; - Begin - Create('spPr'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TspPr=class(NodeInfo) + Function Create(); overload; + Begin + Create('spPr'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin SolidFill := new TSolidFill('a:solidFill'); Ln := new TLn('a:Ln'); Sp3D := new TSp3D('a:sp3d'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"a:noFill", "obj":NoFill,"attrEx":"","nodeType":"","attrName":""),("name":SolidFill.NodeName, "obj":SolidFill,"attrEx":"","nodeType":"","attrName":"") ,("name":Ln.NodeName, "obj":Ln,"attrEx":"","nodeType":"","attrName":""),("name":Sp3D.NodeName, "obj":Sp3D,"attrEx":"","nodeType":"","attrName":"") ,("name":"a:effectLst", "obj":EffectLst,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; @@ -1595,31 +1662,33 @@ End; /////////////////////////////////////////////////////////////// /// TDpt /////////////////////////////////////////////////////////////// -type TDpt=class(NodeInfo) - Function Create(); overload; - Begin - Create('dPt'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TDpt=class(NodeInfo) + Function Create(); overload; + Begin + Create('dPt'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin SpPr := new TspPr('spPr'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"idx", "obj":IDx,"attrEx":"","nodeType":"","attrName":""),("name":"bubble3D", "obj":Bubble3D,"attrEx":"","nodeType":"","attrName":"") ,("name":SpPr.NodeName, "obj":SpPr,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -1635,31 +1704,33 @@ End; /////////////////////////////////////////////////////////////// /// TMarker /////////////////////////////////////////////////////////////// -type TMarker=class(NodeInfo) - Function Create(); overload; - Begin - Create('marker'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TMarker=class(NodeInfo) + Function Create(); overload; + Begin + Create('marker'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin SpPr := new TspPr('spPr'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"symbol", "obj":Symbol,"attrEx":"","nodeType":"","attrName":""),("name":"size", "obj":Size,"attrEx":"","nodeType":"","attrName":"") ,("name":SpPr.NodeName, "obj":SpPr,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -1675,20 +1746,20 @@ End; /////////////////////////////////////////////////////////////// /// TSer /////////////////////////////////////////////////////////////// -type TSer=class(NodeInfo) - Function Create(); overload; - Begin - Create('t:chart'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TSer=class(NodeInfo) + Function Create(); overload; + Begin + Create('t:chart'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin Tx := new TTx('tx'); SpPr := new TspPr('spPr'); DPt := new TDpt('dPt'); @@ -1702,13 +1773,15 @@ type TSer=class(NodeInfo) //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"idx", "obj":IDx,"attrEx":"","nodeType":"","attrName":""),("name":"order", "obj":Ord,"attrEx":"","nodeType":"","attrName":"") ,("name":Tx.NodeName, "obj":Tx,"attrEx":"","nodeType":"","attrName":""),("name":SpPr.NodeName, "obj":SpPr,"attrEx":"","nodeType":"","attrName":"") ,("name":DPt.NodeName, "obj":DPt,"attrEx":"","nodeType":"","attrName":""),("name":DLbls.NodeName, "obj":DLbls,"attrEx":"","nodeType":"","attrName":"") @@ -1742,30 +1815,32 @@ End; /////////////////////////////////////////////////////////////// /// TdLbls /////////////////////////////////////////////////////////////// -type TdLbls=class(NodeInfo) - Function Create(); overload; - Begin - Create('t:chart'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TdLbls=class(NodeInfo) + Function Create(); overload; + Begin + Create('t:chart'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"showLegendKey", "obj":ShowLegendKey,"attrEx":"","nodeType":"","attrName":""),("name":"showVal", "obj":ShowVal,"attrEx":"","nodeType":"","attrName":"") ,("name":"showCatName", "obj":ShowCatName,"attrEx":"","nodeType":"","attrName":""),("name":"showSerName", "obj":ShowSerName,"attrEx":"","nodeType":"","attrName":"") ,("name":"showPercent", "obj":ShowPercent,"attrEx":"","nodeType":"","attrName":""),("name":"showBubbleSize", "obj":ShowBubbleSize,"attrEx":"","nodeType":"","attrName":"") @@ -1787,32 +1862,34 @@ End; /////////////////////////////////////////////////////////////// /// TcCharts /////////////////////////////////////////////////////////////// -type TcCharts=class(NodeInfo) - Function Create(); overload; - Begin - Create('t:chart'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TcCharts=class(NodeInfo) + Function Create(); overload; + Begin + Create('t:chart'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin Ser := array(); DLbls := new TdLbls('dLbls'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"barDir", "obj":BarDir,"attrEx":"","nodeType":"","attrName":""),("name":"bubbleScale", "obj":BubbleScale,"attrEx":"","nodeType":"","attrName":"") ,("name":"grouping", "obj":Grouping,"attrEx":"","nodeType":"","attrName":""),("name":"radarStyle", "obj":RadarStyle,"attrEx":"","nodeType":"","attrName":"") ,("name":"scatterStyle", "obj":ScatterStyle,"attrEx":"","nodeType":"","attrName":""),("name":"ofPieType", "obj":OfPieType,"attrEx":"","nodeType":"","attrName":"") @@ -1851,30 +1928,32 @@ End; /////////////////////////////////////////////////////////////// /// TcScaling /////////////////////////////////////////////////////////////// -type TcScaling=class(NodeInfo) - Function Create(); overload; - Begin - Create('scaling'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TcScaling=class(NodeInfo) + Function Create(); overload; + Begin + Create('scaling'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"logBase", "obj":LogBase,"attrEx":"","nodeType":"","attrName":""),("name":"orientation", "obj":Orientation,"attrEx":"","nodeType":"","attrName":"") ,("name":"max", "obj":Max,"attrEx":"","nodeType":"","attrName":""),("name":"min", "obj":Min,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; @@ -1892,31 +1971,33 @@ End; /////////////////////////////////////////////////////////////// /// TcChartLines /////////////////////////////////////////////////////////////// -type TcChartLines=class(NodeInfo) - Function Create(); overload; - Begin - Create('cChartLines'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TcChartLines=class(NodeInfo) + Function Create(); overload; + Begin + Create('cChartLines'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin SpPr := new TspPr('spPr'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":SpPr.NodeName, "obj":SpPr,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -1929,30 +2010,32 @@ End; /////////////////////////////////////////////////////////////// /// TcNumFmt /////////////////////////////////////////////////////////////// -type TcNumFmt=class(NodeInfo) - Function Create(); overload; - Begin - Create('numFmt'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TcNumFmt=class(NodeInfo) + Function Create(); overload; + Begin + Create('numFmt'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"formatCode", "obj":FormatCode,"attrEx":"","nodeType":"","attrName":""),("name":"sourceLinked", "obj":SourceLinked,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; End; @@ -1967,31 +2050,33 @@ End; /////////////////////////////////////////////////////////////// /// TaR /////////////////////////////////////////////////////////////// -type TaR=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:r'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TaR=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:r'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin RPr := new TaRpr('a:rPr'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":RPr.NodeName, "obj":RPr,"attrEx":"","nodeType":"","attrName":""),("name":"a:t", "obj":T,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; End; @@ -2006,30 +2091,32 @@ End; /////////////////////////////////////////////////////////////// /// TaEndParaRPr /////////////////////////////////////////////////////////////// -type TaEndParaRPr=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:endParaRPr'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TaEndParaRPr=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:endParaRPr'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('lang':Lang,'altLang':AltLang,'sz':Sz) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; @@ -2044,33 +2131,35 @@ End; /////////////////////////////////////////////////////////////// /// TaP /////////////////////////////////////////////////////////////// -type TaP=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:p'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TaP=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:p'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin PPr := new TaPPr('a:pPr'); R := new TaR('a:r'); EndParaRPr := new TaEndParaRPr('a:endParaRPr'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":PPr.NodeName, "obj":PPr,"attrEx":"","nodeType":"","attrName":""),("name":R.NodeName, "obj":R,"attrEx":"","nodeType":"","attrName":"") ,("name":EndParaRPr.NodeName, "obj":EndParaRPr,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -2086,31 +2175,33 @@ End; /////////////////////////////////////////////////////////////// /// TaPPr /////////////////////////////////////////////////////////////// -type TaPPr=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:pPr'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TaPPr=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:pPr'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin DefRPr := new TaRPr('a:defRPr'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":DefRPr.NodeName, "obj":DefRPr,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -2123,30 +2214,32 @@ End; /////////////////////////////////////////////////////////////// /// TaLatin /////////////////////////////////////////////////////////////// -type TaLatin=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:latin'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TaLatin=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:latin'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('typeface':Typeface) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; @@ -2159,30 +2252,32 @@ End; /////////////////////////////////////////////////////////////// /// TaEa /////////////////////////////////////////////////////////////// -type TaEa=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:ea'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TaEa=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:ea'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('typeface':Typeface) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; @@ -2195,30 +2290,32 @@ End; /////////////////////////////////////////////////////////////// /// TaCs /////////////////////////////////////////////////////////////// -type TaCs=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:cs'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TaCs=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:cs'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('typeface':Typeface) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; @@ -2231,20 +2328,20 @@ End; /////////////////////////////////////////////////////////////// /// TaRPr /////////////////////////////////////////////////////////////// -type TaRPr=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:defRPr'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TaRPr=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:defRPr'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin SolidFill := new TSolidFill('a:solidFill'); Latin := new TaLatin('a:latin'); Ea := new TaEa('a:ea'); @@ -2252,13 +2349,15 @@ type TaRPr=class(NodeInfo) //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('altLang':AltLang,'b':B,'baseline':Baseline,'bmk':Bmk,'cap':Cap,'dirty':Dirty,'err':Err,'i':I,'kern':Kern,'kumimoji':Kumimoji,'lang':Lang,'noProof':NoProof,'normalizeH':NormalizeH,'smtId':SmtID,'spc':Spc,'strike':Strike,'sz':Sz,'smtClean':SmtClean,'u':U) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":SolidFill.NodeName, "obj":SolidFill,"attrEx":"","nodeType":"","attrName":""),("name":Latin.NodeName, "obj":Latin,"attrEx":"","nodeType":"","attrName":"") ,("name":Ea.NodeName, "obj":Ea,"attrEx":"","nodeType":"","attrName":""),("name":Cs.NodeName, "obj":Cs,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; @@ -2295,30 +2394,32 @@ End; /////////////////////////////////////////////////////////////// /// TaBodyPr /////////////////////////////////////////////////////////////// -type TaBodyPr=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:bodyPr'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TaBodyPr=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:bodyPr'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('anchor':Anchor,'anchorCtr':AnchorCtr,'rot':Rot,'bIns':BIns,'compatLnSpc':CompatLnSpc,'forceAA':ForceAA,'fromWordArt':FromWordArt,'horzOverflow':HorzOverflow,'lIns':LIns,'numCol':NumCol,'rIns':RIns,'rtlCol':RtlCol,'spcCol':SpcCol,'spcFirstLastPara':SpcFirstLastPara,'tIns':TIns,'upright':Upright,'vert':Vert,'vertOverflow':VertOverflow,'wrap':Wrap) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; @@ -2349,32 +2450,34 @@ End; /////////////////////////////////////////////////////////////// /// TTxPr /////////////////////////////////////////////////////////////// -type TTxPr=class(NodeInfo) - Function Create(); overload; - Begin - Create('txPr'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TTxPr=class(NodeInfo) + Function Create(); overload; + Begin + Create('txPr'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin BodyPr := new TaBodyPr('a:bodyPr'); P := new TaP('a:p'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":BodyPr.NodeName, "obj":BodyPr,"attrEx":"","nodeType":"","attrName":""),("name":"a:lstStyle", "obj":LstStyle,"attrEx":"","nodeType":"","attrName":"") ,("name":P.NodeName, "obj":P,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -2390,20 +2493,20 @@ End; /////////////////////////////////////////////////////////////// /// TcAxs /////////////////////////////////////////////////////////////// -type TcAxs=class(NodeInfo) - Function Create(); overload; - Begin - Create('catAx'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TcAxs=class(NodeInfo) + Function Create(); overload; + Begin + Create('catAx'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin Scaling := new TcScaling('scaling'); MajorGridlines := new TcChartLines('majorGridlines'); MinorGridlines := new TcChartLines('minorGridlines'); @@ -2413,13 +2516,15 @@ type TcAxs=class(NodeInfo) //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"axId", "obj":AxID,"attrEx":"","nodeType":"","attrName":""),("name":Scaling.NodeName, "obj":Scaling,"attrEx":"","nodeType":"","attrName":"") ,("name":"delete", "obj":Del,"attrEx":"","nodeType":"","attrName":""),("name":"axPos", "obj":AxPos,"attrEx":"","nodeType":"","attrName":"") ,("name":MajorGridlines.NodeName, "obj":MajorGridlines,"attrEx":"","nodeType":"","attrName":""),("name":MinorGridlines.NodeName, "obj":MinorGridlines,"attrEx":"","nodeType":"","attrName":"") @@ -2465,20 +2570,20 @@ End; /////////////////////////////////////////////////////////////// /// TplotArea /////////////////////////////////////////////////////////////// -type TplotArea=class(NodeInfo) - Function Create(); overload; - Begin - Create('plotArea'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TplotArea=class(NodeInfo) + Function Create(); overload; + Begin + Create('plotArea'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin Chart := new TcCharts('chartname'); CatAx := new TcAxs('catAx'); ValAx := new TcAxs('valAx'); @@ -2487,13 +2592,15 @@ type TplotArea=class(NodeInfo) //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"layout", "obj":Layout,"attrEx":"","nodeType":"","attrName":""),("name":Chart.NodeName, "obj":Chart,"attrEx":"","nodeType":"","attrName":"") ,("name":CatAx.NodeName, "obj":CatAx,"attrEx":"","nodeType":"","attrName":""),("name":ValAx.NodeName, "obj":ValAx,"attrEx":"","nodeType":"","attrName":"") ,("name":SerAx.NodeName, "obj":SerAx,"attrEx":"","nodeType":"","attrName":""),("name":SpPr.NodeName, "obj":SpPr,"attrEx":"","nodeType":"","attrName":"") @@ -2514,30 +2621,32 @@ End; /////////////////////////////////////////////////////////////// /// TView3D /////////////////////////////////////////////////////////////// -type TView3D=class(NodeInfo) - Function Create(); overload; - Begin - Create('view3D'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TView3D=class(NodeInfo) + Function Create(); overload; + Begin + Create('view3D'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"rotX", "obj":RotX,"attrEx":"rgb","nodeType":"","attrName":""),("name":"rotY", "obj":RotY,"attrEx":"index","nodeType":"","attrName":"") ,("name":"rAngAx", "obj":RAngAx,"attrEx":"","nodeType":"","attrName":""),("name":"depthPercent", "obj":DepthPercent,"attrEx":"","nodeType":"","attrName":"") ,("name":"perspective", "obj":Perspective,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; @@ -2556,30 +2665,32 @@ End; /////////////////////////////////////////////////////////////// /// TBorder /////////////////////////////////////////////////////////////// -type TBorder=class(NodeInfo) - Function Create(); overload; - Begin - Create('border'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TBorder=class(NodeInfo) + Function Create(); overload; + Begin + Create('border'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('style':LineStyle) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"color", "obj":Color,"attrEx":"rgb","nodeType":"","attrName":""),("name":"color", "obj":ColorIndex,"attrEx":"index","nodeType":"","attrName":"") ,("name":"weight", "obj":Weight,"attrEx":"","nodeType":"","attrName":""),("name":"color", "obj":ThemeColor,"attrEx":"theme","nodeType":"","attrName":"") ,("name":"tintandshade", "obj":TintAndShade,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; @@ -2599,20 +2710,20 @@ End; /////////////////////////////////////////////////////////////// /// TBorders /////////////////////////////////////////////////////////////// -type TBorders=class(NodeInfo) - Function Create(); overload; - Begin - Create('border'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TBorders=class(NodeInfo) + Function Create(); overload; + Begin + Create('border'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin Left := new TBorder('left'); Right := new TBorder('right'); Top := new TBorder('top'); @@ -2621,55 +2732,73 @@ type TBorders=class(NodeInfo) //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin - return array(("name":Left.NodeName, "obj":Left,"attrEx":"","nodeType":"","attrName":""),("name":Right.NodeName, "obj":Right,"attrEx":"","nodeType":"","attrName":"") - ,("name":Top.NodeName, "obj":Top,"attrEx":"","nodeType":"","attrName":""),("name":Bottom.NodeName, "obj":Bottom,"attrEx":"","nodeType":"","attrName":"") - ,("name":Diagonal.NodeName, "obj":Diagonal,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; + Function GetChildren(); override; + Begin + HandleChildren(); + return array(("name":"Color", "obj":Color,"attrEx":"","nodeType":"","attrName":""),("name":"ColorIndex", "obj":ColorIndex,"attrEx":"","nodeType":"","attrName":"") + ,("name":"LineStyle", "obj":LineStyle,"attrEx":"","nodeType":"","attrName":""),("name":"Value", "obj":Value,"attrEx":"","nodeType":"","attrName":"") + ,("name":"Weight", "obj":Weight,"attrEx":"","nodeType":"","attrName":""),("name":"ThemeColor", "obj":ThemeColor,"attrEx":"","nodeType":"","attrName":"") + ,("name":"TintAndShade", "obj":TintAndShade,"attrEx":"","nodeType":"","attrName":""),("name":Left.NodeName, "obj":Left,"attrEx":"","nodeType":"","attrName":"") + ,("name":Right.NodeName, "obj":Right,"attrEx":"","nodeType":"","attrName":""),("name":Top.NodeName, "obj":Top,"attrEx":"","nodeType":"","attrName":"") + ,("name":Bottom.NodeName, "obj":Bottom,"attrEx":"","nodeType":"","attrName":""),("name":Diagonal.NodeName, "obj":Diagonal,"attrEx":"","nodeType":"","attrName":"") + ,("name":"diagonalDown", "obj":DiagonalDown,"attrEx":"","nodeType":"","attrName":""),("name":"diagonalUp", "obj":DiagonalUp,"attrEx":"","nodeType":"","attrName":"") + ) union ExtNodes; End; //Attributes //Nodes + Color; + ColorIndex; + LineStyle; + Value; + Weight; + ThemeColor; + TintAndShade; Left; Right; Top; Bottom; Diagonal; + DiagonalDown; + DiagonalUp; End; /////////////////////////////////////////////////////////////// /// TNumFmts /////////////////////////////////////////////////////////////// -type TNumFmts=class(NodeInfo) - Function Create(); overload; - Begin - Create('numFmts'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TNumFmts=class(NodeInfo) + Function Create(); overload; + Begin + Create('numFmts'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('numFmtId':NumFmtId,'formatCode':FormatCode) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; @@ -2683,32 +2812,34 @@ End; /////////////////////////////////////////////////////////////// /// TFills /////////////////////////////////////////////////////////////// -type TFills=class(NodeInfo) - Function Create(); overload; - Begin - Create('fill'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TFills=class(NodeInfo) + Function Create(); overload; + Begin + Create('fill'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin Pattern := new TPattern('patternFill'); Gradient := new TGradient('gradientFill'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":Pattern.NodeName, "obj":Pattern,"attrEx":"","nodeType":"","attrName":""),("name":Gradient.NodeName, "obj":Gradient,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; End; @@ -2723,31 +2854,34 @@ End; /////////////////////////////////////////////////////////////// /// TPattern /////////////////////////////////////////////////////////////// -type TPattern=class(NodeInfo) - Function Create(); overload; - Begin - Create('patternFill'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TPattern=class(NodeInfo) + Function Create(); overload; + Begin + Create('patternFill'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('patternType':PatternType) union ExtAttr; End; - Function GetChildren(); override; - Begin - return array(("name":"fgcolor", "obj":ForeColor,"attrEx":"rgb","nodeType":"","attrName":""),("name":"bgcolor", "obj":BackColor,"attrEx":"rgb","nodeType":"","attrName":"") + Function GetChildren(); override; + Begin + HandleChildren(); + return array(("name":"fgcolor", "obj":ForegroundColor,"attrEx":"rgb","nodeType":"","attrName":""),("name":"bgcolor", "obj":BackgroundColor,"attrEx":"rgb","nodeType":"","attrName":"") + ,("name":"fgcolor", "obj":ForegroundThemeColor,"attrEx":"theme","nodeType":"","attrName":""),("name":"bgcolor", "obj":BackgroundThemeColor,"attrEx":"theme","nodeType":"","attrName":"") ) union ExtNodes; End; @@ -2755,123 +2889,41 @@ type TPattern=class(NodeInfo) PatternType; //Nodes - ForeColor; - BackColor; + ForegroundColor; + BackgroundColor; + ForegroundThemeColor; + BackgroundThemeColor; End; /////////////////////////////////////////////////////////////// -/// TGradient +/// TStop /////////////////////////////////////////////////////////////// -type TGradient=class(NodeInfo) - Function Create(); overload; - Begin - Create('gradientFill'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin - TopPosition := new TStop0('stop'); - BottomPosition := new TStop1('stop'); +type TStop=class(NodeInfo) + Function Create(); overload; + Begin + Create('stop'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin - return array('degree':Degree,'type':Type,'left':Left,'right':Right,'top':Top,'bottom':Bottom) union ExtAttr; - End; - - Function GetChildren(); override; - Begin - return array(("name":TopPosition.NodeName, "obj":TopPosition,"attrEx":"","nodeType":"","attrName":""),("name":BottomPosition.NodeName, "obj":BottomPosition,"attrEx":"","nodeType":"","attrName":"") - ) union ExtNodes; - End; - - //Attributes - Degree; - Type; - Left; - Right; - Top; - Bottom; - - //Nodes - TopPosition; - BottomPosition; -End; - -/////////////////////////////////////////////////////////////// -/// TStop0 -/////////////////////////////////////////////////////////////// -type TStop0=class(NodeInfo) - Function Create(); overload; - Begin - Create('stop'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin - //TODO... - End; - - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('position':Position) union ExtAttr; End; - Function GetChildren(); override; - Begin - return array(("name":"color", "obj":Color,"attrEx":"rgb","nodeType":"","attrName":""),("name":"color", "obj":ColorIndex,"attrEx":"index","nodeType":"","attrName":"") - ,("name":"color", "obj":ThemeColor,"attrEx":"theme","nodeType":"","attrName":"")) union ExtNodes; - End; - - //Attributes - Position; - - //Nodes - Color; - ColorIndex; - ThemeColor; -End; - -/////////////////////////////////////////////////////////////// -/// TStop1 -/////////////////////////////////////////////////////////////// -type TStop1=class(NodeInfo) - Function Create(); overload; - Begin - Create('stop'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin - //TODO... - End; - - Function GetAttrs(); override; - Begin - return array('position':Position) union ExtAttr; - End; - - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"color", "obj":Color,"attrEx":"rgb","nodeType":"","attrName":""),("name":"color", "obj":ColorIndex,"attrEx":"index","nodeType":"","attrName":"") ,("name":"color", "obj":ThemeColor,"attrEx":"theme","nodeType":"","attrName":"")) union ExtNodes; End; @@ -2888,30 +2940,32 @@ End; /////////////////////////////////////////////////////////////// /// TAlignment /////////////////////////////////////////////////////////////// -type TAlignment=class(NodeInfo) - Function Create(); overload; - Begin - Create('alignment'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TAlignment=class(NodeInfo) + Function Create(); overload; + Begin + Create('alignment'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin - return array('horizontal':Horizontal,'vertical':Vertical,'wrapText':WrapText) union ExtAttr; + Function GetAttrs(); override; + Begin + HandleAttrs(); + return array('horizontal':Horizontal,'vertical':Vertical,'wrapText':WrapText,'readingOrder':ReadingOrder) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; @@ -2919,6 +2973,7 @@ type TAlignment=class(NodeInfo) Horizontal; Vertical; WrapText; + ReadingOrder; //Nodes End; @@ -2926,30 +2981,32 @@ End; /////////////////////////////////////////////////////////////// /// TProtection /////////////////////////////////////////////////////////////// -type TProtection=class(NodeInfo) - Function Create(); overload; - Begin - Create('protection'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TProtection=class(NodeInfo) + Function Create(); overload; + Begin + Create('protection'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('locked':Lock,'hidden':Hide) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; @@ -2963,20 +3020,20 @@ End; /////////////////////////////////////////////////////////////// /// TStyle /////////////////////////////////////////////////////////////// -type TStyle=class(NodeInfo) - Function Create(); overload; - Begin - Create('xf'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TStyle=class(NodeInfo) + Function Create(); overload; + Begin + Create('xf'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin Border := new TBorders('border'); Font := new TFont('font'); NumberFormat := new TNumFmts('numFmt'); @@ -2986,13 +3043,15 @@ type TStyle=class(NodeInfo) //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":Border.NodeName, "obj":Border,"attrEx":"","nodeType":"","attrName":""),("name":Font.NodeName, "obj":Font,"attrEx":"","nodeType":"","attrName":"") ,("name":NumberFormat.NodeName, "obj":NumberFormat,"attrEx":"","nodeType":"","attrName":""),("name":Fill.NodeName, "obj":Fill,"attrEx":"","nodeType":"","attrName":"") ,("name":Alignment.NodeName, "obj":Alignment,"attrEx":"","nodeType":"","attrName":""),("name":Protection.NodeName, "obj":Protection,"attrEx":"","nodeType":"","attrName":"") @@ -3013,30 +3072,32 @@ End; /////////////////////////////////////////////////////////////// /// THeaderFooter /////////////////////////////////////////////////////////////// -type THeaderFooter=class(NodeInfo) - Function Create(); overload; - Begin - Create('headerFooter'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type THeaderFooter=class(NodeInfo) + Function Create(); overload; + Begin + Create('headerFooter'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('differentOddEven':DifferentOddEven,'differentFirst':DifferentFirst,'scaleWithDoc':ScaleWithDoc,'alignWithMargins':AlignWithMargin) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"oddHeader", "obj":OddHeader,"attrEx":"","nodeType":"pcdata","attrName":""),("name":"oddFooter", "obj":OddFooter,"attrEx":"","nodeType":"pcdata","attrName":"") ,("name":"evenHeader", "obj":EvenHeader,"attrEx":"","nodeType":"pcdata","attrName":""),("name":"evenFooter", "obj":EvenFooter,"attrEx":"","nodeType":"pcdata","attrName":"") ,("name":"firstHeader", "obj":FirstHeader,"attrEx":"","nodeType":"pcdata","attrName":""),("name":"firstFooter", "obj":FirstFooter,"attrEx":"","nodeType":"pcdata","attrName":"") @@ -3061,20 +3122,20 @@ End; /////////////////////////////////////////////////////////////// /// TMargins /////////////////////////////////////////////////////////////// -type TMargins=class(NodeInfo) - Function Create(); overload; - Begin - Create('pageMargins'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TMargins=class(NodeInfo) + Function Create(); overload; + Begin + Create('pageMargins'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin bottom := 0.75; footer := 0.5; header := 0.5; @@ -3084,13 +3145,15 @@ type TMargins=class(NodeInfo) //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('bottom':Bottom,'footer':Footer,'header':Header,'left':Left,'right':Right,'top':Top) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; @@ -3108,31 +3171,55 @@ End; /////////////////////////////////////////////////////////////// /// THyperLink /////////////////////////////////////////////////////////////// -type THyperLink=class(NodeInfo) - Function Create(); overload; - Begin - Create('hyperlink'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type THyperLink=class(NodeInfo) + Function Create(); overload; + Begin + Create('hyperlink'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin + AddIndent := new BOOL('AddIndent'); + FormulaHidden := new BOOL('FormulaHidden'); + IncludeAlignment := new BOOL('IncludeAlignment'); + IncludeBorder := new BOOL('IncludeBorder'); + IncludeFont := new BOOL('IncludeFont'); + IncludeNumber := new BOOL('IncludeNumber'); + IncludePatterns := new BOOL('IncludePatterns'); + IncludeProtection := new BOOL('IncludeProtection'); + Locked := new BOOL('Locked'); + NumberFormat := new LPCTSTR('NumberFormat'); + NumberFormatLocal := new LPCTSTR('NumberFormatLocal'); + ShrinkToFit := new BOOL('ShrinkToFit'); + WrapText := new BOOL('WrapText'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('linkType':LinkType,'linkUrl':LinkUrl,'ref':Axis,'display':Display,'tooltip':Tooltip) union ExtAttr; End; - Function GetChildren(); override; - Begin - return ExtNodes; + Function GetChildren(); override; + Begin + HandleChildren(); + return array(("name":AddIndent.NodeName, "obj":AddIndent,"attrEx":"","nodeType":"","attrName":""),("name":FormulaHidden.NodeName, "obj":FormulaHidden,"attrEx":"","nodeType":"","attrName":"") + ,("name":"HorizontalAlignment", "obj":HorizontalAlignment,"attrEx":"","nodeType":"","attrName":""),("name":IncludeAlignment.NodeName, "obj":IncludeAlignment,"attrEx":"","nodeType":"","attrName":"") + ,("name":IncludeBorder.NodeName, "obj":IncludeBorder,"attrEx":"","nodeType":"","attrName":""),("name":IncludeFont.NodeName, "obj":IncludeFont,"attrEx":"","nodeType":"","attrName":"") + ,("name":IncludeNumber.NodeName, "obj":IncludeNumber,"attrEx":"","nodeType":"","attrName":""),("name":IncludePatterns.NodeName, "obj":IncludePatterns,"attrEx":"","nodeType":"","attrName":"") + ,("name":IncludeProtection.NodeName, "obj":IncludeProtection,"attrEx":"","nodeType":"","attrName":""),("name":"IndentLevel", "obj":IndentLevel,"attrEx":"","nodeType":"","attrName":"") + ,("name":Locked.NodeName, "obj":Locked,"attrEx":"","nodeType":"","attrName":""),("name":"MergeCells", "obj":MergeCells,"attrEx":"","nodeType":"","attrName":"") + ,("name":NumberFormat.NodeName, "obj":NumberFormat,"attrEx":"","nodeType":"","attrName":""),("name":NumberFormatLocal.NodeName, "obj":NumberFormatLocal,"attrEx":"","nodeType":"","attrName":"") + ,("name":"Orientation", "obj":Orientation,"attrEx":"","nodeType":"","attrName":""),("name":ShrinkToFit.NodeName, "obj":ShrinkToFit,"attrEx":"","nodeType":"","attrName":"") + ,("name":"VerticalAlignment", "obj":VerticalAlignment,"attrEx":"","nodeType":"","attrName":""),("name":WrapText.NodeName, "obj":WrapText,"attrEx":"","nodeType":"","attrName":"") + ,("name":"ReadingOrder", "obj":ReadingOrder,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; //Attributes @@ -3143,35 +3230,56 @@ type THyperLink=class(NodeInfo) Tooltip; //Nodes + AddIndent; + FormulaHidden; + HorizontalAlignment; + IncludeAlignment; + IncludeBorder; + IncludeFont; + IncludeNumber; + IncludePatterns; + IncludeProtection; + IndentLevel; + Locked; + MergeCells; + NumberFormat; + NumberFormatLocal; + Orientation; + ShrinkToFit; + VerticalAlignment; + WrapText; + ReadingOrder; End; /////////////////////////////////////////////////////////////// /// TSheetView /////////////////////////////////////////////////////////////// -type TSheetView=class(NodeInfo) - Function Create(); overload; - Begin - Create('sheetView'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TSheetView=class(NodeInfo) + Function Create(); overload; + Begin + Create('sheetView'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('showGridLines':ShowGridLines,'showRowColHeaders':ShowRowColHeaders,'zoomScale':ZoomScale,'zoomScaleNormal':ZoomScaleNormal) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; @@ -3187,30 +3295,32 @@ End; /////////////////////////////////////////////////////////////// /// TPageLayout /////////////////////////////////////////////////////////////// -type TPageLayout=class(NodeInfo) - Function Create(); overload; - Begin - Create('pageSetup'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TPageLayout=class(NodeInfo) + Function Create(); overload; + Begin + Create('pageSetup'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('scale':Scale,'fitToWidth':FitToWidth,'fitToHeight':FitToHeight,'paperSize':PaperSize,'orientation':Orientation,'blackAndWhite':BlackAndWhite,'firstPageNumber':FirstPageNumber,'errors':CellError,'draft':Draft,'cellComments':CellComments) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; @@ -3232,30 +3342,32 @@ End; /////////////////////////////////////////////////////////////// /// TAppProperty /////////////////////////////////////////////////////////////// -type TAppProperty=class(NodeInfo) - Function Create(); overload; - Begin - Create('Properties'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TAppProperty=class(NodeInfo) + Function Create(); overload; + Begin + Create('Properties'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"Application", "obj":Application,"attrEx":"","nodeType":"pcdata","attrName":""),("name":"DocSecurity", "obj":DocSecurity,"attrEx":"","nodeType":"pcdata","attrName":"") ,("name":"ScaleCrop", "obj":ScaleCrop,"attrEx":"","nodeType":"pcdata","attrName":""),("name":"Company", "obj":Company,"attrEx":"","nodeType":"pcdata","attrName":"") ,("name":"LinksUpToDate", "obj":LinksUpToDate,"attrEx":"","nodeType":"pcdata","attrName":""),("name":"SharedDoc", "obj":SharedDoc,"attrEx":"","nodeType":"pcdata","attrName":"") @@ -3279,30 +3391,32 @@ End; /////////////////////////////////////////////////////////////// /// TBr /////////////////////////////////////////////////////////////// -type TBr=class(NodeInfo) - Function Create(); overload; - Begin - Create('w:br'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TBr=class(NodeInfo) + Function Create(); overload; + Begin + Create('w:br'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('w:type':Type) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; @@ -3315,30 +3429,32 @@ End; /////////////////////////////////////////////////////////////// /// TwFont /////////////////////////////////////////////////////////////// -type TwFont=class(NodeInfo) - Function Create(); overload; - Begin - Create('w:rFonts'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TwFont=class(NodeInfo) + Function Create(); overload; + Begin + Create('w:rFonts'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('w:eastAsia':eastAsia,'w:eastAsiaTheme':eastAsiaTheme,'w:hAnsi':hAnsi,'w:hAnsiTheme':hAnsiTheme,'w:hint':hint,'w:ascii':ascii,'w:asciiTheme':asciiTheme,'w:cs':cs,'w:csTheme':csTheme) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; @@ -3359,31 +3475,33 @@ End; /////////////////////////////////////////////////////////////// /// TwrPr /////////////////////////////////////////////////////////////// -type TwrPr=class(NodeInfo) - Function Create(); overload; - Begin - Create('w:rPr'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TwrPr=class(NodeInfo) + Function Create(); overload; + Begin + Create('w:rPr'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin Font := new TwFont('w:rFonts'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":Font.NodeName, "obj":Font,"attrEx":"","nodeType":"","attrName":""),("name":"w:b", "obj":Bold,"attrEx":"","nodeType":"empty","attrName":"") ,("name":"w:bCs", "obj":bCs,"attrEx":"","nodeType":"empty","attrName":""),("name":"w:i", "obj":I,"attrEx":"","nodeType":"empty","attrName":"") ,("name":"w:strike", "obj":Strike,"attrEx":"","nodeType":"empty","attrName":""),("name":"w:dstrike", "obj":dStrike,"attrEx":"w:val","nodeType":"","attrName":"") @@ -3413,31 +3531,33 @@ End; /////////////////////////////////////////////////////////////// /// TwpPr /////////////////////////////////////////////////////////////// -type TwpPr=class(NodeInfo) - Function Create(); overload; - Begin - Create('w:pPr'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TwpPr=class(NodeInfo) + Function Create(); overload; + Begin + Create('w:pPr'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin rPr := new TwrPr('w:rPr'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":rPr.NodeName, "obj":rPr,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -3450,30 +3570,32 @@ End; /////////////////////////////////////////////////////////////// /// TcNvGraphicFramePr /////////////////////////////////////////////////////////////// -type TcNvGraphicFramePr=class(NodeInfo) - Function Create(); overload; - Begin - Create('wp:TcNvGraphicFramePr'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TcNvGraphicFramePr=class(NodeInfo) + Function Create(); overload; + Begin + Create('wp:TcNvGraphicFramePr'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"a:graphicFrameLocks", "obj":noChangeAspect,"attrEx":"noChangeAspect","nodeType":"","attrName":""),("name":"a:graphicFrameLocks", "obj":xmlns,"attrEx":"xmlns:a","nodeType":"","attrName":"") ) union ExtNodes; End; @@ -3488,30 +3610,32 @@ End; /////////////////////////////////////////////////////////////// /// TnvPicPr /////////////////////////////////////////////////////////////// -type TnvPicPr=class(NodeInfo) - Function Create(); overload; - Begin - Create('pic:nvPicPr'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TnvPicPr=class(NodeInfo) + Function Create(); overload; + Begin + Create('pic:nvPicPr'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"pic:cNvPr", "obj":Name,"attrEx":"name","nodeType":"","attrName":""),("name":"pic:cNvPr", "obj":ID,"attrEx":"id","nodeType":"","attrName":"") ,("name":"pic:cNvPr", "obj":Descr,"attrEx":"descr","nodeType":"","attrName":"")) union ExtNodes; End; @@ -3527,30 +3651,32 @@ End; /////////////////////////////////////////////////////////////// /// TprstGeom /////////////////////////////////////////////////////////////// -type TprstGeom=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:prstGeom'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TprstGeom=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:prstGeom'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('prst':prst) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; @@ -3563,32 +3689,34 @@ End; /////////////////////////////////////////////////////////////// /// TpicsPpr /////////////////////////////////////////////////////////////// -type TpicsPpr=class(NodeInfo) - Function Create(); overload; - Begin - Create('pic:spPr'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TpicsPpr=class(NodeInfo) + Function Create(); overload; + Begin + Create('pic:spPr'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin PrstGeom := new TprstGeom('a:prstGeom'); XFrm := new TXfrm('a:xfrm'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":PrstGeom.NodeName, "obj":PrstGeom,"attrEx":"","nodeType":"","attrName":""),("name":XFrm.NodeName, "obj":XFrm,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; End; @@ -3603,30 +3731,32 @@ End; /////////////////////////////////////////////////////////////// /// TFill /////////////////////////////////////////////////////////////// -type TFill=class(NodeInfo) - Function Create(); overload; - Begin - Create('pic:blipFill'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TFill=class(NodeInfo) + Function Create(); overload; + Begin + Create('pic:blipFill'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"a:blip", "obj":blip,"attrEx":"r:embed","nodeType":"","attrName":"")) union ExtNodes; End; @@ -3639,33 +3769,35 @@ End; /////////////////////////////////////////////////////////////// /// TPic /////////////////////////////////////////////////////////////// -type TPic=class(NodeInfo) - Function Create(); overload; - Begin - Create('pic:pic'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TPic=class(NodeInfo) + Function Create(); overload; + Begin + Create('pic:pic'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin nvPicPr := new TnvPicPr('pic:nvPicPr'); Fill := new TFill('pic:blipFill'); spPr := new TpicsPpr('pic:spPr'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('xmlns:pic':xmlns) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":nvPicPr.NodeName, "obj":nvPicPr,"attrEx":"","nodeType":"","attrName":""),("name":Fill.NodeName, "obj":Fill,"attrEx":"","nodeType":"","attrName":"") ,("name":spPr.NodeName, "obj":spPr,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -3682,31 +3814,33 @@ End; /////////////////////////////////////////////////////////////// /// TGraphicData /////////////////////////////////////////////////////////////// -type TGraphicData=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:graphicData'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TGraphicData=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:graphicData'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin Pic := new TPic('pic:pic'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('uri':uri) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"c:chart", "obj":R,"attrEx":"xmlns:r","nodeType":"","attrName":""),("name":"c:chart", "obj":Rid,"attrEx":"r:id","nodeType":"","attrName":"") ,("name":"c:chart", "obj":C,"attrEx":"xmlns:c","nodeType":"","attrName":""),("name":Pic.NodeName, "obj":Pic,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; @@ -3725,31 +3859,33 @@ End; /////////////////////////////////////////////////////////////// /// TGraphic /////////////////////////////////////////////////////////////// -type TGraphic=class(NodeInfo) - Function Create(); overload; - Begin - Create('a:graphic'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TGraphic=class(NodeInfo) + Function Create(); overload; + Begin + Create('a:graphic'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin GraphicData := new TGraphicData('a:graphicData'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('xmlns:a':xmlns) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":GraphicData.NodeName, "obj":GraphicData,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -3763,32 +3899,34 @@ End; /////////////////////////////////////////////////////////////// /// TwInline /////////////////////////////////////////////////////////////// -type TwInline=class(NodeInfo) - Function Create(); overload; - Begin - Create('wp:inline'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TwInline=class(NodeInfo) + Function Create(); overload; + Begin + Create('wp:inline'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin cNvGraphicFramePr := new TcNvGraphicFramePr('wp:cNvGraphicFramePr'); Graphic := new TGraphic('a:graphic'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('distR':distR,'distL':distL,'distB':distB,'distT':distT) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"wp:extent", "obj":cy,"attrEx":"cy","nodeType":"","attrName":""),("name":"wp:extent", "obj":cx,"attrEx":"cx","nodeType":"","attrName":"") ,("name":"wp:effectExtent", "obj":r,"attrEx":"r","nodeType":"","attrName":""),("name":"wp:effectExtent", "obj":b,"attrEx":"b","nodeType":"","attrName":"") ,("name":"wp:effectExtent", "obj":t,"attrEx":"t","nodeType":"","attrName":""),("name":"wp:effectExtent", "obj":l,"attrEx":"l","nodeType":"","attrName":"") @@ -3820,31 +3958,33 @@ End; /////////////////////////////////////////////////////////////// /// TwDrawing /////////////////////////////////////////////////////////////// -type TwDrawing=class(NodeInfo) - Function Create(); overload; - Begin - Create('w:drawing'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TwDrawing=class(NodeInfo) + Function Create(); overload; + Begin + Create('w:drawing'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin WInline := new TwInline('wp:inline'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":WInline.NodeName, "obj":WInline,"attrEx":"","nodeType":"","attrName":"")) union ExtNodes; End; @@ -3857,33 +3997,35 @@ End; /////////////////////////////////////////////////////////////// /// TRun /////////////////////////////////////////////////////////////// -type TRun=class(NodeInfo) - Function Create(); overload; - Begin - Create('w:r'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TRun=class(NodeInfo) + Function Create(); overload; + Begin + Create('w:r'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin rPr := new TwrPr('w:rPr'); Br := new TBr('w:br'); Drawing := new TwDrawing('w:drawing'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":rPr.NodeName, "obj":rPr,"attrEx":"","nodeType":"","attrName":""),("name":"w:t", "obj":Text,"attrEx":"","nodeType":"pcdata","attrName":"") ,("name":Br.NodeName, "obj":Br,"attrEx":"","nodeType":"","attrName":""),("name":Drawing.NodeName, "obj":Drawing,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; @@ -3901,32 +4043,34 @@ End; /////////////////////////////////////////////////////////////// /// TParagraph /////////////////////////////////////////////////////////////// -type TParagraph=class(NodeInfo, DocumentPart) - Function Create(); overload; - Begin - Create('w:p'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TParagraph=class(NodeInfo, DocumentPart) + Function Create(); overload; + Begin + Create('w:p'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin pPr := new TwpPr('w:pPr'); Run := new TRun('w:r'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":pPr.NodeName, "obj":pPr,"attrEx":"","nodeType":"","attrName":""),("name":Run.NodeName, "obj":Run,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; End; @@ -3941,31 +4085,33 @@ End; /////////////////////////////////////////////////////////////// /// TwBody /////////////////////////////////////////////////////////////// -type TwBody=class(NodeInfo, DocumentBody) - Function Create(); overload; - Begin - Create('w:body'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TwBody=class(NodeInfo, DocumentBody) + Function Create(); overload; + Begin + Create('w:body'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin Parts := array(); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"w:p", "obj":Parts,"attrEx":"","nodeType":"","attrName":"","arrObj":"array")) union ExtNodes; End; @@ -3978,30 +4124,32 @@ End; /////////////////////////////////////////////////////////////// /// TwTcPr /////////////////////////////////////////////////////////////// -type TwTcPr=class(NodeInfo) - Function Create(); overload; - Begin - Create('w:tcPr'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TwTcPr=class(NodeInfo) + Function Create(); overload; + Begin + Create('w:tcPr'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"w:tcW", "obj":Width,"attrEx":"w:w","nodeType":"","attrName":""),("name":"w:tcW", "obj":Type,"attrEx":"w:type","nodeType":"","attrName":"") ,("name":"w:shd", "obj":Shd,"attrEx":"w:val","nodeType":"","attrName":""),("name":"w:shd", "obj":Color,"attrEx":"w:color","nodeType":"","attrName":"") ,("name":"w:shd", "obj":Fill,"attrEx":"w:fill","nodeType":"","attrName":"")) union ExtNodes; @@ -4020,32 +4168,34 @@ End; /////////////////////////////////////////////////////////////// /// TwTc /////////////////////////////////////////////////////////////// -type TwTc=class(NodeInfo) - Function Create(); overload; - Begin - Create('w:tc'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TwTc=class(NodeInfo) + Function Create(); overload; + Begin + Create('w:tc'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin TcPr := new TwTcPr('w:tcPr'); P := new TParagraph('w:p'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":TcPr.NodeName, "obj":TcPr,"attrEx":"","nodeType":"","attrName":""),("name":P.NodeName, "obj":P,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; End; @@ -4060,30 +4210,32 @@ End; /////////////////////////////////////////////////////////////// /// TwTrPr /////////////////////////////////////////////////////////////// -type TwTrPr=class(NodeInfo) - Function Create(); overload; - Begin - Create('w:trPr'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TwTrPr=class(NodeInfo) + Function Create(); overload; + Begin + Create('w:trPr'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"w:trHeight", "obj":Height,"attrEx":"w:val","nodeType":"","attrName":""),("name":"w:trHeight", "obj":Rule,"attrEx":"w:hRule","nodeType":"","attrName":"") ,("name":"w:jc", "obj":JC,"attrEx":"w:val","nodeType":"","attrName":"")) union ExtNodes; End; @@ -4099,32 +4251,34 @@ End; /////////////////////////////////////////////////////////////// /// TwTr /////////////////////////////////////////////////////////////// -type TwTr=class(NodeInfo) - Function Create(); overload; - Begin - Create('w:tr'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TwTr=class(NodeInfo) + Function Create(); overload; + Begin + Create('w:tr'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin TrPr := new TwTrPr('w:trPr'); Tc := array(); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":TrPr.NodeName, "obj":TrPr,"attrEx":"","nodeType":"","attrName":""),("name":"w:tc", "obj":Tc,"attrEx":"","nodeType":"","attrName":"","arrObj":"array") ) union ExtNodes; End; @@ -4139,30 +4293,32 @@ End; /////////////////////////////////////////////////////////////// /// TwTblPr /////////////////////////////////////////////////////////////// -type TwTblPr=class(NodeInfo) - Function Create(); overload; - Begin - Create('w:tblPr'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TwTblPr=class(NodeInfo) + Function Create(); overload; + Begin + Create('w:tblPr'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"w:tblStyle", "obj":Style,"attrEx":"w:val","nodeType":"","attrName":""),("name":"w:tblW", "obj":W,"attrEx":"w:w","nodeType":"","attrName":"") ,("name":"w:tblW", "obj":Type,"attrEx":"w:type","nodeType":"","attrName":""),("name":"w:tblLook", "obj":Val,"attrEx":"w:val","nodeType":"","attrName":"") ,("name":"w:tblLook", "obj":NoVBand,"attrEx":"w:noVBand","nodeType":"","attrName":""),("name":"w:tblLook", "obj":NoHBand,"attrEx":"w:noHBand","nodeType":"","attrName":"") @@ -4189,30 +4345,32 @@ End; /////////////////////////////////////////////////////////////// /// TwGridCol /////////////////////////////////////////////////////////////// -type TwGridCol=class(NodeInfo) - Function Create(); overload; - Begin - Create('w:gridCol'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TwGridCol=class(NodeInfo) + Function Create(); overload; + Begin + Create('w:gridCol'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return array('w:w':W) union ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; @@ -4225,31 +4383,33 @@ End; /////////////////////////////////////////////////////////////// /// TwTblGrid /////////////////////////////////////////////////////////////// -type TwTblGrid=class(NodeInfo) - Function Create(); overload; - Begin - Create('w:tblGrid'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TwTblGrid=class(NodeInfo) + Function Create(); overload; + Begin + Create('w:tblGrid'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin GridCol := array(); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":"w:gridCol", "obj":GridCol,"attrEx":"","nodeType":"","attrName":"","arrObj":"array")) union ExtNodes; End; @@ -4262,40 +4422,42 @@ End; /////////////////////////////////////////////////////////////// /// TTable /////////////////////////////////////////////////////////////// -type TTable=class(NodeInfo, DocumentTable) - Function Create(); overload; - Begin - Create('w:tbl'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TTable=class(NodeInfo, DocumentTable) + Function Create(); overload; + Begin + Create('w:tbl'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin TblPr := new TwTblPr('w:tblPr'); TblGrid := new TwTblGrid('w:tblGrid'); TR := array(); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":TblPr.NodeName, "obj":TblPr,"attrEx":"","nodeType":"","attrName":""),("name":TblGrid.NodeName, "obj":TblGrid,"attrEx":"","nodeType":"","attrName":"") ,("name":"w:node", "obj":Node,"attrEx":"","nodeType":"","attrName":""),("name":"w:tr", "obj":TR,"attrEx":"","nodeType":"","attrName":"","arrObj":"array") ) union ExtNodes; End; Function Style(styleId); - Begin + Begin TblPr.Style := styleId; End; @@ -4311,30 +4473,32 @@ End; /////////////////////////////////////////////////////////////// /// TCoreProperties /////////////////////////////////////////////////////////////// -type TCoreProperties=class(NodeInfo, CoreProperties) - Function Create(); overload; - Begin - Create('w:p'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TCoreProperties=class(NodeInfo, CoreProperties) + Function Create(); overload; + Begin + Create('w:p'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return ExtNodes; End; @@ -4346,32 +4510,34 @@ End; /////////////////////////////////////////////////////////////// /// TPicture /////////////////////////////////////////////////////////////// -type TPicture=class(NodeInfo, DocumentPicture) - Function Create(); overload; - Begin - Create('w:p'); - End; - - Function Create(name); overload; - Begin - Class(NodeInfo).Create(name); - Init(); - End; - - Function Init(); - Begin +type TPicture=class(NodeInfo, DocumentPicture) + Function Create(); overload; + Begin + Create('w:p'); + End; + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End; + + Function Init(); + Begin pPr := new TwpPr('w:pPr'); Run := new TRun('w:r'); //TODO... End; - Function GetAttrs(); override; - Begin + Function GetAttrs(); override; + Begin + HandleAttrs(); return ExtAttr; End; - Function GetChildren(); override; - Begin + Function GetChildren(); override; + Begin + HandleChildren(); return array(("name":pPr.NodeName, "obj":pPr,"attrEx":"","nodeType":"","attrName":""),("name":Run.NodeName, "obj":Run,"attrEx":"","nodeType":"","attrName":"") ) union ExtNodes; End; @@ -4383,3 +4549,149 @@ type TPicture=class(NodeInfo, DocumentPicture) Run; End; +/////////////////////////////////////////////////////////////////////////////////////////// +///XLSX文档实现 + +Type TGradient = class(NodeInfo) + + Function Create(); overload; + Begin + Create('gradientFill'); + End + + Function Create(name); overload; + Begin + Class(NodeInfo).Create(name); + Init(); + End + + Function Init(); + Begin + End + + Function HandleAttrs(); override; + Begin + case Shading of + 0: degree := 90; + 1: degree := 270; + 2: degree := 90; + 3: degree := nil; + 4: degree := 180; + 5: degree := nil; + 6: degree := 45; + 7: degree := 225; + 8: degree := 45; + 9: degree := 135; + 10: degree := 315; + 11: degree := 135; + 12: + begin + degree := nil; + type := "path"; + end + 13: + begin + degree := nil; + type := "path"; + left := 1; + right := 1; + end + 14: + begin + degree := nil; + type := "path"; + top := 1; + bottom := 1; + end + 15: + begin + degree := nil; + type := "path"; + left := 1; + right := 1; + top := 1; + bottom := 1; + end + 16: + begin + degree := nil; + type := "path"; + left := 0.5; + right := 0.5; + top := "0.5"; + bottom := 0.5; + end + end + End + + Function HandleChildren(); override; + Begin + setColor(); + End + + Function GetAttrs(); override; + Begin + HandleAttrs(); + return array('degree': degree, 'type': type, 'left': left, 'right': right, + 'top': top, 'bottom': bottom) union ExtAttr; + End + + Function GetChildren(); override; + Begin + HandleChildren(); + arr := array(); + if ifObj(topPosition) then arr union= array(('name': topPosition.NodeName, 'obj': topPosition, 'attrEx': '', 'nodeType': '', 'attrName': '', )); + if ifObj(middlePosition) then arr union= array(('name': middlePosition.NodeName, 'obj': middlePosition, 'attrEx': '', 'nodeType': '', 'attrName': '', )); + if ifObj(bottomPosition) then arr union= array(('name': bottomPosition.NodeName, 'obj': bottomPosition, 'attrEx': '', 'nodeType': '', 'attrName': '', )); + return arr union ExtNodes; + End + +private + + Function setColor(); + Begin + if ifnil(Shading) then return; + topPosition := new TStop('stop'); + topPosition.Position := 0; + bottomPosition := new TStop('stop'); + bottomPosition.Position := 1; + + if not ifnil(Color1) then topPosition.Color := Color1; + else topPosition.ThemeColor := ThemeColor1 ? : "0"; + + if ifObj(middlePosition) then + begin + middlePosition.Position := 0.5; + if not ifnil(Color2) then middlePosition.Color := Color2; + else middlePosition.ThemeColor := ThemeColor2 ? : "0"; + if not ifnil(Color1) then bottomPosition.Color := Color1; + else bottomPosition.ThemeColor := ThemeColor1 ? : "0"; + end + else begin + if not ifnil(Color2) then bottomPosition.Color := Color2; + else bottomPosition.ThemeColor := ThemeColor2 ? : "0"; + end + End + +public + Shading; + Color1; + Color2; + ThemeColor1; + ThemeColor2; + +private + // Attributes + type; + degree; + left; + right; + top; + bottom; + + // Nodes + topPosition; + bottomPosition; + middlePosition; + +End diff --git a/funcext/TSOffice/TSExcelFile.tsf b/funcext/TSOffice/TSExcelFile.tsf index d1fb401..0fedc5f 100644 --- a/funcext/TSOffice/TSExcelFile.tsf +++ b/funcext/TSOffice/TSExcelFile.tsf @@ -346,7 +346,7 @@ Type TSExcelFile = Class return workbook_.InsertCol(sheet, col); End; - ///插入行,在指定列前插入空白行 + ///插入行,在指定行前插入空白行 ///sheet: string,工作表名称 ///row: int ///返回: [err, info] diff --git a/funcext/TSOffice/TSUtils/NodeInfo.tsf b/funcext/TSOffice/TSUtils/NodeInfo.tsf index 02b35f1..0bbd1ae 100644 --- a/funcext/TSOffice/TSUtils/NodeInfo.tsf +++ b/funcext/TSOffice/TSUtils/NodeInfo.tsf @@ -8,6 +8,14 @@ public ExtNodes := array(); End + Function HandleAttrs(); virtual; + Begin + End + + Function HandleChildren(); virtual; + Begin + End + Function GetAttrs(); virtual; Begin return ExtAttr; @@ -60,9 +68,10 @@ public arr := array('type': 'element', 'name': children[i]['name'], 'attributes': array()); if node_type = 'empty' then // begin - // child_arr[len] := arr; - // ++len; - // continue; + end + else if node_type = 'empty_string' then + begin + if ifstring(obj) then arr['attributes'] := array(key : obj); end else if node_type = 'pcdata' then begin diff --git a/funcext/TSOffice/worksheet/xlsxWorkBook.tsf b/funcext/TSOffice/worksheet/xlsxWorkBook.tsf index 69e1ff6..f145967 100644 --- a/funcext/TSOffice/worksheet/xlsxWorkBook.tsf +++ b/funcext/TSOffice/worksheet/xlsxWorkBook.tsf @@ -264,7 +264,7 @@ Type xlsxWorkBook = Class while ifObj(node) do Begin name := node.GetAttribute('name'); - if name = sourceName then + if name = LowerCase(sourceName) then Begin node.SetAttribute('name', destName); break;