[ooo-build-commit] .: 3 commits - patches/dev300

Katarina Machalkova bubli at kemper.freedesktop.org
Tue Jul 13 03:42:43 PDT 2010


 patches/dev300/apply                                          |   90 
 patches/dev300/oox-calc-export-export-pivot-content.diff      |   49 
 patches/dev300/oox-calc-export-sotstorage-init.diff           |   24 
 patches/dev300/oox-smartart-import.diff                       |   15 
 patches/dev300/xlsx-arabic-export-crash.diff                  |   25 
 patches/dev300/xlsx-export-cell-style-max-builtin.diff        |   28 
 patches/dev300/xlsx-export-no-more-svstream-sotstorage.diff   |   36 
 patches/dev300/xlsx-export-set-xml-2007-flavour.diff          |   25 
 patches/dev300/xlsx-export-simple-autofilter.diff             |   66 
 patches/dev300/xlsx-export-skip-auto-format.diff              |   29 
 patches/dev300/xlsx-filter-as-a-separate-lib-guards.diff      |  441 
 patches/dev300/xlsx-filter-as-a-separate-lib-xls-copy.diff    |50393 ----------
 patches/dev300/xlsx-filter-as-a-separate-lib.diff             |  349 
 patches/dev300/xlsx-shared-import-and-export.diff             |  544 
 patches/dev300/xlsx-shared-oox-smartart-import-m13.diff       |   15 
 patches/dev300/xlsx-shared-xlsx-shared-import-and-export.diff |    2 
 patches/dev300/xlsx-snapshot.diff                             | 2491 
 17 files changed, 39 insertions(+), 54583 deletions(-)

New commits:
commit b6cfd439c64cf8063856c713a8f7be0af516b704
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Tue Jul 13 11:58:28 2010 +0200

    With OOXMLExportDevel, these patches are no longer needed
    
    they're duplicated in their (xlsx-shared-*) equivalents
    
    * patches/dev300/oox-calc-export-export-pivot-content.diff:
    * patches/dev300/oox-calc-export-sotstorage-init.diff:
    * patches/dev300/xlsx-arabic-export-crash.diff:
    * patches/dev300/xlsx-export-cell-style-max-builtin.diff:
    * patches/dev300/xlsx-export-no-more-svstream-sotstorage.diff:
    * patches/dev300/xlsx-export-set-xml-2007-flavour.diff:
    * patches/dev300/xlsx-export-simple-autofilter.diff:
    * patches/dev300/xlsx-export-skip-auto-format.diff:
    * patches/dev300/xlsx-filter-as-a-separate-lib-guards.diff:
    * patches/dev300/xlsx-filter-as-a-separate-lib-xls-copy.diff:
    * patches/dev300/xlsx-filter-as-a-separate-lib.diff:
    * patches/dev300/xlsx-shared-import-and-export.diff:
    * patches/dev300/xlsx-snapshot.diff:

diff --git a/patches/dev300/oox-calc-export-export-pivot-content.diff b/patches/dev300/oox-calc-export-export-pivot-content.diff
deleted file mode 100644
index 3db387f..0000000
--- a/patches/dev300/oox-calc-export-export-pivot-content.diff
+++ /dev/null
@@ -1,49 +0,0 @@
-From d249e3093745ae0f83d4579b58c14cf384296c0b Mon Sep 17 00:00:00 2001
-From: Jan Holesovsky <kendy at suse.cz>
-Date: Fri, 14 May 2010 17:06:04 +0200
-Subject: [PATCH 614/768] oox-calc-export-export-pivot-content.diff
-
----
- sc/source/filter/xlsx/xlsx-xepivot.cxx |    6 ++++++
- 1 files changed, 6 insertions(+), 0 deletions(-)
-
-diff --git sc/source/filter/xlsx/xlsx-xepivot.cxx sc/source/filter/xlsx/xlsx-xepivot.cxx
-index 3270295..6f516bf 100644
---- sc/source/filter/xlsx/xlsx-xepivot.cxx
-+++ sc/source/filter/xlsx/xlsx-xepivot.cxx
-@@ -742,6 +742,8 @@ void XclExpPivotCache::Save( XclExpStream& rStrm )
- void XclExpPivotCache::SaveXml( XclExpXmlStream& rStrm )
- {
-     DBG_ASSERT( mbValid, "XclExpPivotCache::Save - invalid pivot cache" );
-+#ifdef XLSX_PIVOT_CACHE /* <pivotCache> without xl/pivotCaches/ cacheStream
-+                           results in a broken .xlsx */
-     sax_fastparser::FSHelperPtr& rWorkbook = rStrm.GetCurrentStream();
-     OUString sId = OUStringBuffer()
-         .appendAscii("rId")
-@@ -760,6 +762,7 @@ void XclExpPivotCache::SaveXml( XclExpXmlStream& rStrm )
-     // create the pivot cache storage stream
-     // OOXTODO: WriteCacheStream();
-     rWorkbook->endElement( XML_pivotCache );
-+#endif /* XLSX_PIVOT_CACHE */
- }
- 
- // private --------------------------------------------------------------------
-@@ -1735,12 +1738,15 @@ void XclExpPivotTableManager::WritePivotCaches( XclExpStream& rStrm )
- 
- void XclExpPivotTableManager::WritePivotCachesXml( XclExpXmlStream& rStrm )
- {
-+#ifdef XLSX_PIVOT_CACHE /* <pivotCache> without xl/pivotCaches/ cacheStream
-+                           results in a broken .xlsx */
-     if( maPCacheList.IsEmpty() )
-         return;
-     sax_fastparser::FSHelperPtr& rWorkbook = rStrm.GetCurrentStream();
-     rWorkbook->startElement( XML_pivotCaches, FSEND );
-     maPCacheList.SaveXml( rStrm );
-     rWorkbook->endElement( XML_pivotCaches );
-+#endif /* XLSX_PIVOT_CACHE */
- }
- 
- void XclExpPivotTableManager::WritePivotTables( XclExpStream& rStrm, SCTAB nScTab )
--- 
-1.7.0.1
-
diff --git a/patches/dev300/oox-calc-export-sotstorage-init.diff b/patches/dev300/oox-calc-export-sotstorage-init.diff
deleted file mode 100644
index fe05e5a..0000000
--- a/patches/dev300/oox-calc-export-sotstorage-init.diff
+++ /dev/null
@@ -1,24 +0,0 @@
---- sc/source/filter/xlsx/xlsx-xestream.cxx.old	2010-03-03 17:00:07.000000000 +0100
-+++ sc/source/filter/xlsx/xlsx-xestream.cxx	2010-03-03 17:00:08.000000000 +0100
-@@ -58,6 +58,10 @@
- #include <formula/grammar.hxx>
- #include <oox/export/drawingml.hxx>
- 
-+#include <sfx2/docfile.hxx>
-+#include <sfx2/objsh.hxx>
-+#include <sfx2/app.hxx>
-+
- #define DEBUG_XL_ENCRYPTION 0
- 
- using ::com::sun::star::beans::PropertyValue;
-@@ -1124,7 +1128,9 @@ bool XclExpXmlStream::exportDocument() t
- {
-     ScDocShell* pShell = getDocShell();
-     ScDocument* pDoc = pShell->GetDocument();
--    SotStorageRef rStorage = dynamic_cast <SotStorage*>( Reference<XStorage>( pShell->GetStorage() ).get() );
-+    SfxMedium* pMedium = pShell->GetMedium();
-+    SvStream* pMediumStream = pMedium->GetOutStream();
-+    SotStorageRef rStorage = new SotStorage( pMediumStream, false );
- 
-     XclExpRootData aData( EXC_BIFF8, *pShell->GetMedium (), rStorage, *pDoc, RTL_TEXTENCODING_DONTKNOW );
-     aData.meOutput = EXC_OUTPUT_XML_2007;
diff --git a/patches/dev300/xlsx-arabic-export-crash.diff b/patches/dev300/xlsx-arabic-export-crash.diff
deleted file mode 100644
index eab2084..0000000
--- a/patches/dev300/xlsx-arabic-export-crash.diff
+++ /dev/null
@@ -1,25 +0,0 @@
-From 4bbd85c4b34faa866a8eea75282478030e3c4459 Mon Sep 17 00:00:00 2001
-From: Jan Holesovsky <kendy at suse.cz>
-Date: Fri, 14 May 2010 17:05:58 +0200
-Subject: [PATCH 611/768] xlsx-arabic-export-crash.diff
-
----
- sc/source/filter/xlsx/xlsx-xetable.cxx |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git sc/source/filter/xlsx/xlsx-xetable.cxx sc/source/filter/xlsx/xlsx-xetable.cxx
-index 0e169bf..b52b5c0 100644
---- sc/source/filter/xlsx/xlsx-xetable.cxx
-+++ sc/source/filter/xlsx/xlsx-xetable.cxx
-@@ -894,7 +894,7 @@ XclExpFormulaCell::XclExpFormulaCell(
-         mxAddRec = rShrfmlaBfr.CreateOrExtendShrfmla( rScTokArr, aScPos );
- 
-     // no shared formula found - create a simple cell formula
--    if( !mxAddRec )
-+    if( !mxAddRec || ! mxTokArr )
-         mxTokArr = rRoot.GetFormulaCompiler().CreateFormula( EXC_FMLATYPE_CELL, rScTokArr, &aScPos );
- }
- 
--- 
-1.7.0.1
-
diff --git a/patches/dev300/xlsx-export-cell-style-max-builtin.diff b/patches/dev300/xlsx-export-cell-style-max-builtin.diff
deleted file mode 100644
index deba1a0..0000000
--- a/patches/dev300/xlsx-export-cell-style-max-builtin.diff
+++ /dev/null
@@ -1,28 +0,0 @@
-From 30f0e7e94a7d27613b381b8fa9275aa6c57f446a Mon Sep 17 00:00:00 2001
-From: Jan Holesovsky <kendy at suse.cz>
-Date: Fri, 14 May 2010 17:06:03 +0200
-Subject: [PATCH 613/768] xlsx-export-cell-style-max-builtin.diff
-
----
- sc/source/filter/xlsx/xlsx-xestyle.cxx |    5 ++++-
- 1 files changed, 4 insertions(+), 1 deletions(-)
-
-diff --git sc/source/filter/xlsx/xlsx-xestyle.cxx sc/source/filter/xlsx/xlsx-xestyle.cxx
-index 5e7c86d..ba189b6 100644
---- sc/source/filter/xlsx/xlsx-xestyle.cxx
-+++ sc/source/filter/xlsx/xlsx-xestyle.cxx
-@@ -2212,7 +2212,10 @@ void XclExpStyle::SaveXml( XclExpXmlStream& rStrm )
-     rStrm.GetCurrentStream()->singleElement( XML_cellStyle,
-             XML_name,           sName.getStr(),
-             XML_xfId,           OString::valueOf( nXFId ).getStr(),
--            XML_builtinId,      OString::valueOf( (sal_Int32) mnStyleId ).getStr(),
-+/* mso-excel 2007 complains when it finds builtinId >= 55, it is not
-+ * bothered by multiple 54 values. */
-+#define CELL_STYLE_MAX_BUILTIN_ID 55
-+                                             XML_builtinId, OString::valueOf( std::min( static_cast<sal_Int32>( CELL_STYLE_MAX_BUILTIN_ID - 1 ), static_cast <sal_Int32>( mnStyleId ) ) ).getStr(),
-             // OOXTODO: XML_iLevel,
-             // OOXTODO: XML_hidden,
-             XML_customBuiltin,  XclXmlUtils::ToPsz( ! IsBuiltIn() ),
--- 
-1.7.0.1
-
diff --git a/patches/dev300/xlsx-export-no-more-svstream-sotstorage.diff b/patches/dev300/xlsx-export-no-more-svstream-sotstorage.diff
deleted file mode 100644
index 32309e2..0000000
--- a/patches/dev300/xlsx-export-no-more-svstream-sotstorage.diff
+++ /dev/null
@@ -1,36 +0,0 @@
-diff --git sc/source/filter/xlsx/xlsx-xestream.cxx sc/source/filter/xlsx/xlsx-xestream.cxx
-index 7a57718..36ab09e 100644
---- sc/source/filter/xlsx/xlsx-xestream.cxx
-+++ sc/source/filter/xlsx/xlsx-xestream.cxx
-@@ -1129,9 +1129,10 @@ bool XclExpXmlStream::exportDocument() throw()
- {
-     ScDocShell* pShell = getDocShell();
-     ScDocument* pDoc = pShell->GetDocument();
--    SfxMedium* pMedium = pShell->GetMedium();
--    SvStream* pMediumStream = pMedium->GetOutStream();
--    SotStorageRef rStorage = new SotStorage( pMediumStream, false );
-+    // NOTE: Don't use SotStorage or SvStream any more, and never call
-+    // SfxMedium::GetOutStream() anywhere in the xlsx export filter code!
-+    // Instead, write via XOutputStream instance.
-+    SotStorageRef rStorage = static_cast<SotStorage*>(NULL);
- 
-     XclExpRootData aData( EXC_BIFF8, *pShell->GetMedium (), rStorage, *pDoc, RTL_TEXTENCODING_DONTKNOW );
-     aData.meOutput = EXC_OUTPUT_XML_2007;
-@@ -1147,7 +1148,7 @@ bool XclExpXmlStream::exportDocument() throw()
-     aRoot.GetOldRoot().eDateiTyp = Biff8;
-     XclEscher escher( *aRoot.GetOldRoot ().pER, pDoc->GetTableCount () );
-     aRoot.GetOldRoot().pEscher = &escher;
--
-+#if 0 // FIXME: Re-write this block without using SotStorage.
-     if ( SvtFilterOptions* pOptions = SvtFilterOptions::Get() )
-         if ( pShell && pOptions->IsLoadExcelBasicStorage() )
-             if ( sal_uInt32 nError
-@@ -1158,7 +1159,7 @@ bool XclExpXmlStream::exportDocument() throw()
-             {
-                 pShell->SetError( nError, ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( OSL_LOG_PREFIX ) ) );
-             }
--
-+#endif
-     OUString const workbook = CREATE_OUSTRING( "xl/workbook.xml" );
-     PushStream( CreateOutputStream( workbook, workbook,
-                                     Reference <XOutputStream>(),
diff --git a/patches/dev300/xlsx-export-set-xml-2007-flavour.diff b/patches/dev300/xlsx-export-set-xml-2007-flavour.diff
deleted file mode 100644
index 5c2f827..0000000
--- a/patches/dev300/xlsx-export-set-xml-2007-flavour.diff
+++ /dev/null
@@ -1,25 +0,0 @@
-From fec9f02fe9d9d1d552ad20ca164ad9e5e5bdc8ed Mon Sep 17 00:00:00 2001
-From: Jan Nieuwenhuizen <janneke at gnu.org>
-Date: Fri, 8 May 2009 12:42:47 +0200
-Subject: [PATCH] OOXML: set .xlsx output flavour to EXC_OUTPUT_XML_2007.  Fixes n#502090.
-
-   * Modified     sc/source/filter/xlsx/xlsx-xestream.cxx
----
- sc/source/filter/xlsx/xlsx-xestream.cxx |    1 +
- 1 files changed, 1 insertions(+), 0 deletions(-)
-
-diff --git sc/source/filter/xlsx/xlsx-xestream.cxx sc/source/filter/xlsx/xlsx-xestream.cxx
-index a147e13..dbba4aa 100644
---- sc/source/filter/xlsx/xlsx-xestream.cxx
-+++ sc/source/filter/xlsx/xlsx-xestream.cxx
-@@ -1119,6 +1119,7 @@ bool XclExpXmlStream::exportDocument() throw()
-     SotStorageRef rStorage = dynamic_cast <SotStorage*>( Reference<XStorage>( pShell->GetStorage() ).get() );
- 
-     XclExpRootData aData( EXC_BIFF8, *pShell->GetMedium (), rStorage, *pDoc, RTL_TEXTENCODING_DONTKNOW );
-+    aData.meOutput = EXC_OUTPUT_XML_2007;
-     XclExpRoot aRoot( aData );
- 
-     mpRoot = &aRoot;
--- 
-1.6.0.rc1.49.g98a8
-
diff --git a/patches/dev300/xlsx-export-simple-autofilter.diff b/patches/dev300/xlsx-export-simple-autofilter.diff
deleted file mode 100644
index 23b82c5..0000000
--- a/patches/dev300/xlsx-export-simple-autofilter.diff
+++ /dev/null
@@ -1,66 +0,0 @@
-From 6d8c1c6b1b31b44c8f089db41059f868bca13531 Mon Sep 17 00:00:00 2001
-From: Jan Holesovsky <kendy at suse.cz>
-Date: Fri, 14 May 2010 17:06:01 +0200
-Subject: [PATCH 612/768] xlsx-export-simple-autofilter.diff
-
----
- sc/source/filter/xlsx/excrecds.hxx      |    1 +
- sc/source/filter/xlsx/xlsx-excrecds.cxx |    9 +++++++--
- 2 files changed, 8 insertions(+), 2 deletions(-)
-
-diff --git sc/source/filter/xlsx/excrecds.hxx sc/source/filter/xlsx/excrecds.hxx
-index c7e9231..358c925 100644
---- sc/source/filter/xlsx/excrecds.hxx
-+++ sc/source/filter/xlsx/excrecds.hxx
-@@ -474,6 +474,7 @@ private:
-     XclExpFiltermode*   pFilterMode;
-     XclExpAutofilterinfo* pFilterInfo;
-     ScRange                 maRef;
-+    bool mbAutoFilter;
- };
- 
- // ----------------------------------------------------------------------------
-diff --git sc/source/filter/xlsx/xlsx-excrecds.cxx sc/source/filter/xlsx/xlsx-excrecds.cxx
-index b651315..8d9adc6 100644
---- sc/source/filter/xlsx/xlsx-excrecds.cxx
-+++ sc/source/filter/xlsx/xlsx-excrecds.cxx
-@@ -840,6 +840,7 @@ ExcAutoFilterRecs::ExcAutoFilterRecs( const XclExpRoot& rRoot, SCTAB nTab ) :
-     XclExpRoot( rRoot ),
-     pFilterMode( NULL ),
-     pFilterInfo( NULL )
-+    , mbAutoFilter (false)
- {
-     ScDBCollection& rDBColl = GetDatabaseRanges();
-     XclExpNameManager& rNameMgr = GetNameManager();
-@@ -940,6 +941,9 @@ ExcAutoFilterRecs::ExcAutoFilterRecs( const XclExpRoot& rRoot, SCTAB nTab ) :
-             if( !maFilterList.IsEmpty() )
-                 pFilterMode = new XclExpFiltermode;
-             pFilterInfo = new XclExpAutofilterinfo( aRange.aStart, nColCnt );
-+
-+            if (maFilterList.IsEmpty () && !bConflict)
-+                mbAutoFilter = true;
-         }
-     }
- }
-@@ -997,7 +1001,7 @@ void ExcAutoFilterRecs::Save( XclExpStream& rStrm )
- 
- void ExcAutoFilterRecs::SaveXml( XclExpXmlStream& rStrm )
- {
--    if( maFilterList.IsEmpty() )
-+    if( maFilterList.IsEmpty() && !mbAutoFilter )
-         return;
- 
-     sax_fastparser::FSHelperPtr& rWorksheet = rStrm.GetCurrentStream();
-@@ -1005,7 +1009,8 @@ void ExcAutoFilterRecs::SaveXml( XclExpXmlStream& rStrm )
-             XML_ref,    XclXmlUtils::ToOString( maRef ).getStr(),
-             FSEND );
-     // OOXTODO: XML_extLst, XML_sortState
--    maFilterList.SaveXml( rStrm );
-+    if( !maFilterList.IsEmpty() )
-+        maFilterList.SaveXml( rStrm );
-     rWorksheet->endElement( XML_autoFilter );
- }
- 
--- 
-1.7.0.1
-
diff --git a/patches/dev300/xlsx-export-skip-auto-format.diff b/patches/dev300/xlsx-export-skip-auto-format.diff
deleted file mode 100644
index 479751c..0000000
--- a/patches/dev300/xlsx-export-skip-auto-format.diff
+++ /dev/null
@@ -1,29 +0,0 @@
-From 3e8f5ab3cc7fc0286f3048ed2cc020a9c16c9aa5 Mon Sep 17 00:00:00 2001
-From: Jan Nieuwenhuizen <janneke at gnu.org>
-Date: Tue, 12 May 2009 16:20:36 +0200
-Subject: [PATCH] OOXML: do not write XML_useAutoFormatting key without value.  Fixes n#497560.
-
-     * Modified     sc/source/filter/xlsx/xlsx-xepivot.cxx
-
----
- sc/source/filter/xlsx/xlsx-xepivot.cxx |    4 +++-
- 1 files changed, 3 insertions(+), 1 deletions(-)
-
-diff --git sc/source/filter/xlsx/xlsx-xepivot.cxx sc/source/filter/xlsx/xlsx-xepivot.cxx
-index d255cc4..c19bee2 100644
---- sc/source/filter/xlsx/xlsx-xepivot.cxx
-+++ sc/source/filter/xlsx/xlsx-xepivot.cxx
-@@ -1376,7 +1376,9 @@ void XclExpPivotTable::SaveXml( XclExpXmlStream& rStrm )
-             XML_enableDrill,                XclXmlUtils::ToPsz( maPTExtInfo.mnFlags & EXC_SXEX_DRILLDOWN ), // ???
-             // OOXTODO: XML_enableFieldProperties,      [ SXEx fEnableFieldDialog (maPTExtInfo.mnFlags) ]
-             // OOXTODO: XML_preserveFormatting,         [ SXEx fPreserveFormatting (maPTExtInfo.mnFlags) ]
--            XML_useAutoFormatting,
-+#if 0
-+            // XML_useAutoFormatting, [???],
-+#endif
-             // OOXTODO: XML_pageWrap,                   [ SXEx cWrapPage (maPTExtInfo.mnFlags) ]
-             // OOXTODO: XML_pageOverThenDown,           [ SXEx fAcrossPageLay (maPTExtInfo.mnFlags) ]
-             // OOXTODO: XML_subtotalHiddenItems,        [ SXEx fSubtotalHiddenPageItems (maPTExtInfo.mnFlags) ]
--- 
-1.6.0.rc1.49.g98a8
-
diff --git a/patches/dev300/xlsx-filter-as-a-separate-lib-guards.diff b/patches/dev300/xlsx-filter-as-a-separate-lib-guards.diff
deleted file mode 100644
index 5fb70f9..0000000
--- a/patches/dev300/xlsx-filter-as-a-separate-lib-guards.diff
+++ /dev/null
@@ -1,441 +0,0 @@
-From c5b86cec0b78d7cb00ae5014441defda24ce2b92 Mon Sep 17 00:00:00 2001
-From: Jan Holesovsky <kendy at suse.cz>
-Date: Fri, 14 May 2010 17:05:54 +0200
-Subject: [PATCH 610/768] xlsx-filter-as-a-separate-lib-guards.diff
-
----
- sc/source/filter/inc/XclExpChangeTrack.hxx |    4 ++++
- sc/source/filter/inc/excdoc.hxx            |    4 ++++
- sc/source/filter/inc/excrecds.hxx          |    4 ++++
- sc/source/filter/inc/exp_op.hxx            |    4 ++++
- sc/source/filter/inc/imp_op.hxx            |    4 ++++
- sc/source/filter/inc/xcl97esc.hxx          |    4 ++++
- sc/source/filter/inc/xcl97rec.hxx          |    4 ++++
- sc/source/filter/inc/xechart.hxx           |    4 ++++
- sc/source/filter/inc/xecontent.hxx         |    4 ++++
- sc/source/filter/inc/xeescher.hxx          |    4 ++++
- sc/source/filter/inc/xehelper.hxx          |    4 ++++
- sc/source/filter/inc/xelink.hxx            |    4 ++++
- sc/source/filter/inc/xename.hxx            |    4 ++++
- sc/source/filter/inc/xepage.hxx            |    4 ++++
- sc/source/filter/inc/xepivot.hxx           |    4 ++++
- sc/source/filter/inc/xerecord.hxx          |    4 ++++
- sc/source/filter/inc/xeroot.hxx            |    4 ++++
- sc/source/filter/inc/xestream.hxx          |    4 ++++
- sc/source/filter/inc/xestyle.hxx           |    4 ++++
- sc/source/filter/inc/xetable.hxx           |    4 ++++
- sc/source/filter/inc/xeview.hxx            |    4 ++++
- sc/source/filter/inc/xistyle.hxx           |    4 ++++
- sc/source/filter/inc/xladdress.hxx         |    4 ++++
- sc/source/filter/inc/xlescher.hxx          |    4 ++++
- sc/source/filter/inc/xlpivot.hxx           |    4 ++++
- sc/source/filter/inc/xlview.hxx            |    4 ++++
- sc/source/filter/xlsx/makefile.mk          |    2 ++
- 27 files changed, 106 insertions(+), 0 deletions(-)
-
-diff --git sc/source/filter/inc/XclExpChangeTrack.hxx sc/source/filter/inc/XclExpChangeTrack.hxx
-index 24b723e..c19031a 100644
---- sc/source/filter/inc/XclExpChangeTrack.hxx
-+++ sc/source/filter/inc/XclExpChangeTrack.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XCLEXPCHANGETRACK_HXX
- #define SC_XCLEXPCHANGETRACK_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include <tools/debug.hxx>
- #include <tools/datetime.hxx>
- #include <rtl/uuid.h>
-diff --git sc/source/filter/inc/excdoc.hxx sc/source/filter/inc/excdoc.hxx
-index a94c7ff..ce9c0c1 100644
---- sc/source/filter/inc/excdoc.hxx
-+++ sc/source/filter/inc/excdoc.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_EXCDOC_HXX
- #define SC_EXCDOC_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include <tools/solar.h>
- #include "excrecds.hxx"
- #include "xeroot.hxx"
-diff --git sc/source/filter/inc/excrecds.hxx sc/source/filter/inc/excrecds.hxx
-index 1f7acfd..92992a8 100644
---- sc/source/filter/inc/excrecds.hxx
-+++ sc/source/filter/inc/excrecds.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_EXCRECDS_HXX
- #define SC_EXCRECDS_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include <tools/solar.h>
- #include <svl/zforlist.hxx>
- #include <tools/string.hxx>
-diff --git sc/source/filter/inc/exp_op.hxx sc/source/filter/inc/exp_op.hxx
-index a115c7b..de39c26 100644
---- sc/source/filter/inc/exp_op.hxx
-+++ sc/source/filter/inc/exp_op.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_EXP_OP_HXX
- #define SC_EXP_OP_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include "filter.hxx"
- #include "root.hxx"
- #include "xeroot.hxx"
-diff --git sc/source/filter/inc/imp_op.hxx sc/source/filter/inc/imp_op.hxx
-index 93724f6..8603cc6 100644
---- sc/source/filter/inc/imp_op.hxx
-+++ sc/source/filter/inc/imp_op.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_IMP_OP_HXX
- #define SC_IMP_OP_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include <tools/gen.hxx>
- #include "xiroot.hxx"
- #include "xistream.hxx"
-diff --git sc/source/filter/inc/xcl97esc.hxx sc/source/filter/inc/xcl97esc.hxx
-index e40e3f1..6c57fb8 100644
---- sc/source/filter/inc/xcl97esc.hxx
-+++ sc/source/filter/inc/xcl97esc.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XCL97ESC_HXX
- #define SC_XCL97ESC_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include <memory>
- #include <tools/table.hxx>
- #include <tools/stack.hxx>
-diff --git sc/source/filter/inc/xcl97rec.hxx sc/source/filter/inc/xcl97rec.hxx
-index 299b80d..9c5ec1e 100644
---- sc/source/filter/inc/xcl97rec.hxx
-+++ sc/source/filter/inc/xcl97rec.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XCL97REC_HXX
- #define SC_XCL97REC_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include "excrecds.hxx"
- #include "xcl97esc.hxx"
- #include "xlstyle.hxx"
-diff --git sc/source/filter/inc/xechart.hxx sc/source/filter/inc/xechart.hxx
-index 67f5f69..296645d 100644
---- sc/source/filter/inc/xechart.hxx
-+++ sc/source/filter/inc/xechart.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XECHART_HXX
- #define SC_XECHART_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include <tools/gen.hxx>
- #include "xerecord.hxx"
- #include "xlchart.hxx"
-diff --git sc/source/filter/inc/xecontent.hxx sc/source/filter/inc/xecontent.hxx
-index 4783814..026b64e 100644
---- sc/source/filter/inc/xecontent.hxx
-+++ sc/source/filter/inc/xecontent.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XECONTENT_HXX
- #define SC_XECONTENT_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include "rangelst.hxx"
- #include "xlcontent.hxx"
- #include "xladdress.hxx"
-diff --git sc/source/filter/inc/xeescher.hxx sc/source/filter/inc/xeescher.hxx
-index 259ab97..05a6576 100644
---- sc/source/filter/inc/xeescher.hxx
-+++ sc/source/filter/inc/xeescher.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XEESCHER_HXX
- #define SC_XEESCHER_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include <vcl/graph.hxx>
- #include <filter/msfilter/escherex.hxx>
- #include "xcl97rec.hxx"
-diff --git sc/source/filter/inc/xehelper.hxx sc/source/filter/inc/xehelper.hxx
-index 8e4094a..4a1552f 100644
---- sc/source/filter/inc/xehelper.hxx
-+++ sc/source/filter/inc/xehelper.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XEHELPER_HXX
- #define SC_XEHELPER_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include "xladdress.hxx"
- #include "xeroot.hxx"
- #include "xestring.hxx"
-diff --git sc/source/filter/inc/xelink.hxx sc/source/filter/inc/xelink.hxx
-index c70e496..84cf2ec 100644
---- sc/source/filter/inc/xelink.hxx
-+++ sc/source/filter/inc/xelink.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XELINK_HXX
- #define SC_XELINK_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include "markdata.hxx"
- #include "xllink.hxx"
- #include "xerecord.hxx"
-diff --git sc/source/filter/inc/xename.hxx sc/source/filter/inc/xename.hxx
-index d80b51f..92e330a 100644
---- sc/source/filter/inc/xename.hxx
-+++ sc/source/filter/inc/xename.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XENAME_HXX
- #define SC_XENAME_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include "xerecord.hxx"
- #include "xlname.hxx"
- #include "xlformula.hxx"
-diff --git sc/source/filter/inc/xepage.hxx sc/source/filter/inc/xepage.hxx
-index 1e96c98..b7c9e95 100644
---- sc/source/filter/inc/xepage.hxx
-+++ sc/source/filter/inc/xepage.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XEPAGE_HXX
- #define SC_XEPAGE_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include "xerecord.hxx"
- #include "xlpage.hxx"
- #include "xeroot.hxx"
-diff --git sc/source/filter/inc/xepivot.hxx sc/source/filter/inc/xepivot.hxx
-index 8841a71..6489813 100644
---- sc/source/filter/inc/xepivot.hxx
-+++ sc/source/filter/inc/xepivot.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XEPIVOT_HXX
- #define SC_XEPIVOT_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include <map>
- #include "xerecord.hxx"
- #include "xlpivot.hxx"
-diff --git sc/source/filter/inc/xerecord.hxx sc/source/filter/inc/xerecord.hxx
-index 6e1f7e7..e8c7c63 100644
---- sc/source/filter/inc/xerecord.hxx
-+++ sc/source/filter/inc/xerecord.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XERECORD_HXX
- #define SC_XERECORD_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include "xlconst.hxx"
- #include "xestream.hxx"
- 
-diff --git sc/source/filter/inc/xeroot.hxx sc/source/filter/inc/xeroot.hxx
-index f9d3a6a..e3717e1 100644
---- sc/source/filter/inc/xeroot.hxx
-+++ sc/source/filter/inc/xeroot.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XEROOT_HXX
- #define SC_XEROOT_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include "xlroot.hxx"
- 
- // Forward declarations of objects in public use ==============================
-diff --git sc/source/filter/inc/xestream.hxx sc/source/filter/inc/xestream.hxx
-index a8fae8f..a0ae4b0 100644
---- sc/source/filter/inc/xestream.hxx
-+++ sc/source/filter/inc/xestream.hxx
-@@ -30,6 +30,10 @@
- #ifndef SC_XESTREAM_HXX
- #define SC_XESTREAM_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include <map>
- #include <stack>
- #include <string>
-diff --git sc/source/filter/inc/xestyle.hxx sc/source/filter/inc/xestyle.hxx
-index 81caa30..972edda 100644
---- sc/source/filter/inc/xestyle.hxx
-+++ sc/source/filter/inc/xestyle.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XESTYLE_HXX
- #define SC_XESTYLE_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include <map>
- #include <tools/mempool.hxx>
- #include <tools/string.hxx>
-diff --git sc/source/filter/inc/xetable.hxx sc/source/filter/inc/xetable.hxx
-index dcb7823..b8ea13c 100644
---- sc/source/filter/inc/xetable.hxx
-+++ sc/source/filter/inc/xetable.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XETABLE_HXX
- #define SC_XETABLE_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include "xltable.hxx"
- 
- #include <deque>
-diff --git sc/source/filter/inc/xeview.hxx sc/source/filter/inc/xeview.hxx
-index 8373f8f..a9ae55d 100644
---- sc/source/filter/inc/xeview.hxx
-+++ sc/source/filter/inc/xeview.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XEVIEW_HXX
- #define SC_XEVIEW_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include "xerecord.hxx"
- #include "xlview.hxx"
- #include "xeroot.hxx"
-diff --git sc/source/filter/inc/xistyle.hxx sc/source/filter/inc/xistyle.hxx
-index 1d3047e..3cd7b89 100644
---- sc/source/filter/inc/xistyle.hxx
-+++ sc/source/filter/inc/xistyle.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XISTYLE_HXX
- #define SC_XISTYLE_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include <list>
- #include <tools/mempool.hxx>
- #include "rangelst.hxx"
-diff --git sc/source/filter/inc/xladdress.hxx sc/source/filter/inc/xladdress.hxx
-index b8705ae..e3b3c41 100644
---- sc/source/filter/inc/xladdress.hxx
-+++ sc/source/filter/inc/xladdress.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XLADDRESS_HXX
- #define SC_XLADDRESS_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include <vector>
- #include "address.hxx"
- 
-diff --git sc/source/filter/inc/xlescher.hxx sc/source/filter/inc/xlescher.hxx
-index d2b551d..92eebd2 100644
---- sc/source/filter/inc/xlescher.hxx
-+++ sc/source/filter/inc/xlescher.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XLESCHER_HXX
- #define SC_XLESCHER_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include <vcl/mapunit.hxx>
- #include "fapihelper.hxx"
- #include "xladdress.hxx"
-diff --git sc/source/filter/inc/xlpivot.hxx sc/source/filter/inc/xlpivot.hxx
-index b79218c..9698f95 100644
---- sc/source/filter/inc/xlpivot.hxx
-+++ sc/source/filter/inc/xlpivot.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XLPIVOT_HXX
- #define SC_XLPIVOT_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include <com/sun/star/sheet/GeneralFunction.hpp>
- #include <com/sun/star/sheet/DataPilotFieldOrientation.hpp>
- #include <com/sun/star/sheet/DataPilotFieldSortMode.hpp>
-diff --git sc/source/filter/inc/xlview.hxx sc/source/filter/inc/xlview.hxx
-index 8961bb4..b165402 100644
---- sc/source/filter/inc/xlview.hxx
-+++ sc/source/filter/inc/xlview.hxx
-@@ -28,6 +28,10 @@
- #ifndef SC_XLVIEW_HXX
- #define SC_XLVIEW_HXX
- 
-+#ifdef XLSX_GUARD
-+#error Should not include this from sc/source/filter/xlsx code
-+#endif
-+
- #include <map>
- #include <tools/color.hxx>
- #include "ftools.hxx"
-diff --git sc/source/filter/xlsx/makefile.mk sc/source/filter/xlsx/makefile.mk
-index c59deea..68f1ddd 100644
---- sc/source/filter/xlsx/makefile.mk
-+++ sc/source/filter/xlsx/makefile.mk
-@@ -48,6 +48,8 @@ PROJECTPCHSOURCE=..\pch\filt_pch
- 
- # --- Files --------------------------------------------------------
- 
-+CDEFS+=-DXLSX_GUARD
-+
- SLOFILES =	\
-         $(SLO)$/xlsx-excdoc.obj					\
-         $(SLO)$/xlsx-excrecds.obj				\
--- 
-1.7.0.1
-
diff --git a/patches/dev300/xlsx-filter-as-a-separate-lib-xls-copy.diff b/patches/dev300/xlsx-filter-as-a-separate-lib-xls-copy.diff
deleted file mode 100644
index c0d74c1..0000000
--- a/patches/dev300/xlsx-filter-as-a-separate-lib-xls-copy.diff
+++ /dev/null
@@ -1,50393 +0,0 @@
-From dbb4af9955c283fe959615ab76b4eb597985fa9c Mon Sep 17 00:00:00 2001
-From: Jan Holesovsky <kendy at suse.cz>
-Date: Fri, 14 May 2010 17:05:53 +0200
-Subject: [PATCH 609/768] xlsx-filter-as-a-separate-lib-xls-copy.diff
-
----
- sc/source/filter/xlsx/XclExpChangeTrack.hxx      |  643 +++++
- sc/source/filter/xlsx/excdoc.hxx                 |  122 +
- sc/source/filter/xlsx/excrecds.hxx               |  508 ++++
- sc/source/filter/xlsx/exp_op.hxx                 |  148 +
- sc/source/filter/xlsx/imp_op.hxx                 |  206 ++
- sc/source/filter/xlsx/xcl97esc.hxx               |  266 ++
- sc/source/filter/xlsx/xcl97rec.hxx               |  656 +++++
- sc/source/filter/xlsx/xechart.hxx                | 1216 +++++++++
- sc/source/filter/xlsx/xecontent.hxx              |  356 +++
- sc/source/filter/xlsx/xeescher.hxx               |  270 ++
- sc/source/filter/xlsx/xeformula.hxx              |   99 +
- sc/source/filter/xlsx/xehelper.hxx               |  453 ++++
- sc/source/filter/xlsx/xelink.hxx                 |  223 ++
- sc/source/filter/xlsx/xename.hxx                 |   93 +
- sc/source/filter/xlsx/xepage.hxx                 |  139 +
- sc/source/filter/xlsx/xepivot.hxx                |  488 ++++
- sc/source/filter/xlsx/xerecord.hxx               |  424 +++
- sc/source/filter/xlsx/xeroot.hxx                 |  172 ++
- sc/source/filter/xlsx/xestream.hxx               |  357 +++
- sc/source/filter/xlsx/xestyle.hxx                |  762 ++++++
- sc/source/filter/xlsx/xetable.hxx                | 1091 ++++++++
- sc/source/filter/xlsx/xeview.hxx                 |  182 ++
- sc/source/filter/xlsx/xistyle.hxx                |  685 +++++
- sc/source/filter/xlsx/xladdress.hxx              |  199 ++
- sc/source/filter/xlsx/xlescher.hxx               |  453 ++++
- sc/source/filter/xlsx/xlpivot.hxx                |  819 ++++++
- sc/source/filter/xlsx/xlsx-XclExpChangeTrack.cxx | 1250 +++++++++
- sc/source/filter/xlsx/xlsx-excdoc.cxx            |  850 ++++++
- sc/source/filter/xlsx/xlsx-excrecds.cxx          | 1052 ++++++++
- sc/source/filter/xlsx/xlsx-exctools.cxx          |  438 +++
- sc/source/filter/xlsx/xlsx-expop2.cxx            |  227 ++
- sc/source/filter/xlsx/xlsx-fontbuff.cxx          |  163 ++
- sc/source/filter/xlsx/xlsx-frmbase.cxx           |  294 ++
- sc/source/filter/xlsx/xlsx-namebuff.cxx          |  345 +++
- sc/source/filter/xlsx/xlsx-tokstack.cxx          |  890 ++++++
- sc/source/filter/xlsx/xlsx-xcl97esc.cxx          |  619 +++++
- sc/source/filter/xlsx/xlsx-xcl97rec.cxx          | 1591 +++++++++++
- sc/source/filter/xlsx/xlsx-xechart.cxx           | 3140 ++++++++++++++++++++++
- sc/source/filter/xlsx/xlsx-xecontent.cxx         | 1477 ++++++++++
- sc/source/filter/xlsx/xlsx-xeescher.cxx          | 1081 ++++++++
- sc/source/filter/xlsx/xlsx-xeformula.cxx         | 2648 ++++++++++++++++++
- sc/source/filter/xlsx/xlsx-xehelper.cxx          | 1146 ++++++++
- sc/source/filter/xlsx/xlsx-xelink.cxx            | 2438 +++++++++++++++++
- sc/source/filter/xlsx/xlsx-xename.cxx            |  793 ++++++
- sc/source/filter/xlsx/xlsx-xepage.cxx            |  416 +++
- sc/source/filter/xlsx/xlsx-xepivot.cxx           | 1807 +++++++++++++
- sc/source/filter/xlsx/xlsx-xerecord.cxx          |  311 +++
- sc/source/filter/xlsx/xlsx-xeroot.cxx            |  269 ++
- sc/source/filter/xlsx/xlsx-xestream.cxx          | 1035 +++++++
- sc/source/filter/xlsx/xlsx-xestring.cxx          |  658 +++++
- sc/source/filter/xlsx/xlsx-xestyle.cxx           | 2873 ++++++++++++++++++++
- sc/source/filter/xlsx/xlsx-xetable.cxx           | 2587 ++++++++++++++++++
- sc/source/filter/xlsx/xlsx-xeview.cxx            |  540 ++++
- sc/source/filter/xlsx/xlsx-xladdress.cxx         |  163 ++
- sc/source/filter/xlsx/xlsx-xlchart.cxx           | 1352 ++++++++++
- sc/source/filter/xlsx/xlsx-xlescher.cxx          |  378 +++
- sc/source/filter/xlsx/xlsx-xlformula.cxx         |  758 ++++++
- sc/source/filter/xlsx/xlsx-xlpage.cxx            |  250 ++
- sc/source/filter/xlsx/xlsx-xlpivot.cxx           | 1033 +++++++
- sc/source/filter/xlsx/xlsx-xlroot.cxx            |  383 +++
- sc/source/filter/xlsx/xlsx-xlstyle.cxx           | 1773 ++++++++++++
- sc/source/filter/xlsx/xlsx-xltoolbar.cxx         |  431 +++
- sc/source/filter/xlsx/xlsx-xltools.cxx           |  693 +++++
- sc/source/filter/xlsx/xlsx-xltracer.cxx          |  272 ++
- sc/source/filter/xlsx/xlsx-xlview.cxx            |  117 +
- sc/source/filter/xlsx/xltoolbar.hxx              |   95 +
- sc/source/filter/xlsx/xlview.hxx                 |  180 ++
- 67 files changed, 49846 insertions(+), 0 deletions(-)
- create mode 100644 sc/source/filter/xlsx/XclExpChangeTrack.hxx
- create mode 100644 sc/source/filter/xlsx/excdoc.hxx
- create mode 100644 sc/source/filter/xlsx/excrecds.hxx
- create mode 100644 sc/source/filter/xlsx/exp_op.hxx
- create mode 100644 sc/source/filter/xlsx/imp_op.hxx
- create mode 100644 sc/source/filter/xlsx/xcl97esc.hxx
- create mode 100644 sc/source/filter/xlsx/xcl97rec.hxx
- create mode 100644 sc/source/filter/xlsx/xechart.hxx
- create mode 100644 sc/source/filter/xlsx/xecontent.hxx
- create mode 100644 sc/source/filter/xlsx/xeescher.hxx
- create mode 100644 sc/source/filter/xlsx/xeformula.hxx
- create mode 100644 sc/source/filter/xlsx/xehelper.hxx
- create mode 100644 sc/source/filter/xlsx/xelink.hxx
- create mode 100644 sc/source/filter/xlsx/xename.hxx
- create mode 100644 sc/source/filter/xlsx/xepage.hxx
- create mode 100644 sc/source/filter/xlsx/xepivot.hxx
- create mode 100644 sc/source/filter/xlsx/xerecord.hxx
- create mode 100644 sc/source/filter/xlsx/xeroot.hxx
- create mode 100644 sc/source/filter/xlsx/xestream.hxx
- create mode 100644 sc/source/filter/xlsx/xestyle.hxx
- create mode 100644 sc/source/filter/xlsx/xetable.hxx
- create mode 100644 sc/source/filter/xlsx/xeview.hxx
- create mode 100644 sc/source/filter/xlsx/xistyle.hxx
- create mode 100644 sc/source/filter/xlsx/xladdress.hxx
- create mode 100644 sc/source/filter/xlsx/xlescher.hxx
- create mode 100644 sc/source/filter/xlsx/xlpivot.hxx
- create mode 100644 sc/source/filter/xlsx/xlsx-XclExpChangeTrack.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-excdoc.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-excrecds.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-exctools.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-expop2.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-fontbuff.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-frmbase.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-namebuff.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-tokstack.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xcl97esc.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xcl97rec.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xechart.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xecontent.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xeescher.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xeformula.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xehelper.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xelink.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xename.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xepage.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xepivot.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xerecord.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xeroot.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xestream.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xestring.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xestyle.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xetable.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xeview.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xladdress.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xlchart.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xlescher.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xlformula.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xlpage.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xlpivot.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xlroot.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xlstyle.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xltoolbar.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xltools.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xltracer.cxx
- create mode 100644 sc/source/filter/xlsx/xlsx-xlview.cxx
- create mode 100644 sc/source/filter/xlsx/xltoolbar.hxx
- create mode 100644 sc/source/filter/xlsx/xlview.hxx
-
-diff --git sc/source/filter/xlsx/XclExpChangeTrack.hxx sc/source/filter/xlsx/XclExpChangeTrack.hxx
-new file mode 100644
-index 0000000..0e55090
---- /dev/null
-+++ sc/source/filter/xlsx/XclExpChangeTrack.hxx
-@@ -0,0 +1,643 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ *
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: XclExpChangeTrack.hxx,v $
-+ * $Revision: 1.20 $
-+ *
-+ * This file is part of OpenOffice.org.
-+ *
-+ * OpenOffice.org is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU Lesser General Public License version 3
-+ * only, as published by the Free Software Foundation.
-+ *
-+ * OpenOffice.org is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU Lesser General Public License version 3 for more details
-+ * (a copy is included in the LICENSE file that accompanied this code).
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * version 3 along with OpenOffice.org.  If not, see
-+ * <http://www.openoffice.org/license.html>
-+ * for a copy of the LGPLv3 License.
-+ *
-+ ************************************************************************/
-+
-+#ifndef SC_XCLEXPCHANGETRACK_HXX
-+#define SC_XCLEXPCHANGETRACK_HXX
-+
-+#include <tools/debug.hxx>
-+#include <tools/datetime.hxx>
-+#include <rtl/uuid.h>
-+#include "bigrange.hxx"
-+#include "chgtrack.hxx"
-+#include "xelink.hxx"
-+#include "ftools.hxx"
-+#include "excrecds.hxx"
-+
-+//___________________________________________________________________
-+
-+class ScBaseCell;
-+
-+//___________________________________________________________________
-+// XclExpUserBView - one UserBView record for each user
-+
-+class XclExpUserBView : public ExcRecord
-+{
-+private:
-+    XclExpString                sUsername;
-+    sal_uInt8					aGUID[ 16 ];
-+
-+    virtual void				SaveCont( XclExpStream& rStrm );
-+
-+public:
-+                                XclExpUserBView( const String& rUsername, const sal_uInt8* pGUID );
-+
-+    inline const sal_uInt8*		GetGUID() const { return aGUID; }
-+
-+    virtual UINT16				GetNum() const;
-+    virtual sal_Size            GetLen() const;
-+};
-+
-+//___________________________________________________________________
-+// XclExpUserBViewList - list of UserBView records
-+
-+class XclExpUserBViewList : public ExcEmptyRec, private List
-+{
-+private:
-+    inline XclExpUserBView*		_First()	{ return (XclExpUserBView*) List::First(); }
-+    inline XclExpUserBView*		_Next()		{ return (XclExpUserBView*) List::Next(); }
-+
-+public:
-+                                XclExpUserBViewList( const ScChangeTrack& rChangeTrack );
-+    virtual						~XclExpUserBViewList();
-+
-+    inline const XclExpUserBView* First()	{ return (const XclExpUserBView*) List::First(); }
-+    inline const XclExpUserBView* Next()	{ return (const XclExpUserBView*) List::Next(); }
-+
-+    virtual void				Save( XclExpStream& rStrm );
-+};
-+
-+//___________________________________________________________________
-+// XclExpUsersViewBegin - begin of view block (one per sheet)
-+
-+class XclExpUsersViewBegin : public ExcRecord
-+{
-+private:
-+    sal_uInt8					aGUID[ 16 ];
-+    sal_uInt32					nCurrTab;
-+
-+    virtual void				SaveCont( XclExpStream& rStrm );
-+
-+public:
-+                                XclExpUsersViewBegin( const sal_uInt8* pGUID, sal_uInt32 nTab );
-+    virtual UINT16				GetNum() const;
-+    virtual sal_Size            GetLen() const;
-+};
-+
-+//___________________________________________________________________
-+// XclExpUsersViewEnd - end of view block (one per sheet)
-+
-+class XclExpUsersViewEnd : public ExcRecord
-+{
-+private:
-+    virtual void				SaveCont( XclExpStream& rStrm );
-+
-+public:
-+    virtual UINT16				GetNum() const;
-+    virtual sal_Size            GetLen() const;
-+};
-+
-+//___________________________________________________________________
-+// dummy record for "User Names" stream
-+
-+class XclExpChTr0x0191 : public ExcRecord
-+{
-+private:
-+    virtual void				SaveCont( XclExpStream& rStrm );
-+
-+public:
-+    virtual UINT16				GetNum() const;
-+    virtual sal_Size            GetLen() const;
-+};
-+
-+//___________________________________________________________________
-+// dummy record for "User Names" stream
-+
-+class XclExpChTr0x0198 : public ExcRecord
-+{
-+private:
-+    virtual void				SaveCont( XclExpStream& rStrm );
-+
-+public:
-+    virtual UINT16				GetNum() const;
-+    virtual sal_Size            GetLen() const;
-+};
-+
-+//___________________________________________________________________
-+// dummy record for "User Names" stream
-+
-+class XclExpChTr0x0192 : public ExcRecord
-+{
-+private:
-+    virtual void				SaveCont( XclExpStream& rStrm );
-+
-+public:
-+    virtual UINT16				GetNum() const;
-+    virtual sal_Size            GetLen() const;
-+};
-+
-+//___________________________________________________________________
-+// dummy record for "User Names" stream
-+
-+class XclExpChTr0x0197 : public ExcRecord
-+{
-+private:
-+    virtual void				SaveCont( XclExpStream& rStrm );
-+
-+public:
-+    virtual UINT16				GetNum() const;
-+    virtual sal_Size            GetLen() const;
-+};
-+
-+//___________________________________________________________________
-+// dummy record without content
-+
-+class XclExpChTrEmpty : public ExcRecord
-+{
-+private:
-+    UINT16						nRecNum;
-+
-+public:
-+    inline						XclExpChTrEmpty( UINT16 nNum ) : nRecNum( nNum ) {}
-+    virtual						~XclExpChTrEmpty();
-+
-+    virtual UINT16				GetNum() const;
-+    virtual sal_Size            GetLen() const;
-+};
-+
-+//___________________________________________________________________
-+// dummy record for "Revision Log" stream
-+
-+class XclExpChTr0x0195 : public ExcRecord
-+{
-+private:
-+    virtual void				SaveCont( XclExpStream& rStrm );
-+
-+public:
-+    virtual						~XclExpChTr0x0195();
-+
-+    virtual UINT16				GetNum() const;
-+    virtual sal_Size            GetLen() const;
-+};
-+
-+//___________________________________________________________________
-+// dummy record for "Revision Log" stream
-+
-+class XclExpChTr0x0194 : public ExcRecord
-+{
-+private:
-+    XclExpString                sUsername;
-+    DateTime					aDateTime;
-+
-+    virtual void				SaveCont( XclExpStream& rStrm );
-+
-+public:
-+    inline						XclExpChTr0x0194( const ScChangeTrack& rChangeTrack );
-+    virtual						~XclExpChTr0x0194();
-+
-+    virtual UINT16				GetNum() const;
-+    virtual sal_Size            GetLen() const;
-+};
-+
-+inline XclExpChTr0x0194::XclExpChTr0x0194( const ScChangeTrack& rChangeTrack ) :
-+    sUsername( rChangeTrack.GetUser() ),
-+    aDateTime( rChangeTrack.GetFixDateTime() )
-+{
-+}
-+
-+//___________________________________________________________________
-+// XclExpChTrHeader - header record, includes action count
-+
-+class XclExpChTrHeader : public ExcRecord
-+{
-+private:
-+    sal_uInt8					aGUID[ 16 ];
-+    sal_uInt32					nCount;
-+
-+    virtual void				SaveCont( XclExpStream& rStrm );
-+
-+public:
-+    inline						XclExpChTrHeader() : nCount( 0 ) {}
-+    virtual						~XclExpChTrHeader();
-+
-+    inline void					SetGUID( const sal_uInt8* pGUID )	{ memcpy( aGUID, pGUID, 16 ); }
-+    inline void					SetCount( sal_uInt32 nNew )			{ nCount = nNew; }
-+
-+    virtual UINT16				GetNum() const;
-+    virtual sal_Size            GetLen() const;
-+};
-+
-+//___________________________________________________________________
-+// XclExpChTrInfo - header of action group of a user
-+
-+class XclExpChTrInfo : public ExcRecord
-+{
-+private:
-+    XclExpString                sUsername;
-+    DateTime					aDateTime;
-+    sal_uInt8					aGUID[ 16 ];
-+
-+    virtual void				SaveCont( XclExpStream& rStrm );
-+
-+public:
-+    inline						XclExpChTrInfo(
-+                                    const String& rUsername,
-+                                    const DateTime& rDateTime,
-+                                    const sal_uInt8* pGUID );
-+    virtual						~XclExpChTrInfo();
-+
-+    virtual UINT16				GetNum() const;
-+    virtual sal_Size            GetLen() const;
-+};
-+
-+inline XclExpChTrInfo::XclExpChTrInfo( const String& rUsername, const DateTime& rDateTime, const sal_uInt8* pGUID ) :
-+    sUsername( rUsername ),
-+    aDateTime( rDateTime )
-+{
-+    memcpy( aGUID, pGUID, 16 );
-+}
-+
-+//___________________________________________________________________
-+// XclExpChTrTabIdBuffer - buffer for tab id's
-+
-+class XclExpChTrTabIdBuffer
-+{
-+private:
-+    sal_uInt16*					pBuffer;
-+    sal_uInt16*					pLast;
-+    sal_uInt16					nBufSize;
-+    sal_uInt16					nLastId;
-+
-+public:
-+                                XclExpChTrTabIdBuffer( sal_uInt16 nCount );
-+                                XclExpChTrTabIdBuffer( const XclExpChTrTabIdBuffer& rCopy );
-+                                ~XclExpChTrTabIdBuffer();
-+
-+    void						InitFill( sal_uInt16 nIndex );
-+    void						InitFillup();
-+
-+    sal_uInt16					GetId( sal_uInt16 nIndex ) const;
-+    void						Remove();
-+
-+    inline sal_uInt16			GetBufferCount() const
-+                                    { return static_cast< sal_uInt16 >( (pLast - pBuffer) + 1 ); }
-+    inline void					GetBufferCopy( sal_uInt16* pDest ) const
-+                                    { memcpy( pDest, pBuffer, sizeof(sal_uInt16) * GetBufferCount() ); }
-+};
-+
-+//___________________________________________________________________
-+// XclExpChTrTabIdBufferList
-+
-+class XclExpChTrTabIdBufferList : private List
-+{
-+private:
-+    inline XclExpChTrTabIdBuffer* First()	{ return (XclExpChTrTabIdBuffer*) List::First(); }
-+    inline XclExpChTrTabIdBuffer* Next()	{ return (XclExpChTrTabIdBuffer*) List::Next(); }
-+
-+public:
-+    virtual						~XclExpChTrTabIdBufferList();
-+
-+    inline void					Append( XclExpChTrTabIdBuffer* pNew )
-+                                    { List::Insert( pNew, LIST_APPEND ); }
-+};
-+
-+//___________________________________________________________________
-+// XclExpChTrTabId - tab id record
-+
-+class XclExpChTrTabId : public ExcRecord
-+{
-+private:
-+    sal_uInt16*					pBuffer;
-+    sal_uInt16					nTabCount;
-+
-+    inline void					Clear() { if( pBuffer ) delete[] pBuffer; pBuffer = NULL; }
-+
-+    virtual void				SaveCont( XclExpStream& rStrm );
-+
-+public:
-+    inline						XclExpChTrTabId( sal_uInt16 nCount ) :
-+                                    pBuffer( NULL ), nTabCount( nCount ) {}
-+                                XclExpChTrTabId( const XclExpChTrTabIdBuffer& rBuffer );
-+    virtual						~XclExpChTrTabId();
-+
-+    void						Copy( const XclExpChTrTabIdBuffer& rBuffer );
-+
-+    virtual UINT16				GetNum() const;
-+    virtual sal_Size            GetLen() const;
-+};
-+
-+//___________________________________________________________________
-+// XclExpChTrAction - base class for action records
-+
-+class XclExpChTrAction : public ExcRecord
-+{
-+private:
-+    String						sUsername;
-+    DateTime					aDateTime;
-+    sal_uInt32					nIndex;			// action number
-+    XclExpChTrAction*			pAddAction;		// additional record for this action
-+    sal_Bool					bAccepted;
-+
-+protected:
-+    const XclExpTabInfo&        rTabInfo;       // for table num export (sc num -> xcl num)
-+    const XclExpChTrTabIdBuffer& rIdBuffer;		// for table num export (xcl num -> tab id)
-+    sal_uInt32					nLength;		// this is not the record size
-+    sal_uInt16					nOpCode;		// EXC_CHTR_OP_***
-+    sal_Bool					bForceInfo;
-+
-+                                XclExpChTrAction( const XclExpChTrAction& rCopy );
-+
-+    void						SetAddAction( XclExpChTrAction* pAction );
-+    void						AddDependentContents(
-+                                    const ScChangeAction& rAction,
-+                                    const XclExpRoot& rRoot,
-+                                    ScChangeTrack& rChangeTrack );
-+
-+    inline void					Write2DAddress( XclExpStream& rStrm, const ScAddress& rAddress ) const;
-+    inline void					Write2DRange( XclExpStream& rStrm, const ScRange& rRange ) const;
-+    inline void					WriteTabId( XclExpStream& rStrm, SCTAB nTabId ) const;
-+
-+                                // save header data, call SaveActionData()
-+    virtual void				SaveCont( XclExpStream& rStrm );
-+    inline sal_Size             GetHeaderByteCount() const  { return 12; }
-+
-+                                // overload to save action data without header, called by SaveCont()
-+    virtual void				SaveActionData( XclExpStream& rStrm ) const = 0;
-+                                // overload to get action size without header, called by GetLen()
-+    virtual sal_Size            GetActionByteCount() const = 0;
-+
-+                                // do something before writing the record
-+    virtual void				PrepareSaveAction( XclExpStream& rStrm ) const;
-+                                // do something after writing the record
-+    virtual void				CompleteSaveAction( XclExpStream& rStrm ) const;
-+
-+public:
-+                                XclExpChTrAction(
-+                                    const ScChangeAction& rAction,
-+                                    const XclExpRoot& rRoot,
-+                                    const XclExpChTrTabIdBuffer& rTabIdBuffer,
-+                                    sal_uInt16 nNewOpCode = EXC_CHTR_OP_UNKNOWN );
-+    virtual						~XclExpChTrAction();
-+
-+    inline const String&		GetUsername() const				{ return sUsername; }
-+    inline const DateTime&		GetDateTime() const				{ return aDateTime; }
-+    inline const XclExpChTrTabIdBuffer& GetTabIdBuffer() const	{ return rIdBuffer; }
-+    inline sal_Bool				ForceInfoRecord() const			{ return bForceInfo; }
-+
-+                                // set own index & return new index
-+                                // could be overloaded to use more indexes per action
-+    virtual void				SetIndex( sal_uInt32& rIndex );
-+
-+    virtual void				Save( XclExpStream& rStrm );
-+    virtual sal_Size            GetLen() const;
-+};
-+
-+inline void XclExpChTrAction::Write2DAddress( XclExpStream& rStrm, const ScAddress& rAddress ) const
-+{
-+    rStrm	<< (sal_uInt16)	rAddress.Row()
-+            << (sal_uInt16)	rAddress.Col();
-+}
-+
-+inline void XclExpChTrAction::Write2DRange( XclExpStream& rStrm, const ScRange& rRange ) const
-+{
-+    rStrm	<< (sal_uInt16)	rRange.aStart.Row()
-+            << (sal_uInt16)	rRange.aEnd.Row()
-+            << (sal_uInt16)	rRange.aStart.Col()
-+            << (sal_uInt16)	rRange.aEnd.Col();
-+}
-+
-+inline void XclExpChTrAction::WriteTabId( XclExpStream& rStrm, SCTAB nTab ) const
-+{
-+    rStrm << rIdBuffer.GetId( rTabInfo.GetXclTab( nTab ) );
-+}
-+
-+//___________________________________________________________________
-+// XclExpChTrData - cell content itself
-+
-+struct XclExpChTrData
-+{
-+    XclExpString*               pString;
-+    XclTokenArrayRef            mxTokArr;
-+    XclExpRefLog                maRefLog;
-+    double						fValue;
-+    sal_Int32					nRKValue;
-+    sal_uInt16					nType;
-+    sal_Size                    nSize;
-+
-+                                XclExpChTrData();
-+                                ~XclExpChTrData();
-+    void						Clear();
-+
-+    void						WriteFormula(
-+                                    XclExpStream& rStrm,
-+                                    const XclExpChTrTabIdBuffer& rTabIdBuffer );
-+    void						Write(
-+                                    XclExpStream& rStrm,
-+                                    const XclExpChTrTabIdBuffer& rTabIdBuffer );
-+};
-+
-+//___________________________________________________________________
-+// XclExpChTrCellContent - changed cell content
-+
-+class XclExpChTrCellContent : public XclExpChTrAction, protected XclExpRoot
-+{
-+private:
-+    XclExpChTrData*				pOldData;
-+    XclExpChTrData*				pNewData;
-+    sal_uInt16					nOldLength;		// this is not the record size
-+
-+    void						MakeEmptyChTrData( XclExpChTrData*& rpData );
-+
-+protected:
-+    ScAddress					aPosition;
-+
-+    void						GetCellData(
-+                                    const ScBaseCell* pScCell,
-+                                    XclExpChTrData*& rpData,
-+                                    sal_uInt32& rXclLength1,
-+                                    sal_uInt16& rXclLength2 );
-+
-+    virtual void				SaveActionData( XclExpStream& rStrm ) const;
-+
-+public:
-+                                XclExpChTrCellContent(
-+                                    const ScChangeActionContent& rAction,
-+                                    const XclExpRoot& rRoot,
-+                                    const XclExpChTrTabIdBuffer& rTabIdBuffer );
-+    virtual						~XclExpChTrCellContent();
-+
-+    virtual UINT16				GetNum() const;
-+    virtual sal_Size            GetActionByteCount() const;
-+};
-+
-+//___________________________________________________________________
-+// XclExpChTrInsert - insert/delete columns/rows
-+
-+class XclExpChTrInsert : public XclExpChTrAction
-+{
-+protected:
-+    ScRange						aRange;
-+
-+                                XclExpChTrInsert( const XclExpChTrInsert& rCopy ) :
-+                                    XclExpChTrAction( rCopy ), aRange( rCopy.aRange ) {}
-+
-+    virtual void				SaveActionData( XclExpStream& rStrm ) const;
-+    virtual void				PrepareSaveAction( XclExpStream& rStrm ) const;
-+    virtual void				CompleteSaveAction( XclExpStream& rStrm ) const;
-+
-+public:
-+                                XclExpChTrInsert(
-+                                    const ScChangeAction& rAction,
-+                                    const XclExpRoot& rRoot,
-+                                    const XclExpChTrTabIdBuffer& rTabIdBuffer,
-+                                    ScChangeTrack& rChangeTrack );
-+    virtual						~XclExpChTrInsert();
-+
-+    virtual UINT16				GetNum() const;
-+    virtual sal_Size            GetActionByteCount() const;
-+};
-+
-+//___________________________________________________________________
-+// XclExpChTrInsertTab - insert table
-+
-+class XclExpChTrInsertTab : public XclExpChTrAction, protected XclExpRoot
-+{
-+private:
-+    SCTAB					nTab;
-+
-+protected:
-+    virtual void				SaveActionData( XclExpStream& rStrm ) const;
-+
-+public:
-+                                XclExpChTrInsertTab(
-+                                    const ScChangeAction& rAction,
-+                                    const XclExpRoot& rRoot,
-+                                    const XclExpChTrTabIdBuffer& rTabIdBuffer );
-+    virtual						~XclExpChTrInsertTab();
-+
-+    virtual UINT16				GetNum() const;
-+    virtual sal_Size            GetActionByteCount() const;
-+};
-+
-+//___________________________________________________________________
-+// XclExpChTrMoveRange - move cell range
-+
-+class XclExpChTrMoveRange : public XclExpChTrAction
-+{
-+protected:
-+    ScRange						aSourceRange;
-+    ScRange						aDestRange;
-+
-+    virtual void				SaveActionData( XclExpStream& rStrm ) const;
-+    virtual void				PrepareSaveAction( XclExpStream& rStrm ) const;
-+    virtual void				CompleteSaveAction( XclExpStream& rStrm ) const;
-+
-+public:
-+                                XclExpChTrMoveRange(
-+                                    const ScChangeActionMove& rAction,
-+                                    const XclExpRoot& rRoot,
-+                                    const XclExpChTrTabIdBuffer& rTabIdBuffer,
-+                                    ScChangeTrack& rChangeTrack );
-+    virtual						~XclExpChTrMoveRange();
-+
-+    virtual UINT16				GetNum() const;
-+    virtual sal_Size            GetActionByteCount() const;
-+};
-+
-+//___________________________________________________________________
-+// XclExpChTr0x019A - additional data for delete action
-+
-+class XclExpChTr0x014A : public XclExpChTrInsert
-+{
-+protected:
-+    virtual void				SaveActionData( XclExpStream& rStrm ) const;
-+
-+public:
-+                                XclExpChTr0x014A( const XclExpChTrInsert& rAction );
-+    virtual						~XclExpChTr0x014A();
-+
-+    virtual UINT16				GetNum() const;
-+    virtual sal_Size            GetActionByteCount() const;
-+};
-+
-+//___________________________________________________________________
-+// XclExpChTrActionStack - temporary action stack
-+
-+class XclExpChTrActionStack : private Stack
-+{
-+public:
-+    virtual						~XclExpChTrActionStack();
-+
-+    void						Push( XclExpChTrAction* pNewRec );
-+    inline XclExpChTrAction*	Pop()	{ return (XclExpChTrAction*) Stack::Pop(); }
-+
-+private:
-+    using                       Stack::Push;
-+};
-+
-+//___________________________________________________________________
-+// XclExpChTrRecordList - list of "Revision Log" stream records
-+
-+class XclExpChTrRecordList : private List
-+{
-+private:
-+    inline ExcRecord*			First()	{ return (ExcRecord*) List::First(); }
-+    inline ExcRecord*			Next()	{ return (ExcRecord*) List::Next(); }
-+
-+public:
-+    virtual						~XclExpChTrRecordList();
-+
-+    using                       List::Count;
-+    void						Append( ExcRecord* pNewRec );
-+    void						Save( XclExpStream& rStrm );
-+};
-+
-+//___________________________________________________________________
-+// XclExpChangeTrack - exports the "Revision Log" stream
-+
-+class XclExpChangeTrack : protected XclExpRoot
-+{
-+private:
-+    XclExpChTrRecordList		aRecList;
-+    XclExpChTrActionStack		aActionStack;
-+    XclExpChTrTabIdBufferList	aTabIdBufferList;
-+    XclExpChTrTabIdBuffer*		pTabIdBuffer;
-+
-+    ScDocument*					pTempDoc;			// empty document
-+
-+    sal_uInt32					nNewAction;			// action number, 1-based
-+    XclExpChTrHeader*			pHeader;			// header record for last GUID
-+    sal_uInt8					aGUID[ 16 ];		// GUID for action info records
-+    sal_Bool					bValidGUID;
-+
-+    ScChangeTrack*			    CreateTempChangeTrack();
-+    void						PushActionRecord( const ScChangeAction& rAction );
-+
-+    sal_Bool					WriteUserNamesStream();
-+
-+public:
-+                                XclExpChangeTrack( const XclExpRoot& rRoot );
-+                                ~XclExpChangeTrack();
-+
-+    void						Write();
-+};
-+
-+//___________________________________________________________________
-+
-+#endif
-diff --git sc/source/filter/xlsx/excdoc.hxx sc/source/filter/xlsx/excdoc.hxx
-new file mode 100644
-index 0000000..152a9af
---- /dev/null
-+++ sc/source/filter/xlsx/excdoc.hxx
-@@ -0,0 +1,122 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ *
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: excdoc.hxx,v $
-+ * $Revision: 1.19 $
-+ *
-+ * This file is part of OpenOffice.org.
-+ *
-+ * OpenOffice.org is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU Lesser General Public License version 3
-+ * only, as published by the Free Software Foundation.
-+ *
-+ * OpenOffice.org is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU Lesser General Public License version 3 for more details
-+ * (a copy is included in the LICENSE file that accompanied this code).
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * version 3 along with OpenOffice.org.  If not, see
-+ * <http://www.openoffice.org/license.html>
-+ * for a copy of the LGPLv3 License.
-+ *
-+ ************************************************************************/
-+
-+#ifndef SC_EXCDOC_HXX
-+#define SC_EXCDOC_HXX
-+
-+#include <tools/solar.h>
-+#include "excrecds.hxx"
-+#include "xeroot.hxx"
-+#include "root.hxx"
-+
-+//------------------------------------------------------------------ Forwards -
-+
-+class SvStream;
-+class ScBaseCell;
-+class ScHorizontalCellIterator;
-+class ScDocument;
-+class ScProgress;
-+
-+class NameBuffer;
-+
-+class XclExpChangeTrack;
-+
-+
-+//------------------------------------------------------------ class ExcTable -
-+
-+class XclExpCellTable;
-+
-+class ExcTable : public XclExpRecordBase, public XclExpRoot
-+{
-+private:
-+    typedef XclExpRecordList< ExcBundlesheetBase >  ExcBoundsheetList;
-+    typedef ScfRef< XclExpCellTable >               XclExpCellTableRef;
-+
-+    XclExpRecordList<>          aRecList;
-+    XclExpCellTableRef          mxCellTable;
-+
-+    SCTAB                       mnScTab;    // table number SC document
-+    UINT16						nExcTab;	// table number Excel document
-+    UINT16						nAktRow;	// fuer'n Iterator
-+    UINT16						nAktCol;
-+
-+    NameBuffer*                 pTabNames;
-+
-+    // pRec mit new anlegen und vergessen, delete macht ExcTable selber!
-+    void                        Add( XclExpRecordBase* pRec );
-+
-+    void                        FillAsXmlTable( size_t nCodeNameIdx );
-+
-+public:
-+                                ExcTable( const XclExpRoot& rRoot );
-+                                ExcTable( const XclExpRoot& rRoot, SCTAB nScTab );
-+                                ~ExcTable();
-+
-+    void                        FillAsHeader( ExcBoundsheetList& rBoundsheetList );
-+    void                        FillAsTable( size_t nCodeNameIdx );
-+    void                        FillAsEmptyTable( size_t nCodeNameIdx );
-+
-+    void						Write( XclExpStream& );
-+    void						WriteXml( XclExpXmlStream& );
-+};
-+
-+
-+//--------------------------------------------------------- class ExcDocument -
-+
-+class ExcDocument : protected XclExpRoot
-+{
-+friend class ExcTable;
-+
-+private:
-+    typedef XclExpRecordList< ExcTable >            ExcTableList;
-+    typedef ExcTableList::RecordRefType             ExcTableRef;
-+    typedef XclExpRecordList< ExcBundlesheetBase >  ExcBoundsheetList;
-+    typedef ExcBoundsheetList::RecordRefType        ExcBoundsheetRef;
-+
-+    ExcTable			aHeader;
-+
-+    ExcTableList        maTableList;
-+    ExcBoundsheetList   maBoundsheetList;
-+
-+    XclExpChangeTrack*	pExpChangeTrack;
-+
-+public:
-+    explicit                    ExcDocument( const XclExpRoot& rRoot );
-+    virtual                     ~ExcDocument();
-+
-+    void				ReadDoc( void );
-+    void				Write( SvStream& rSvStrm );
-+    void				WriteXml( SvStream& rSvStrm );
-+};
-+
-+
-+
-+
-+#endif
-diff --git sc/source/filter/xlsx/excrecds.hxx sc/source/filter/xlsx/excrecds.hxx
-new file mode 100644
-index 0000000..c7e9231
---- /dev/null
-+++ sc/source/filter/xlsx/excrecds.hxx
-@@ -0,0 +1,508 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ *
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: excrecds.hxx,v $
-+ * $Revision: 1.51 $
-+ *
-+ * This file is part of OpenOffice.org.
-+ *
-+ * OpenOffice.org is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU Lesser General Public License version 3
-+ * only, as published by the Free Software Foundation.
-+ *
-+ * OpenOffice.org is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU Lesser General Public License version 3 for more details
-+ * (a copy is included in the LICENSE file that accompanied this code).
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * version 3 along with OpenOffice.org.  If not, see
-+ * <http://www.openoffice.org/license.html>
-+ * for a copy of the LGPLv3 License.
-+ *
-+ ************************************************************************/
-+
-+#ifndef SC_EXCRECDS_HXX
-+#define SC_EXCRECDS_HXX
-+
-+#include <tools/solar.h>
-+#include <svl/zforlist.hxx>
-+#include <tools/string.hxx>
-+#include <vcl/vclenum.hxx>
-+#include <tools/color.hxx>
-+
-+
-+#include <vector>
-+#include "olinetab.hxx"
-+#include "filter.hxx"
-+#include "rangelst.hxx"
-+#include "xerecord.hxx"
-+#include "xeroot.hxx"
-+#include "xeformula.hxx"
-+#include "xestring.hxx"
-+#include "root.hxx"
-+#include "excdefs.hxx"
-+#include "cell.hxx"
-+
-+//------------------------------------------------------------------ Forwards -
-+
-+class SvxBorderLine;
-+
-+class SvStream;
-+class Font;
-+class List;
-+class ScPatternAttr;
-+class ScTokenArray;
-+class ScRangeData;
-+class ScDBData;
-+class ScEditCell;
-+class SfxItemSet;
-+class EditTextObject;
-+class ScPageHFItem;
-+class ScProgress;
-+
-+class ExcTable;
-+
-+//----------------------------------------------------------- class ExcRecord -
-+
-+class ExcRecord : public XclExpRecord
-+{
-+public:
-+    virtual void			Save( XclExpStream& rStrm );
-+
-+    virtual UINT16			GetNum() const = 0;
-+    virtual sal_Size        GetLen() const = 0;
-+
-+protected:
-+    virtual void			SaveCont( XclExpStream& rStrm );
-+
-+private:
-+    /** Writes the body of the record. */
-+    virtual void            WriteBody( XclExpStream& rStrm );
-+};
-+
-+
-+//--------------------------------------------------------- class ExcEmptyRec -
-+
-+class ExcEmptyRec : public ExcRecord
-+{
-+private:
-+protected:
-+public:
-+    virtual void			Save( XclExpStream& rStrm );
-+    virtual UINT16			GetNum() const;
-+    virtual sal_Size        GetLen() const;
-+};
-+
-+
-+//------------------------------------------------------- class ExcRecordList -
-+
-+class ExcRecordList : protected List, public ExcEmptyRec
-+{
-+private:
-+protected:
-+public:
-+    virtual					~ExcRecordList();
-+
-+    using                   List::Count;
-+
-+    inline ExcRecord*		First( void )				{ return ( ExcRecord* ) List::First(); }
-+    inline ExcRecord*		Next( void )				{ return ( ExcRecord* ) List::Next(); }
-+
-+    inline void				Append( ExcRecord* pNew )	{ if( pNew ) List::Insert( pNew, LIST_APPEND ); }
-+    inline const ExcRecord*	Get( UINT32 nNum ) const	{ return ( ExcRecord* ) List::GetObject( nNum ); }
-+
-+    virtual void			Save( XclExpStream& rStrm );
-+};
-+
-+
-+//--------------------------------------------------------- class ExcDummyRec -
-+
-+class ExcDummyRec : public ExcRecord
-+{
-+protected:
-+public:
-+    virtual void			Save( XclExpStream& rStrm );
-+    virtual UINT16			GetNum() const;
-+    virtual	const BYTE*		GetData() const = 0;	// byte data must contain header and body
-+};
-+
-+
-+//------------------------------------------------------- class ExcBoolRecord -
-+// stores BOOL as 16bit val ( 0x0000 | 0x0001 )
-+
-+class ExcBoolRecord : public ExcRecord
-+{
-+private:
-+    virtual void			SaveCont( XclExpStream& rStrm );
-+
-+protected:
-+    BOOL					bVal;
-+
-+    inline					ExcBoolRecord() : bVal( FALSE ) {}
-+
-+public:
-+    inline					ExcBoolRecord( const BOOL bDefault ) : bVal( bDefault )	{}
-+
-+    virtual sal_Size        GetLen( void ) const;
-+};
-+
-+
-+//--------------------------------------------------------- class ExcBof_Base -
-+
-+class ExcBof_Base : public ExcRecord
-+{
-+private:
-+protected:
-+    UINT16					nDocType;
-+    UINT16					nVers;
-+    UINT16					nRupBuild;
-+    UINT16					nRupYear;
-+public:
-+                            ExcBof_Base( void );
-+};
-+
-+
-+//-------------------------------------------------------------- class ExcBof -
-+// Header Record fuer WORKSHEETS
-+
-+class ExcBof : public ExcBof_Base
-+{
-+private:
-+    virtual void			SaveCont( XclExpStream& rStrm );
-+public:
-+                            ExcBof( void );
-+
-+    virtual UINT16			GetNum( void ) const;
-+    virtual sal_Size        GetLen( void ) const;
-+};
-+
-+
-+//------------------------------------------------------------- class ExcBofW -
-+// Header Record fuer WORKBOOKS
-+
-+class ExcBofW : public ExcBof_Base
-+{
-+private:
-+    virtual void			SaveCont( XclExpStream& rStrm );
-+public:
-+                            ExcBofW( void );
-+
-+    virtual UINT16			GetNum( void ) const;
-+    virtual sal_Size        GetLen( void ) const;
-+};
-+
-+
-+//-------------------------------------------------------------- class ExcEof -
-+
-+class ExcEof : public ExcRecord
-+{
-+private:
-+public:
-+    virtual UINT16			GetNum( void ) const;
-+    virtual sal_Size        GetLen( void ) const;
-+};
-+
-+
-+//--------------------------------------------------------- class ExcDummy_00 -
-+// INTERFACEHDR to FNGROUPCOUNT (see excrecds.cxx)
-+
-+class ExcDummy_00 : public ExcDummyRec
-+{
-+private:
-+    static const BYTE		pMyData[];
-+    static const sal_Size   nMyLen;
-+public:
-+    virtual sal_Size        GetLen( void ) const;
-+    virtual	const BYTE*		GetData( void ) const;
-+};
-+
-+// EXC_ID_WINDOWPROTECTION
-+class XclExpWindowProtection : public	XclExpBoolRecord
-+{
-+    public:
-+        XclExpWindowProtection(bool bValue);
-+
-+    virtual void            SaveXml( XclExpXmlStream& rStrm );
-+};
-+
-+// EXC_ID_PROTECT  Document Protection
-+class XclExpProtection : public	XclExpBoolRecord
-+{
-+    public:
-+        XclExpProtection(bool bValue);
-+};
-+
-+class XclExpPassHash : public XclExpRecord
-+{
-+public:
-+    XclExpPassHash(const ::com::sun::star::uno::Sequence<sal_Int8>& aHash);
-+    virtual ~XclExpPassHash();
-+
-+private:
-+    virtual void    WriteBody(XclExpStream& rStrm);
-+
-+private:
-+    sal_uInt16  mnHash;
-+};
-+
-+
-+//-------------------------------------------------------- class ExcDummy_04x -
-+// PASSWORD to BOOKBOOL (see excrecds.cxx), no 1904
-+
-+class ExcDummy_040 : public ExcDummyRec
-+{
-+private:
-+    static const BYTE		pMyData[];
-+    static const sal_Size   nMyLen;
-+public:
-+    virtual sal_Size        GetLen( void ) const;
-+    virtual	const BYTE*		GetData( void ) const;
-+};
-+
-+
-+
-+class ExcDummy_041 : public ExcDummyRec
-+{
-+private:
-+    static const BYTE		pMyData[];
-+    static const sal_Size   nMyLen;
-+public:
-+    virtual sal_Size        GetLen( void ) const;
-+    virtual	const BYTE*		GetData( void ) const;
-+};
-+
-+
-+//------------------------------------------------------------- class Exc1904 -
-+
-+class Exc1904 : public ExcBoolRecord
-+{
-+public:
-+                            Exc1904( ScDocument& rDoc );
-+    virtual UINT16			GetNum( void ) const;
-+
-+    virtual void            SaveXml( XclExpXmlStream& rStrm );
-+};
-+
-+
-+//------------------------------------------------------ class ExcBundlesheet -
-+
-+class ExcBundlesheetBase : public ExcRecord
-+{
-+protected:
-+    sal_Size                nStrPos;
-+    sal_Size                nOwnPos;    // Position NACH # und Len
-+    UINT16					nGrbit;
-+    SCTAB                   nTab;
-+
-+                            ExcBundlesheetBase();
-+
-+public:
-+                            ExcBundlesheetBase( RootData& rRootData, SCTAB nTab );
-+
-+    inline void             SetStreamPos( sal_Size nNewStrPos ) { nStrPos = nNewStrPos; }
-+    void					UpdateStreamPos( XclExpStream& rStrm );
-+
-+    virtual UINT16			GetNum() const;
-+};
-+
-+
-+
-+class ExcBundlesheet : public ExcBundlesheetBase
-+{
-+private:
-+    ByteString				aName;
-+
-+    virtual void			SaveCont( XclExpStream& rStrm );
-+
-+public:
-+                            ExcBundlesheet( RootData& rRootData, SCTAB nTab );
-+    virtual sal_Size        GetLen() const;
-+};
-+
-+//--------------------------------------------------------- class ExcDummy_02 -
-+// sheet dummies: CALCMODE to SETUP
-+
-+class ExcDummy_02a : public ExcDummyRec
-+{
-+private:
-+    static const BYTE		pMyData[];
-+    static const sal_Size   nMyLen;
-+public:
-+    virtual sal_Size        GetLen( void ) const;
-+    virtual	const BYTE*		GetData( void ) const;
-+};
-+
-+
-+// ----------------------------------------------------------------------------
-+
-+/** This record contains the Windows country IDs for the UI and document language. */
-+class XclExpCountry : public XclExpRecord
-+{
-+public:
-+    explicit                    XclExpCountry( const XclExpRoot& rRoot );
-+
-+private:
-+    sal_uInt16                  mnUICountry;        /// The UI country ID.
-+    sal_uInt16                  mnDocCountry;       /// The document country ID.
-+
-+    /** Writes the body of the COUNTRY record. */
-+    virtual void                WriteBody( XclExpStream& rStrm );
-+};
-+
-+
-+// XclExpWsbool ===============================================================
-+
-+class XclExpWsbool : public XclExpUInt16Record
-+{
-+public:
-+    explicit                    XclExpWsbool( bool bFitToPages, SCTAB nScTab = -1, XclExpFilterManager* pManager = NULL );
-+
-+    virtual void                SaveXml( XclExpXmlStream& rStrm );
-+private:
-+    SCTAB                       mnScTab;
-+    XclExpFilterManager*        mpManager;
-+};
-+
-+
-+// ============================================================================
-+
-+class XclExpFiltermode : public XclExpEmptyRecord
-+{
-+public:
-+    explicit            XclExpFiltermode();
-+};
-+
-+// ----------------------------------------------------------------------------
-+
-+class XclExpAutofilterinfo : public XclExpUInt16Record
-+{
-+public:
-+    explicit            XclExpAutofilterinfo( const ScAddress& rStartPos, SCCOL nScCol );
-+
-+    inline const ScAddress GetStartPos() const { return maStartPos; }
-+    inline SCCOL        GetColCount() const { return static_cast< SCCOL >( GetValue() ); }
-+
-+private:
-+    ScAddress           maStartPos;
-+};
-+
-+// ----------------------------------------------------------------------------
-+
-+class ExcFilterCondition
-+{
-+private:
-+    UINT8					nType;
-+    UINT8					nOper;
-+    double					fVal;
-+    XclExpString*           pText;
-+
-+protected:
-+public:
-+                            ExcFilterCondition();
-+                            ~ExcFilterCondition();
-+
-+    inline BOOL				IsEmpty() const 	{ return (nType == EXC_AFTYPE_NOTUSED); }
-+    inline BOOL				HasEqual() const	{ return (nOper == EXC_AFOPER_EQUAL); }
-+    ULONG					GetTextBytes() const;
-+
-+    void					SetCondition( UINT8 nTp, UINT8 nOp, double fV, String* pT );
-+
-+    void					Save( XclExpStream& rStrm );
-+    void					SaveXml( XclExpXmlStream& rStrm );
-+    void					SaveText( XclExpStream& rStrm );
-+};
-+
-+// ----------------------------------------------------------------------------
-+
-+class XclExpAutofilter : public XclExpRecord, protected XclExpRoot
-+{
-+private:
-+    UINT16					nCol;
-+    UINT16					nFlags;
-+    ExcFilterCondition		aCond[ 2 ];
-+
-+    BOOL					AddCondition( ScQueryConnect eConn, UINT8 nType,
-+                                UINT8 nOp, double fVal, String* pText,
-+                                BOOL bSimple = FALSE );
-+
-+    virtual void            WriteBody( XclExpStream& rStrm );
-+
-+protected:
-+public:
-+                            XclExpAutofilter( const XclExpRoot& rRoot, UINT16 nC );
-+
-+    inline UINT16			GetCol() const			{ return nCol; }
-+    inline BOOL				HasCondition() const	{ return !aCond[ 0 ].IsEmpty(); }
-+    inline BOOL             HasTop10() const        { return ::get_flag( nFlags, EXC_AFFLAG_TOP10 ); }
-+
-+    BOOL                    AddEntry( const ScQueryEntry& rEntry );
-+
-+    virtual void            SaveXml( XclExpXmlStream& rStrm );
-+};
-+
-+// ----------------------------------------------------------------------------
-+
-+class ExcAutoFilterRecs : public XclExpRecordBase, protected XclExpRoot
-+{
-+public:
-+    explicit            ExcAutoFilterRecs( const XclExpRoot& rRoot, SCTAB nTab );
-+    virtual             ~ExcAutoFilterRecs();
-+
-+    void                AddObjRecs();
-+
-+    virtual void        Save( XclExpStream& rStrm );
-+    virtual void        SaveXml( XclExpXmlStream& rStrm );
-+
-+    bool                HasFilterMode() const;
-+
-+private:
-+    XclExpAutofilter*   GetByCol( SCCOL nCol ); // always 0-based
-+    BOOL                IsFiltered( SCCOL nCol );
-+
-+private:
-+    typedef XclExpRecordList< XclExpAutofilter >    XclExpAutofilterList;
-+    typedef XclExpAutofilterList::RecordRefType     XclExpAutofilterRef;
-+
-+    XclExpAutofilterList maFilterList;
-+    XclExpFiltermode*   pFilterMode;
-+    XclExpAutofilterinfo* pFilterInfo;
-+    ScRange                 maRef;
-+};
-+
-+// ----------------------------------------------------------------------------
-+
-+/** Sheet filter manager. Contains auto filters or advanced filters from all sheets. */
-+class XclExpFilterManager : protected XclExpRoot
-+{
-+public:
-+    explicit            XclExpFilterManager( const XclExpRoot& rRoot );
-+
-+    /** Creates the filter records for the specified sheet.
-+        @descr  Creates and inserts related built-in NAME records. Therefore this
-+            function is called from the name buffer itself. */
-+    void                InitTabFilter( SCTAB nScTab );
-+
-+    /** Returns a record object containing all filter records for the specified sheet. */
-+    XclExpRecordRef     CreateRecord( SCTAB nScTab );
-+
-+    /** Returns whether or not FilterMode is present */
-+    bool                HasFilterMode( SCTAB nScTab );
-+
-+private:
-+    using               XclExpRoot::CreateRecord;
-+
-+    typedef ScfRef< ExcAutoFilterRecs >             XclExpTabFilterRef;
-+    typedef ::std::map< SCTAB, XclExpTabFilterRef > XclExpTabFilterMap;
-+
-+    XclExpTabFilterMap  maFilterMap;
-+};
-+
-+
-+#endif
-diff --git sc/source/filter/xlsx/exp_op.hxx sc/source/filter/xlsx/exp_op.hxx
-new file mode 100644
-index 0000000..a096ce4
---- /dev/null
-+++ sc/source/filter/xlsx/exp_op.hxx
-@@ -0,0 +1,148 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ *
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: exp_op.hxx,v $
-+ * $Revision: 1.13.32.3 $
-+ *
-+ * This file is part of OpenOffice.org.
-+ *
-+ * OpenOffice.org is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU Lesser General Public License version 3
-+ * only, as published by the Free Software Foundation.
-+ *
-+ * OpenOffice.org is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU Lesser General Public License version 3 for more details
-+ * (a copy is included in the LICENSE file that accompanied this code).
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * version 3 along with OpenOffice.org.  If not, see
-+ * <http://www.openoffice.org/license.html>
-+ * for a copy of the LGPLv3 License.
-+ *
-+ ************************************************************************/
-+
-+#ifndef SC_EXP_OP_HXX
-+#define SC_EXP_OP_HXX
-+
-+#include "filter.hxx"
-+#include "root.hxx"
-+#include "xeroot.hxx"
-+
-+
-+class ScDocument;
-+class ScPatternAttr;
-+class ScFormulaCell;
-+class ExcDocument;
-+class SotStorage;
-+
-+
-+class ExportTyp
-+{
-+protected:
-+    SvStream&			aOut;			// Ausgabe-Stream
-+    ScDocument*			pD;				// Dokument
-+    CharSet				eZielChar;		// Ziel-Zeichensatz
-+public:
-+                        ExportTyp( SvStream& aStream, ScDocument* pDoc, CharSet eDest ):
-+                            aOut( aStream )
-+                        {
-+                            eZielChar = eDest;
-+                            pD = pDoc;
-+                        }
-+
-+    virtual FltError	Write() = 0;
-+};
-+
-+
-+
-+#if ENABLE_LOTUS123_EXPORT
-+class ExportWK1 : public ExportTyp
-+{
-+private:
-+    BYTE				GenFormByte( const ScPatternAttr& );
-+    void				Bof();
-+    void				Eof();
-+    void				Calcmode();
-+    void				Calcorder();
-+    void				Split();
-+    void				Sync();
-+    void				Dimensions();
-+    void				Window1();
-+    void				Colw();
-+    void				Blank( const UINT16 nC, const UINT16 nR, const ScPatternAttr& );
-+    void				Number( const UINT16 nC, const UINT16 nR, const double f, const ScPatternAttr& );
-+    void				Label( const UINT16 nC, const UINT16 nR, const String&, const ScPatternAttr& );
-+    void				Formula( const UINT16 nC, const UINT16 nR, const ScFormulaCell*, const ScPatternAttr& );
-+    void				Protect();
-+    void				Footer();
-+    void				Header();
-+    void				Margins();
-+    void				Labelfmt();
-+    void				Calccount();
-+    void				Cursorw12();
-+    void				WKString( const UINT16 nC, const UINT16 nR, const ScFormulaCell*, const ScPatternAttr& );
-+    void				Snrange();
-+    void				Hidcol();
-+    void				Cpi();
-+public:
-+
-+    static  const USHORT    WK1MAXCOL;
-+    static  const USHORT    WK1MAXROW;
-+
-+    inline 				ExportWK1( SvStream& r, ScDocument* p, CharSet e ) :
-+                            ExportTyp( r, p, e ) {};
-+
-+    FltError			Write();
-+};
-+#endif
-+
-+
-+
-+class ExportBiff5 : public ExportTyp, protected XclExpRoot
-+{
-+private:
-+    ExcDocument*		pExcDoc;
-+
-+protected:
-+    RootData*           pExcRoot;
-+
-+public:
-+                        ExportBiff5( XclExpRootData& rExpData, SvStream& rStrm );
-+    virtual				~ExportBiff5();
-+    FltError			Write();
-+};
-+
-+
-+
-+
-+class ExportBiff8 : public ExportBiff5
-+{
-+public:
-+                        ExportBiff8( XclExpRootData& rExpData, SvStream& rStrm );
-+    virtual				~ExportBiff8();
-+};
-+
-+
-+class ExportXml2007 : public ExportTyp, protected XclExpRoot
-+{
-+private:
-+    ExcDocument*        pExcDoc;
-+
-+protected:
-+    RootData*           pExcRoot;
-+
-+public:
-+                        ExportXml2007( XclExpRootData& rExpData, SvStream& rStrm );
-+    virtual				~ExportXml2007();
-+    FltError			Write();
-+};
-+
-+
-+#endif
-diff --git sc/source/filter/xlsx/imp_op.hxx sc/source/filter/xlsx/imp_op.hxx
-new file mode 100644
-index 0000000..c02254f
---- /dev/null
-+++ sc/source/filter/xlsx/imp_op.hxx
-@@ -0,0 +1,206 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ *
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: imp_op.hxx,v $
-+ * $Revision: 1.43.14.3 $
-+ *
-+ * This file is part of OpenOffice.org.
-+ *
-+ * OpenOffice.org is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU Lesser General Public License version 3
-+ * only, as published by the Free Software Foundation.
-+ *
-+ * OpenOffice.org is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU Lesser General Public License version 3 for more details
-+ * (a copy is included in the LICENSE file that accompanied this code).
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * version 3 along with OpenOffice.org.  If not, see
-+ * <http://www.openoffice.org/license.html>
-+ * for a copy of the LGPLv3 License.
-+ *
-+ ************************************************************************/
-+
-+#ifndef SC_IMP_OP_HXX
-+#define SC_IMP_OP_HXX
-+
-+#include <tools/gen.hxx>
-+#include "xiroot.hxx"
-+#include "xistream.hxx"
-+#include "xistyle.hxx"
-+#include "flttypes.hxx"
-+#include "namebuff.hxx"
-+#include "root.hxx"
-+#include "otlnbuff.hxx"
-+#include "colrowst.hxx"
-+#include "excdefs.hxx"
-+
-+
-+class SfxItemSet;
-+class SvStream;
-+
-+class ScFormulaCell;
-+class SdrObject;
-+class ScDocument;
-+class ScToken;
-+class _ScRangeListTabs;
-+
-+class ExcelToSc;
-+
-+
-+class ImportTyp
-+{
-+protected:
-+    CharSet				eQuellChar;		// Quell-Zeichensatz
-+    ScDocument*			pD;				// Dokument
-+
-+public:
-+                        ImportTyp( ScDocument*, CharSet eSrc );
-+    virtual				~ImportTyp();
-+
-+    virtual FltError	Read( void );
-+};
-+
-+class XclImpOutlineDataBuffer : protected XclImpRoot
-+{
-+public:
-+    explicit            XclImpOutlineDataBuffer( const XclImpRoot& rRoot, SCTAB nScTab );
-+    virtual             ~XclImpOutlineDataBuffer();
-+
-+    inline XclImpColRowSettings* GetColRowBuff() const { return mxColRowBuff.get(); }
-+    inline XclImpOutlineBuffer* GetColOutline()  const { return mxColOutlineBuff.get(); }
-+    inline XclImpOutlineBuffer* GetRowOutline()  const { return mxRowOutlineBuff.get(); }
-+    void                Convert();
-+
-+private:
-+    typedef ScfRef< XclImpOutlineBuffer >  XclImpOutlineBfrRef;
-+    typedef ScfRef< XclImpColRowSettings > XclImpColRowSettRef;
-+
-+    XclImpOutlineBfrRef mxColOutlineBuff;
-+    XclImpOutlineBfrRef mxRowOutlineBuff;
-+    XclImpColRowSettRef mxColRowBuff;
-+    SCTAB               mnScTab;
-+};
-+
-+class ImportExcel : public ImportTyp, protected XclImpRoot
-+{
-+protected:
-+    static const double		fExcToTwips;		// Umrechnung 1/256 Zeichen -> Twips
-+
-+    RootData*               pExcRoot;
-+
-+    XclImpStream            maStrm;             // input stream
-+    XclImpStream&           aIn;                // input stream
-+
-+    ScfUInt32Vec            maSheetOffsets;
-+
-+    NameBuffer*             pExtNameBuff;       // ... externe Namen (Ind.-Basis=1)
-+    ExcelToSc*				pFormConv;			// Formel-Konverter
-+
-+    XclImpOutlineBuffer*    pColOutlineBuff;
-+    XclImpOutlineBuffer*    pRowOutlineBuff;
-+    XclImpColRowSettings*   pColRowBuff;        // Col/Row-Einstellungen 1 Tabelle
-+
-+    typedef ScfDelList< XclImpOutlineDataBuffer > XclImpOutlineListBuffer;
-+    XclImpOutlineListBuffer* pOutlineListBuffer;
-+
-+    sal_Int16               mnLastRefIdx;
-+    UINT16					nIxfeIndex;			// merkt sich Angabe im IXFE-Record
-+    UINT16					nLastXF;			// letzter XF in Formula-Record
-+    SCTAB					nBdshtTab;			// Counter fuer Boundsheet
-+    ScFormulaCell*			pLastFormCell;		// fuer String-Records
-+
-+    BOOL					bTabTruncated;		// wenn Bereichsueberschreitung zum
-+                                                //	Abschneiden von Zellen fuehrt
-+
-+    // Record-Funktionen
-+    void                    ReadFileSharing();
-+
-+    sal_uInt16              ReadXFIndex( bool bBiff2 );
-+
-+    void                    ReadDimensions();
-+    void                    ReadBlank();
-+    void                    ReadInteger();
-+    void                    ReadNumber();
-+    void                    ReadLabel();
-+    void                    ReadBoolErr();
-+    void                    ReadRk();
-+
-+    void                    Window1();
-+    void					Formula25( void );				// 0x06		-> excform.cxx
-+    void					Row25( void );					// 0x08
-+    void					Bof2( void );					// 0x09
-+    void					Eof( void );					// 0x0A
-+    void					DocProtect( void );             // 0x12
-+    void                    SheetProtect( void );           // 0x12 Sheet Protection
-+    void                    DocPasssword( void );           // 0x13 document password
-+    void                    SheetPassword( void );               // 0x13 sheet password
-+    void					Externsheet( void );			// 0x17
-+    void                    WinProtection( void );          // 0x19
-+    void					Columndefault( void );			// 0x20
-+    void					Array25( void );				// 0x21
-+    void					Rec1904( void );				// 0x22
-+    void					Externname25( void );			// 0x23
-+    void					Colwidth( void );				// 0x24
-+    void					Defrowheight2( void );			// 0x25
-+//		void				Window1( void );				// 0x3D
-+    void					Codepage( void );				// 0x42
-+    void					Ixfe( void );					// 0x44
-+    void					DefColWidth( void );			// 0x55
-+    void					Builtinfmtcnt( void );			// 0x56
-+    void					Colinfo( void );				// 0x7D
-+    void					Wsbool( void );					// 0x81
-+    void					Boundsheet( void );				// 0x85
-+    void					Country( void );				// 0x8C
-+    void					Hideobj( void );				// 0x8D
-+    void					Bundleheader( void );			// 0x8F
-+    void					Standardwidth( void );			// 0x99
-+    void					Shrfmla( void );				// 0xBC
-+    void					Mulrk( void );					// 0xBD
-+    void					Mulblank( void );				// 0xBE
-+    void					Rstring( void );				// 0xD6
-+    void                    Cellmerging( void );            // 0xE5
-+    void                    Olesize( void );                // 0xDE
-+    void                    ReadUsesElfs();                 // 0x0160
-+    void					Formula3( void );				// 0x0206		-> excform.cxx
-+                                                            // 0x0207 -> 0x07
-+    void					Row34( void );					// 0x0208
-+    void					Bof3( void );					// 0x0209
-+    void					Array34( void );				// 0x0221
-+    void					Externname34( void );			// 0x0223
-+    void					Defrowheight345( void );		// 0x0225
-+    void					TableOp( void );				// 0x0236
-+    //void					Rk( void );						// 0x027E -> 0x7E
-+    void					Formula4( void );				// 0x0406		-> excform.cxx
-+    void					Bof4( void );					// 0x0409
-+    void					Bof5( void );					// 0x0809
-+
-+    // ---------------------------------------------------------------
-+    void                    Formula( const XclAddress& rXclPos,
-+                                UINT16 nXF, UINT16 nFormLen, double &rCurVal, BOOL bShrFmla );
-+                                            // 		-> excform.cxx
-+
-+    virtual void            EndSheet( void );
-+    void					NeueTabelle( void );
-+    const ScTokenArray*		ErrorToFormula( BYTE bErrOrVal, BYTE nError,
-+                                double& rVal );
-+
-+    virtual void            AdjustRowHeight();
-+    virtual void            PostDocLoad( void );
-+
-+public:
-+                            ImportExcel( XclImpRootData& rImpData, SvStream& rStrm );
-+
-+    virtual					~ImportExcel( void );
-+
-+    virtual FltError		Read( void );
-+};
-+
-+#endif
-diff --git sc/source/filter/xlsx/xcl97esc.hxx sc/source/filter/xlsx/xcl97esc.hxx
-new file mode 100644
-index 0000000..67a6e3f
---- /dev/null
-+++ sc/source/filter/xlsx/xcl97esc.hxx
-@@ -0,0 +1,266 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ *
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: xcl97esc.hxx,v $
-+ * $Revision: 1.13.14.3 $
-+ *
-+ * This file is part of OpenOffice.org.
-+ *
-+ * OpenOffice.org is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU Lesser General Public License version 3
-+ * only, as published by the Free Software Foundation.
-+ *
-+ * OpenOffice.org is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU Lesser General Public License version 3 for more details
-+ * (a copy is included in the LICENSE file that accompanied this code).
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * version 3 along with OpenOffice.org.  If not, see
-+ * <http://www.openoffice.org/license.html>
-+ * for a copy of the LGPLv3 License.
-+ *
-+ ************************************************************************/
-+
-+#ifndef SC_XCL97ESC_HXX
-+#define SC_XCL97ESC_HXX
-+
-+#include <filter/msfilter/escherex.hxx>
-+#include <tools/table.hxx>
-+#include <tools/stack.hxx>
-+#include "xlescher.hxx"
-+#include "xeroot.hxx"
-+
-+// 0 = Export TBX form controls, 1 = Export OCX form controls.
-+#define EXC_EXP_OCX_CTRL 0
-+
-+namespace utl { class TempFile; }
-+
-+// --- class XclEscherEx ---------------------------------------------
-+
-+class SvStream;
-+class XclObj;
-+class XclEscherHostAppData;
-+class XclEscherClientData;
-+class XclEscherClientTextbox;
-+#if EXC_EXP_OCX_CTRL
-+class XclExpOcxControlObj;
-+#else
-+class XclExpTbxControlObj;
-+#endif
-+class XclExpShapeObj;
-+class EscherExHostAppData;
-+class ShapeInteractionHelper
-+{
-+public:
-+   static XclExpShapeObj* CreateShapeObj(const XclExpRoot& rRoot, const ::com::sun::star::uno::Reference<
-+                            ::com::sun::star::drawing::XShape >& xShape );
-+   static void PopulateShapeInteractionInfo( const XclExpRoot& rRoot, const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape >& xShape, EscherExHostAppData& rHostAppData );
-+};
-+
-+class XclEscherEx : public EscherEx, protected XclExpRoot
-+{
-+private:
-+        List				aOffsetMap;
-+        Stack				aStack;
-+        utl::TempFile*		pPicTempFile;
-+        SvStream*			pPicStrm;
-+        XclObj*				pCurrXclObj;
-+        XclEscherHostAppData*	pCurrAppData;
-+        XclEscherClientData*	pTheClientData;	// always the same
-+        XclEscherClientTextbox*	pAdditionalText;
-+        USHORT					nAdditionalText;
-+
-+            void				DeleteCurrAppData();
-+
-+public:
-+                                XclEscherEx( const XclExpRoot& rRoot, SvStream& rStrm, UINT32 nDrawings );
-+    virtual						~XclEscherEx();
-+
-+                                /// maintains OffsetMap
-+    virtual	void				InsertAtCurrentPos( UINT32 nBytes, BOOL bCont = FALSE );
-+
-+    virtual	SvStream*			QueryPicStream();
-+    virtual	EscherExHostAppData*	StartShape( const com::sun::star::uno::Reference<
-+                                        com::sun::star::drawing::XShape>& rShape );
-+    virtual	void				EndShape( UINT16 nShapeType, UINT32 nShapeID );
-+    virtual	EscherExHostAppData*	EnterAdditionalTextGroup();
-+
-+                                /// appends stream offset to list and returns position in list
-+            ULONG				AddCurrentOffsetToMap();
-+                                /// replaces position in list with current stream offset
-+            void				ReplaceCurrentOffsetInMap( ULONG nPos );
-+                                /// returns stream offset for position in list
-+    inline	ULONG				GetOffsetFromMap( ULONG nPos ) const;
-+                                /// last position in list (count-1)
-+    inline	ULONG				GetLastOffsetMapPos() const;
-+
-+                                /// Flush and merge PicStream into EscherStream
-+            void				EndDocument();
-+
-+#if EXC_EXP_OCX_CTRL
-+    /** Creates an OCX form control OBJ record from the passed form control.
-+        @descr  Writes the form control data to the 'Ctls' stream. */
-+    XclExpOcxControlObj* CreateCtrlObj( ::com::sun::star::uno::Reference<
-+                            ::com::sun::star::drawing::XShape > xShape );
-+
-+private:
-+    SotStorageStreamRef  mxCtlsStrm;         /// The 'Ctls' stream.
-+#else
-+    /** Creates a TBX form control OBJ record from the passed form control. */
-+    XclExpTbxControlObj* CreateCtrlObj( ::com::sun::star::uno::Reference<
-+                            ::com::sun::star::drawing::XShape > xShape );
-+
-+private:
-+    /** Tries to get the name of a Basic macro from a control. */
-+    void                ConvertTbxMacro(
-+                            XclExpTbxControlObj& rTbxCtrlObj,
-+                            ::com::sun::star::uno::Reference<
-+                                ::com::sun::star::awt::XControlModel > xCtrlModel );
-+#endif
-+};
-+
-+
-+inline ULONG XclEscherEx::GetOffsetFromMap( ULONG nPos ) const
-+{
-+    return (ULONG) aOffsetMap.GetObject( nPos );
-+}
-+
-+
-+inline ULONG XclEscherEx::GetLastOffsetMapPos() const
-+{
-+    return aOffsetMap.Count() - 1;
-+}
-+
-+
-+// --- class XclEscher -----------------------------------------------
-+
-+struct RootData;
-+
-+class XclEscher : protected XclExpRoot
-+{
-+private:
-+        utl::TempFile*		pTempFile;
-+        SvStream*			pStrm;
-+        XclEscherEx*		pEx;
-+
-+public:
-+                                XclEscher( const XclExpRoot& rRoot, UINT32 nDrawings );
-+                                ~XclEscher();
-+
-+    inline	XclEscherEx*		GetEx() const		{ return pEx; }
-+    inline	SvStream&			GetStrm() const		{ return *pStrm; }
-+
-+    void                        AddSdrPage();
-+};
-+
-+
-+// --- class XclEscherHostAppData ------------------------------------
-+
-+class XclEscherHostAppData : public EscherExHostAppData
-+{
-+private:
-+        BOOL				bStackedGroup;
-+
-+public:
-+                                XclEscherHostAppData() : bStackedGroup( FALSE )
-+                                    {}
-+    inline	void				SetStackedGroup( BOOL b )	{ bStackedGroup = b; }
-+    inline	BOOL				IsStackedGroup() const	{ return bStackedGroup; }
-+};
-+
-+
-+// DFF client anchor ==========================================================
-+
-+class Rectangle;
-+class SdrObject;
-+class ScAddress;
-+
-+/** Represents the position (anchor) of an object in a Calc document. */
-+class XclExpDffAnchor : public EscherExClientAnchor_Base, protected XclExpRoot
-+{
-+public:
-+    /** Constructs a dummy client anchor. */
-+    explicit                    XclExpDffAnchor( const XclExpRoot& rRoot, sal_uInt16 nFlags = 0 );
-+    /** Constructs a client anchor directly from an SdrObject. */
-+    explicit                    XclExpDffAnchor( const XclExpRoot& rRoot, const SdrObject& rSdrObj );
-+
-+    /** Sets the flags according to the passed SdrObject. */

... etc. - the rest is truncated


More information about the ooo-build-commit mailing list