1# *************************************************************
2#
3#  Licensed to the Apache Software Foundation (ASF) under one
4#  or more contributor license agreements.  See the NOTICE file
5#  distributed with this work for additional information
6#  regarding copyright ownership.  The ASF licenses this file
7#  to you under the Apache License, Version 2.0 (the
8#  "License"); you may not use this file except in compliance
9#  with the License.  You may obtain a copy of the License at
10#
11#    http://www.apache.org/licenses/LICENSE-2.0
12#
13#  Unless required by applicable law or agreed to in writing,
14#  software distributed under the License is distributed on an
15#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16#  KIND, either express or implied.  See the License for the
17#  specific language governing permissions and limitations
18#  under the License.
19#
20# *************************************************************
21TODO/Unimplemented Calc OOXML Export Features:
22=============================================
23
24Partially implemented features are not mentioned here; grep for OOXTODO within
25sc/source/filter/*.
26
27In updated OfficeFileFormatsProtocols.zip [MS-XLS].pdf,
28Section §2.3.1 (p.154) provides the record name :: record number mapping, and
29Section §2.3.2 (p.165) provides the record number :: record name mapping.
30
31Elements:
32    - Workbook (§3.2):
33        - customWorkbookViews (§3.2.3)
34        - ext (§3.2.7)
35        - externalReference (§3.2.8)
36        - externalReferences (§3.2.9)
37        - extLst (§3.2.10)
38        - fileRecoveryPr (§3.2.11)      [ CRASHRECERR? 865h ]
39        - fileSharing (§3.2.12)         [ FILESHARING 5Bh ]
40        - functionGroup (§3.2.14)       [ FNGRP12 898h; FNGROUPNAME 9Ah ]
41        - functionGroups (§3.2.15)      [ FNGROUPCOUNT: 9Ch ]
42        - oleSize (§3.2.16)             [ OLESIZE DEh ]
43        - smartTagPr (§3.2.21)          [ BOOKEXT 863h ]
44        - smartTagType (§3.2.22)        [ unknown record ]
45        - smartTagTypes (§3.2.23)       [ unknown record ]
46        - webPublishing (§3.2.24)       [ WOPT 80Bh ]
47        - webPublishObject (§3.2.25)    [ WEBPUB 801h ]
48        - webPublishObjects (§3.2.26)   [ unsupported ]
49    - Worksheets (§3.3.1):
50        - autoFilter (§3.3.1.1)         [ AutoFilter 9Eh ]
51        - cellSmartTag (§3.3.1.4)       [ FEAT 868h ]
52        - cellSmartTagPr (§3.3.1.5)     [ FEAT? 868h ]
53        - cellSmartTags (§3.3.1.6)      [ FEAT 868h ]
54        - cellWatch (§3.3.1.7)          [ CELLWATCH 86Ch ]
55        - cellWatches (§3.3.1.8)        [ CELLWATCH 86Ch ]
56        - cfRule (§3.3.1.9)             [ CF 1B1h ]
57        - cfvo (§3.3.1.10)              [ CF12 87Ah ]
58        - chartsheet (§3.3.1.11)        [ CHARTFRTINFO 850h, FRTWRAPPER 851h...]
59        - color (§3.3.1.14)             [ DXF 88Dh xfpropBorder?
60                                          XFEXT 87Dh xclrType? ]
61        - colorScale (§3.3.1.15)        [ DXF 88Dh? ]
62        - control (§3.3.1.18)           [ ??? ]
63        - controls (§3.3.1.19)          [ ??? ]
64        - customPr (§3.3.1.20)          [ ??? ]
65        - customProperties (§3.3.1.21)  [ ??? ]
66        - customSheetView (§3.3.1.22)   [ ???; for charts; see chartsheet? ]
67        - customSheetView (§3.3.1.23)   [ ??? ]
68        - customSheetViews (§3.3.1.24)  [ ???; for charts; see chartsheet? ]
69        - customSheetViews (§3.3.1.25)  [ ??? ]
70        - dataBar (§3.3.1.26)           [ CF12 87Ah ct=Databar ]
71        - dataConsolidate (§3.3.1.27)   [ DCON 50h ]
72        - dataRef (§3.3.1.28)           [ DCONBIN 1B5h ]
73        - dataRefs (§3.3.1.29)          [ ??? ]
74        - dialogsheet (§3.3.1.32)       [ ??? ]
75        - drawing (§3.3.1.34)           [ ??? ]
76        - evenFooter (§3.3.1.35)        [ HeaderFooter 89Ch ]
77        - evenHeader (§3.3.1.36)        [ HeaderFooter 89Ch ]
78        - firstFooter (§3.3.1.38)       [ HeaderFooter 89Ch ]
79        - firstHeader (§3.3.1.39)       [ HeaderFooter 89Ch ]
80        - formula (§3.3.1.40)           [ CF 1B1h ]
81        - iconSet (§3.3.1.46)           [ CF12 87Ah ct=CFMultistate ]
82        - ignoredError (§3.3.1.47)      [ Feat/FeatForumulaErr2/FFErrorCheck 868h ]
83        - ignoredErrors (§3.3.1.48)     [ Feat 868h ]
84        - legacyDrawing (§3.3.1.51)     [ MsoDrawing ECh ]
85        - legacyDrawingHF (§3.3.1.52)   [ ??? ]
86        - oleObject (§3.3.1.57)         [ ??? ]
87        - oleObjects (§3.3.1.58)        [ ??? ]
88        - outlinePr (§3.3.1.59)         [ ??? ]
89        - pageSetup (§3.3.1.62)         [ ???; for charts; see chartsheet? ]
90        - picture (§3.3.1.65)           [ BkHim E9h; see XclExpBitmap ]
91        - pivotArea (§3.3.1.66)         [ ??? ]
92        - pivotSelection (§3.3.1.67)    [ ??? ]
93        - protectedRange (§3.3.1.69)    [ ??? ]
94        - protectedRanges (§3.3.1.70)   [ ??? ]
95        - sheetCalcPr (§3.3.1.76)       [ REFRESHALL?? ]
96        - sheetFormatPr (§3.3.1.78)     [ lots of records? ]
97            @defaultColWidth:   DefColWidth
98            @defaultRowHeight:  DEFROWHEIGHT
99            @baseColWidth:      ColInfo/coldx?
100            @customHeight:      ColInfo/fUserSet?
101            @zeroHeight:        ColInfo/fHidden?
102            @thickTop:          ?
103            @thickBottom:       ?
104            @outlineLevelRow:   ?
105            @outlineLevelCol:   ColInfo/iOutLevel?
106        - sheetPr (§3.3.1.80)           [ ??? ; for charts ]
107        - sheetView (§3.3.1.84)         [ ??? ; for charts ]
108        - sheetViews (§3.3.1.86)        [ ??? ; for charts ]
109        - smartTags (§3.3.1.87)         [ FEAT 868h; isf=ISFFACTOID ]
110        - sortCondition (§3.3.1.88)     [ SortData 895h? ]
111        - sortState (§3.3.1.89)         [ Sort 90h ]
112        - tabColor (§3.3.1.90)          [ SheetExt 862h ]
113        - tablePart (§3.3.1.91)         [ ??? ]
114        - tableParts (§3.3.1.92)        [ ??? ]
115        - webPublishItem (§3.3.1.94)    [ WebPub 801h ]
116        - webPublishItems (§3.3.1.95)
117    - AutoFilter Settings (§3.3.2):
118        - colorFilter (§3.3.2.1)        [ AutoFilter12 87Eh,
119                                          DXFN12NoCB struct ]
120        - dateGroupItem (§3.3.2.4)      [ AutoFilter12 87Eh,
121                                          AF12DateInfo struct ]
122        - dynamicFilter (§3.3.2.5)      [ AutoFilter12 87Eh, cft field ]
123        - filter (§3.3.2.6)             [ AutoFilter12 87Eh, rgCriteria? ]
124        - filters (§3.3.2.9)            [ AutoFilter12 87Eh, rgCriteria? ]
125        - iconFilter (§3.3.2.9)         [ AutoFilter12 87Eh,
126                                          AF12CellIcon struct ]
127    - Shared String Table (§3.4):
128        - phoneticPr (§3.4.3)
129        - rPh (§3.4.6)
130    - Tables (§3.5.1):
131        - calculatedColumnFormula (§3.5.1.1)
132                                        [ ??? ]
133        - table (§3.5.1.2)              [ ??? ]
134        - tableColumn (§3.5.1.3)        [ ??? ]
135        - tableColumns (§3.5.1.4)       [ ??? ]
136        - tableStyleInfo (§3.5.1.5)     [ ??? ]
137        - totalRowFormula (§3.5.1.6)    [ ??? ]
138        - xmlColumnPr (§3.5.1.7)        [ ??? ]
139    - Single Cell Tables (§3.5.2):
140        - singleXmlCell (§3.5.2.1)      [ ??? ]
141        - singleXmlCells (§3.5.2.2)     [ ??? ]
142        - xmlCellPr (§3.5.2.3)          [ ??? ]
143        - xmlPr (§3.5.2.4)              [ ??? ]
144    - Calculation Chain (§3.6):
145        - c (§3.6.1)                    [ ??? ]
146        - calcChain (§3.6.2)            [ ??? ]
147    - Comments (§3.7):
148        - Note: Excel *requires* that there be a drawing object associated
149          with the comment before it will show it.  If you _just_ generate the
150          <comments/> XML part and create a <Relationship/> for it, Excell
151          will NOT display the comment.
152        - As drawing is not currently implemented, comments support is
153          incomplete.
154        - TODO: text formatting.  Currently we only write unformatted text
155          into comments?.xml, as I'm not sure how formatted text is handled.
156    - Styles (§3.8):
157        - dxf (§3.8.14):                [ DXF 88Dh; unsupported ]
158        - dxfs (§3.8.15):               [ DXF 88Dh ]
159        - gradientFill (§3.8.23):       [ ??? ]
160        - horizontal (§3.8.24):         [ DXF 88Dh fNewBorder, xfprops ]
161        - mruColors (§3.8.28):          [ ??? ]
162        - scheme (§3.8.36):             [ ??? ]
163        - stop (§3.8.38):               [ ??? ]
164        - tableStyle (§3.8.40):         [ TableStyle 88Fh; unsupported ]
165        - tableStyleElement (§3.8.41):  [ TableStyleElement 890h; unsupported ]
166        - tableStyles (§3.8.42):        [ TableStyles 88Eh; unsupported ]
167        - vertical (§3.8.44):           [ DXF 88Dh fNewBorder, xfprops ]
168
169