[Libreoffice-commits] .: Branch 'feature/calc-key-binding-compat' - 33 commits - chart2/inc chart2/source chart2/workbench scaddins/source sccomp/source sc/inc sc/sdi sc/source sc/uiconfig sc/util sc/workben

Kohei Yoshida kohei at kemper.freedesktop.org
Wed Oct 13 20:22:51 PDT 2010


 chart2/inc/pch/precompiled_chart2.cxx                                              |    2 
 chart2/source/controller/accessibility/AccStatisticsObject.cxx                     |    3 
 chart2/source/controller/accessibility/AccessibleBase.cxx                          |    3 
 chart2/source/controller/accessibility/AccessibleChartElement.cxx                  |    3 
 chart2/source/controller/accessibility/AccessibleChartShape.cxx                    |    3 
 chart2/source/controller/accessibility/AccessibleChartView.cxx                     |    3 
 chart2/source/controller/accessibility/AccessibleTextHelper.cxx                    |    3 
 chart2/source/controller/accessibility/AccessibleViewForwarder.cxx                 |    3 
 chart2/source/controller/accessibility/ChartElementFactory.cxx                     |    3 
 chart2/source/controller/chartapiwrapper/AreaWrapper.cxx                           |    3 
 chart2/source/controller/chartapiwrapper/AxisWrapper.cxx                           |    3 
 chart2/source/controller/chartapiwrapper/Chart2ModelContact.cxx                    |    3 
 chart2/source/controller/chartapiwrapper/ChartDataWrapper.cxx                      |    3 
 chart2/source/controller/chartapiwrapper/ChartDocumentWrapper.cxx                  |    3 
 chart2/source/controller/chartapiwrapper/DataSeriesPointWrapper.cxx                |    3 
 chart2/source/controller/chartapiwrapper/DiagramWrapper.cxx                        |    3 
 chart2/source/controller/chartapiwrapper/GridWrapper.cxx                           |    3 
 chart2/source/controller/chartapiwrapper/LegendWrapper.cxx                         |    3 
 chart2/source/controller/chartapiwrapper/MinMaxLineWrapper.cxx                     |    3 
 chart2/source/controller/chartapiwrapper/TitleWrapper.cxx                          |    3 
 chart2/source/controller/chartapiwrapper/UpDownBarWrapper.cxx                      |    3 
 chart2/source/controller/chartapiwrapper/WallFloorWrapper.cxx                      |    3 
 chart2/source/controller/chartapiwrapper/WrappedAddInProperty.cxx                  |    3 
 chart2/source/controller/chartapiwrapper/WrappedAutomaticPositionProperties.cxx    |    3 
 chart2/source/controller/chartapiwrapper/WrappedAxisAndGridExistenceProperties.cxx |    3 
 chart2/source/controller/chartapiwrapper/WrappedCharacterHeightProperty.cxx        |    3 
 chart2/source/controller/chartapiwrapper/WrappedDataCaptionProperties.cxx          |    3 
 chart2/source/controller/chartapiwrapper/WrappedGapwidthProperty.cxx               |    3 
 chart2/source/controller/chartapiwrapper/WrappedNumberFormatProperty.cxx           |    3 
 chart2/source/controller/chartapiwrapper/WrappedScaleProperty.cxx                  |    3 
 chart2/source/controller/chartapiwrapper/WrappedScaleTextProperties.cxx            |    3 
 chart2/source/controller/chartapiwrapper/WrappedSceneProperty.cxx                  |    3 
 chart2/source/controller/chartapiwrapper/WrappedSeriesAreaOrLineProperty.cxx       |    3 
 chart2/source/controller/chartapiwrapper/WrappedSplineProperties.cxx               |    3 
 chart2/source/controller/chartapiwrapper/WrappedStatisticProperties.cxx            |    3 
 chart2/source/controller/chartapiwrapper/WrappedStockProperties.cxx                |    3 
 chart2/source/controller/chartapiwrapper/WrappedSymbolProperties.cxx               |    3 
 chart2/source/controller/chartapiwrapper/WrappedTextRotationProperty.cxx           |    3 
 chart2/source/controller/dialogs/ChangingResource.cxx                              |    3 
 chart2/source/controller/dialogs/ChartTypeDialogController.cxx                     |    3 
 chart2/source/controller/dialogs/DataBrowser.cxx                                   |    3 
 chart2/source/controller/dialogs/DataBrowserModel.cxx                              |    3 
 chart2/source/controller/dialogs/DialogModel.cxx                                   |    3 
 chart2/source/controller/dialogs/ObjectNameProvider.cxx                            |    3 
 chart2/source/controller/dialogs/RangeEdit.cxx                                     |    3 
 chart2/source/controller/dialogs/RangeSelectionButton.cxx                          |    3 
 chart2/source/controller/dialogs/RangeSelectionHelper.cxx                          |    3 
 chart2/source/controller/dialogs/RangeSelectionListener.cxx                        |    3 
 chart2/source/controller/dialogs/TextDirectionListBox.cxx                          |    2 
 chart2/source/controller/dialogs/TimerTriggeredControllerLock.cxx                  |    3 
 chart2/source/controller/dialogs/TitleDialogData.cxx                               |    3 
 chart2/source/controller/dialogs/dlg_ChartType.cxx                                 |    3 
 chart2/source/controller/dialogs/dlg_ChartType_UNO.cxx                             |    3 
 chart2/source/controller/dialogs/dlg_CreationWizard.cxx                            |    3 
 chart2/source/controller/dialogs/dlg_CreationWizard_UNO.cxx                        |    3 
 chart2/source/controller/dialogs/dlg_DataEditor.cxx                                |    3 
 chart2/source/controller/dialogs/dlg_DataSource.cxx                                |    3 
 chart2/source/controller/dialogs/dlg_InsertAxis_Grid.cxx                           |    2 
 chart2/source/controller/dialogs/dlg_InsertDataLabel.cxx                           |    2 
 chart2/source/controller/dialogs/dlg_InsertErrorBars.cxx                           |    3 
 chart2/source/controller/dialogs/dlg_InsertLegend.cxx                              |    3 
 chart2/source/controller/dialogs/dlg_InsertTitle.cxx                               |    2 
 chart2/source/controller/dialogs/dlg_InsertTrendline.cxx                           |    3 
 chart2/source/controller/dialogs/dlg_NumberFormat.cxx                              |    3 
 chart2/source/controller/dialogs/dlg_ObjectProperties.cxx                          |    3 
 chart2/source/controller/dialogs/dlg_ShapeFont.cxx                                 |    3 
 chart2/source/controller/dialogs/dlg_ShapeParagraph.cxx                            |    3 
 chart2/source/controller/dialogs/dlg_View3D.cxx                                    |    3 
 chart2/source/controller/dialogs/res_BarGeometry.cxx                               |    2 
 chart2/source/controller/dialogs/res_DataLabel.cxx                                 |    3 
 chart2/source/controller/dialogs/res_ErrorBar.cxx                                  |    3 
 chart2/source/controller/dialogs/res_LegendPosition.cxx                            |    2 
 chart2/source/controller/dialogs/res_TextSeparator.cxx                             |    2 
 chart2/source/controller/dialogs/res_Titles.cxx                                    |    2 
 chart2/source/controller/dialogs/res_Trendline.cxx                                 |    3 
 chart2/source/controller/dialogs/tp_3D_SceneAppearance.cxx                         |    3 
 chart2/source/controller/dialogs/tp_3D_SceneGeometry.cxx                           |    3 
 chart2/source/controller/dialogs/tp_3D_SceneIllumination.cxx                       |    3 
 chart2/source/controller/dialogs/tp_AxisLabel.cxx                                  |    3 
 chart2/source/controller/dialogs/tp_AxisPositions.cxx                              |    3 
 chart2/source/controller/dialogs/tp_ChartType.cxx                                  |    3 
 chart2/source/controller/dialogs/tp_DataLabel.cxx                                  |    3 
 chart2/source/controller/dialogs/tp_DataSource.cxx                                 |    3 
 chart2/source/controller/dialogs/tp_DataSourceControls.cxx                         |    3 
 chart2/source/controller/dialogs/tp_ErrorBars.cxx                                  |    3 
 chart2/source/controller/dialogs/tp_LegendPosition.cxx                             |    3 
 chart2/source/controller/dialogs/tp_Location.cxx                                   |    3 
 chart2/source/controller/dialogs/tp_PointGeometry.cxx                              |    3 
 chart2/source/controller/dialogs/tp_PolarOptions.cxx                               |    3 
 chart2/source/controller/dialogs/tp_RangeChooser.cxx                               |    3 
 chart2/source/controller/dialogs/tp_Scale.cxx                                      |    3 
 chart2/source/controller/dialogs/tp_SeriesToAxis.cxx                               |    3 
 chart2/source/controller/dialogs/tp_TitleRotation.cxx                              |    2 
 chart2/source/controller/dialogs/tp_Trendline.cxx                                  |    3 
 chart2/source/controller/dialogs/tp_Wizard_TitlesAndObjects.cxx                    |    3 
 chart2/source/controller/drawinglayer/DrawViewWrapper.cxx                          |    3 
 chart2/source/controller/drawinglayer/ViewElementListProvider.cxx                  |    3 
 chart2/source/controller/itemsetwrapper/AxisItemConverter.cxx                      |    3 
 chart2/source/controller/itemsetwrapper/CharacterPropertyItemConverter.cxx         |    3 
 chart2/source/controller/itemsetwrapper/DataPointItemConverter.cxx                 |    3 
 chart2/source/controller/itemsetwrapper/ErrorBarItemConverter.cxx                  |    3 
 chart2/source/controller/itemsetwrapper/GraphicPropertyItemConverter.cxx           |    3 
 chart2/source/controller/itemsetwrapper/ItemConverter.cxx                          |    3 
 chart2/source/controller/itemsetwrapper/LegendItemConverter.cxx                    |    3 
 chart2/source/controller/itemsetwrapper/MultipleChartConverters.cxx                |    3 
 chart2/source/controller/itemsetwrapper/MultipleItemConverter.cxx                  |    3 
 chart2/source/controller/itemsetwrapper/RegressionCurveItemConverter.cxx           |    3 
 chart2/source/controller/itemsetwrapper/RegressionEquationItemConverter.cxx        |    3 
 chart2/source/controller/itemsetwrapper/SeriesOptionsItemConverter.cxx             |    3 
 chart2/source/controller/itemsetwrapper/StatisticsItemConverter.cxx                |    3 
 chart2/source/controller/itemsetwrapper/TitleItemConverter.cxx                     |    3 
 chart2/source/controller/main/ChartController.cxx                                  |    3 
 chart2/source/controller/main/ChartController_EditData.cxx                         |    3 
 chart2/source/controller/main/ChartController_Insert.cxx                           |    3 
 chart2/source/controller/main/ChartController_Position.cxx                         |    3 
 chart2/source/controller/main/ChartController_Properties.cxx                       |    3 
 chart2/source/controller/main/ChartController_TextEdit.cxx                         |    3 
 chart2/source/controller/main/ChartController_Tools.cxx                            |    3 
 chart2/source/controller/main/ChartController_Window.cxx                           |    3 
 chart2/source/controller/main/ChartDropTargetHelper.cxx                            |    3 
 chart2/source/controller/main/ChartFrameloader.cxx                                 |    3 
 chart2/source/controller/main/ChartRenderer.cxx                                    |    3 
 chart2/source/controller/main/ChartTransferable.cxx                                |    3 
 chart2/source/controller/main/ChartWindow.cxx                                      |    3 
 chart2/source/controller/main/CommandDispatch.cxx                                  |    3 
 chart2/source/controller/main/CommandDispatchContainer.cxx                         |    3 
 chart2/source/controller/main/ConfigurationAccess.cxx                              |    3 
 chart2/source/controller/main/ControllerCommandDispatch.cxx                        |    3 
 chart2/source/controller/main/DragMethod_Base.cxx                                  |    3 
 chart2/source/controller/main/DragMethod_PieSegment.cxx                            |    3 
 chart2/source/controller/main/DragMethod_RotateDiagram.cxx                         |    3 
 chart2/source/controller/main/DrawCommandDispatch.cxx                              |    3 
 chart2/source/controller/main/ElementSelector.cxx                                  |    3 
 chart2/source/controller/main/FeatureCommandDispatchBase.cxx                       |    3 
 chart2/source/controller/main/ImplUndoManager.cxx                                  |    3 
 chart2/source/controller/main/ObjectHierarchy.cxx                                  |    3 
 chart2/source/controller/main/PositionAndSizeHelper.cxx                            |    3 
 chart2/source/controller/main/SelectionHelper.cxx                                  |    3 
 chart2/source/controller/main/ShapeController.cxx                                  |    3 
 chart2/source/controller/main/ShapeToolbarController.cxx                           |    3 
 chart2/source/controller/main/StatusBarCommandDispatch.cxx                         |    3 
 chart2/source/controller/main/UndoCommandDispatch.cxx                              |    3 
 chart2/source/controller/main/UndoGuard.cxx                                        |    3 
 chart2/source/controller/main/UndoManager.cxx                                      |    3 
 chart2/source/controller/main/_serviceregistration_controller.cxx                  |    3 
 chart2/source/model/filter/XMLFilter.cxx                                           |    3 
 chart2/source/model/main/Axis.cxx                                                  |    3 
 chart2/source/model/main/BaseCoordinateSystem.cxx                                  |    3 
 chart2/source/model/main/CartesianCoordinateSystem.cxx                             |    3 
 chart2/source/model/main/ChartModel.cxx                                            |    3 
 chart2/source/model/main/ChartModel_Persistence.cxx                                |    3 
 chart2/source/model/main/DataPoint.cxx                                             |    3 
 chart2/source/model/main/DataPointProperties.cxx                                   |    3 
 chart2/source/model/main/DataSeries.cxx                                            |    3 
 chart2/source/model/main/DataSeriesProperties.cxx                                  |    3 
 chart2/source/model/main/Diagram.cxx                                               |    3 
 chart2/source/model/main/FormattedString.cxx                                       |    3 
 chart2/source/model/main/GridProperties.cxx                                        |    3 
 chart2/source/model/main/LayoutContainer.cxx                                       |    3 
 chart2/source/model/main/Legend.cxx                                                |    3 
 chart2/source/model/main/PageBackground.cxx                                        |    3 
 chart2/source/model/main/PolarCoordinateSystem.cxx                                 |    3 
 chart2/source/model/main/StockBar.cxx                                              |    3 
 chart2/source/model/main/Title.cxx                                                 |    3 
 chart2/source/model/main/Wall.cxx                                                  |    3 
 chart2/source/model/main/_serviceregistration_model.cxx                            |    3 
 chart2/source/model/template/AreaChartType.cxx                                     |    3 
 chart2/source/model/template/AreaChartTypeTemplate.cxx                             |    3 
 chart2/source/model/template/BarChartType.cxx                                      |    3 
 chart2/source/model/template/BarChartTypeTemplate.cxx                              |    3 
 chart2/source/model/template/BubbleChartType.cxx                                   |    3 
 chart2/source/model/template/BubbleChartTypeTemplate.cxx                           |    3 
 chart2/source/model/template/BubbleDataInterpreter.cxx                             |    3 
 chart2/source/model/template/CandleStickChartType.cxx                              |    3 
 chart2/source/model/template/ChartType.cxx                                         |    3 
 chart2/source/model/template/ChartTypeManager.cxx                                  |    3 
 chart2/source/model/template/ChartTypeTemplate.cxx                                 |    3 
 chart2/source/model/template/ColumnChartType.cxx                                   |    3 
 chart2/source/model/template/ColumnLineChartTypeTemplate.cxx                       |    3 
 chart2/source/model/template/ColumnLineDataInterpreter.cxx                         |    3 
 chart2/source/model/template/DataInterpreter.cxx                                   |    3 
 chart2/source/model/template/FilledNetChartType.cxx                                |    3 
 chart2/source/model/template/LineChartType.cxx                                     |    3 
 chart2/source/model/template/LineChartTypeTemplate.cxx                             |    3 
 chart2/source/model/template/NetChartType.cxx                                      |    3 
 chart2/source/model/template/NetChartTypeTemplate.cxx                              |    3 
 chart2/source/model/template/PieChartType.cxx                                      |    3 
 chart2/source/model/template/PieChartTypeTemplate.cxx                              |    3 
 chart2/source/model/template/ScatterChartType.cxx                                  |    3 
 chart2/source/model/template/ScatterChartTypeTemplate.cxx                          |    3 
 chart2/source/model/template/StockChartTypeTemplate.cxx                            |    3 
 chart2/source/model/template/StockDataInterpreter.cxx                              |    3 
 chart2/source/model/template/XYDataInterpreter.cxx                                 |    3 
 chart2/source/model/template/_serviceregistration_charttypes.cxx                   |    3 
 chart2/source/tools/AxisHelper.cxx                                                 |    3 
 chart2/source/tools/BaseGFXHelper.cxx                                              |    3 
 chart2/source/tools/CachedDataSequence.cxx                                         |    3 
 chart2/source/tools/CharacterProperties.cxx                                        |    3 
 chart2/source/tools/ChartDebugTrace.cxx                                            |    3 
 chart2/source/tools/ChartModelHelper.cxx                                           |    3 
 chart2/source/tools/ChartTypeHelper.cxx                                            |    3 
 chart2/source/tools/ChartViewHelper.cxx                                            |    3 
 chart2/source/tools/ColorPerPointHelper.cxx                                        |    3 
 chart2/source/tools/CommonConverters.cxx                                           |    3 
 chart2/source/tools/ConfigColorScheme.cxx                                          |    3 
 chart2/source/tools/ControllerLockGuard.cxx                                        |    3 
 chart2/source/tools/DataSeriesHelper.cxx                                           |    3 
 chart2/source/tools/DataSource.cxx                                                 |    3 
 chart2/source/tools/DataSourceHelper.cxx                                           |    3 
 chart2/source/tools/DiagramHelper.cxx                                              |    3 
 chart2/source/tools/ErrorBar.cxx                                                   |    3 
 chart2/source/tools/ExplicitCategoriesProvider.cxx                                 |    3 
 chart2/source/tools/ExponentialRegressionCurveCalculator.cxx                       |    3 
 chart2/source/tools/FillProperties.cxx                                             |    3 
 chart2/source/tools/FormattedStringHelper.cxx                                      |    2 
 chart2/source/tools/ImplOPropertySet.cxx                                           |    3 
 chart2/source/tools/InternalData.cxx                                               |    3 
 chart2/source/tools/InternalDataProvider.cxx                                       |    3 
 chart2/source/tools/LabeledDataSequence.cxx                                        |    3 
 chart2/source/tools/LegendHelper.cxx                                               |    2 
 chart2/source/tools/LifeTime.cxx                                                   |    3 
 chart2/source/tools/LineProperties.cxx                                             |    3 
 chart2/source/tools/LinearRegressionCurveCalculator.cxx                            |    3 
 chart2/source/tools/LogarithmicRegressionCurveCalculator.cxx                       |    3 
 chart2/source/tools/MeanValueRegressionCurveCalculator.cxx                         |    3 
 chart2/source/tools/MediaDescriptorHelper.cxx                                      |    3 
 chart2/source/tools/ModifyListenerCallBack.cxx                                     |    2 
 chart2/source/tools/ModifyListenerHelper.cxx                                       |    3 
 chart2/source/tools/MutexContainer.cxx                                             |    3 
 chart2/source/tools/NameContainer.cxx                                              |    3 
 chart2/source/tools/NamedFillProperties.cxx                                        |    3 
 chart2/source/tools/NamedLineProperties.cxx                                        |    3 
 chart2/source/tools/NamedProperties.cxx                                            |    3 
 chart2/source/tools/OPropertySet.cxx                                               |    3 
 chart2/source/tools/ObjectIdentifier.cxx                                           |    3 
 chart2/source/tools/PotentialRegressionCurveCalculator.cxx                         |    3 
 chart2/source/tools/PropertyHelper.cxx                                             |    3 
 chart2/source/tools/RangeHighlighter.cxx                                           |    3 
 chart2/source/tools/ReferenceSizeProvider.cxx                                      |    3 
 chart2/source/tools/RegressionCurveCalculator.cxx                                  |    3 
 chart2/source/tools/RegressionCurveHelper.cxx                                      |    3 
 chart2/source/tools/RegressionCurveModel.cxx                                       |    3 
 chart2/source/tools/RegressionEquation.cxx                                         |    3 
 chart2/source/tools/RelativePositionHelper.cxx                                     |    3 
 chart2/source/tools/RelativeSizeHelper.cxx                                         |    3 
 chart2/source/tools/ResId.cxx                                                      |    3 
 chart2/source/tools/RessourceManager.cxx                                           |    3 
 chart2/source/tools/Scaling.cxx                                                    |    3 
 chart2/source/tools/SceneProperties.cxx                                            |    3 
 chart2/source/tools/StatisticsHelper.cxx                                           |    3 
 chart2/source/tools/ThreeDHelper.cxx                                               |    3 
 chart2/source/tools/TitleHelper.cxx                                                |    2 
 chart2/source/tools/TrueGuard.cxx                                                  |    3 
 chart2/source/tools/UncachedDataSequence.cxx                                       |    3 
 chart2/source/tools/UserDefinedProperties.cxx                                      |    3 
 chart2/source/tools/WeakListenerAdapter.cxx                                        |    3 
 chart2/source/tools/WrappedDefaultProperty.cxx                                     |    3 
 chart2/source/tools/WrappedDirectStateProperty.cxx                                 |    3 
 chart2/source/tools/WrappedIgnoreProperty.cxx                                      |    3 
 chart2/source/tools/WrappedProperty.cxx                                            |    3 
 chart2/source/tools/WrappedPropertySet.cxx                                         |    3 
 chart2/source/tools/XMLRangeHelper.cxx                                             |    3 
 chart2/source/tools/_serviceregistration_tools.cxx                                 |    3 
 chart2/source/view/axes/MinimumAndMaximumSupplier.cxx                              |    3 
 chart2/source/view/axes/ScaleAutomatism.cxx                                        |    3 
 chart2/source/view/axes/TickmarkHelper.cxx                                         |    3 
 chart2/source/view/axes/VAxisBase.cxx                                              |    3 
 chart2/source/view/axes/VAxisOrGridBase.cxx                                        |    3 
 chart2/source/view/axes/VAxisProperties.cxx                                        |    3 
 chart2/source/view/axes/VCartesianAxis.cxx                                         |    3 
 chart2/source/view/axes/VCartesianCoordinateSystem.cxx                             |    3 
 chart2/source/view/axes/VCartesianGrid.cxx                                         |    3 
 chart2/source/view/axes/VCoordinateSystem.cxx                                      |    3 
 chart2/source/view/axes/VPolarAngleAxis.cxx                                        |    3 
 chart2/source/view/axes/VPolarAxis.cxx                                             |    3 
 chart2/source/view/axes/VPolarCoordinateSystem.cxx                                 |    3 
 chart2/source/view/axes/VPolarGrid.cxx                                             |    3 
 chart2/source/view/axes/VPolarRadiusAxis.cxx                                       |    3 
 chart2/source/view/charttypes/AreaChart.cxx                                        |    3 
 chart2/source/view/charttypes/BarChart.cxx                                         |    3 
 chart2/source/view/charttypes/BarPositionHelper.cxx                                |    3 
 chart2/source/view/charttypes/BubbleChart.cxx                                      |    3 
 chart2/source/view/charttypes/CandleStickChart.cxx                                 |    3 
 chart2/source/view/charttypes/CategoryPositionHelper.cxx                           |    3 
 chart2/source/view/charttypes/PieChart.cxx                                         |    3 
 chart2/source/view/charttypes/Splines.cxx                                          |    2 
 chart2/source/view/charttypes/VSeriesPlotter.cxx                                   |    3 
 chart2/source/view/diagram/VDiagram.cxx                                            |    2 
 chart2/source/view/main/ChartItemPool.cxx                                          |    3 
 chart2/source/view/main/ChartView.cxx                                              |    3 
 chart2/source/view/main/Clipping.cxx                                               |    3 
 chart2/source/view/main/DataPointSymbolSupplier.cxx                                |    3 
 chart2/source/view/main/DrawModelWrapper.cxx                                       |    3 
 chart2/source/view/main/LabelPositionHelper.cxx                                    |    3 
 chart2/source/view/main/Linear3DTransformation.cxx                                 |    3 
 chart2/source/view/main/NumberFormatterWrapper.cxx                                 |    3 
 chart2/source/view/main/PlotterBase.cxx                                            |    3 
 chart2/source/view/main/PlottingPositionHelper.cxx                                 |    3 
 chart2/source/view/main/PolarLabelPositionHelper.cxx                               |    3 
 chart2/source/view/main/PropertyMapper.cxx                                         |    3 
 chart2/source/view/main/ShapeFactory.cxx                                           |    3 
 chart2/source/view/main/Stripe.cxx                                                 |    3 
 chart2/source/view/main/VDataSeries.cxx                                            |    3 
 chart2/source/view/main/VLegend.cxx                                                |    3 
 chart2/source/view/main/VLegendSymbolFactory.cxx                                   |    3 
 chart2/source/view/main/VLineProperties.cxx                                        |    3 
 chart2/source/view/main/VPolarTransformation.cxx                                   |    3 
 chart2/source/view/main/VTitle.cxx                                                 |    3 
 chart2/source/view/main/_serviceregistration_view.cxx                              |    3 
 chart2/workbench/addin/sampleaddin.cxx                                             |    3 
 sc/inc/address.hxx                                                                 |    3 
 sc/inc/addruno.hxx                                                                 |    2 
 sc/inc/appoptio.hxx                                                                |    5 
 sc/inc/cell.hxx                                                                    |    2 
 sc/inc/document.hxx                                                                |   17 
 sc/inc/global.hxx                                                                  |    1 
 sc/inc/globstr.hrc                                                                 |   19 
 sc/inc/macromgr.hxx                                                                |   69 
 sc/inc/pch/precompiled_sc.cxx                                                      |    3 
 sc/inc/rangenam.hxx                                                                |    2 
 sc/inc/sc.hrc                                                                      |    6 
 sc/inc/scabstdlg.hxx                                                               |   13 
 sc/inc/scmod.hxx                                                                   |    4 
 sc/inc/shapeuno.hxx                                                                |    2 
 sc/inc/table.hxx                                                                   |    3 
 sc/inc/unonames.hxx                                                                |    4 
 sc/inc/userdat.hxx                                                                 |    4 
 sc/inc/viewuno.hxx                                                                 |    8 
 sc/sdi/cellsh.sdi                                                                  |    1 
 sc/sdi/drawsh.sdi                                                                  |    6 
 sc/sdi/scalc.sdi                                                                   |  115 
 sc/source/core/data/attarray.cxx                                                   |    2 
 sc/source/core/data/attrib.cxx                                                     |    2 
 sc/source/core/data/autonamecache.cxx                                              |    2 
 sc/source/core/data/bcaslot.cxx                                                    |    3 
 sc/source/core/data/cell.cxx                                                       |   49 
 sc/source/core/data/cell2.cxx                                                      |    2 
 sc/source/core/data/clipparam.cxx                                                  |    3 
 sc/source/core/data/column.cxx                                                     |    2 
 sc/source/core/data/column2.cxx                                                    |    2 
 sc/source/core/data/column3.cxx                                                    |   17 
 sc/source/core/data/compressedarray.cxx                                            |    3 
 sc/source/core/data/conditio.cxx                                                   |    3 
 sc/source/core/data/dbdocutl.cxx                                                   |    2 
 sc/source/core/data/dociter.cxx                                                    |    3 
 sc/source/core/data/docparam.cxx                                                   |    3 
 sc/source/core/data/docpool.cxx                                                    |    2 
 sc/source/core/data/documen2.cxx                                                   |    5 
 sc/source/core/data/documen3.cxx                                                   |    3 
 sc/source/core/data/documen4.cxx                                                   |    2 
 sc/source/core/data/documen5.cxx                                                   |    2 
 sc/source/core/data/documen6.cxx                                                   |    2 
 sc/source/core/data/documen7.cxx                                                   |    2 
 sc/source/core/data/documen8.cxx                                                   |   10 
 sc/source/core/data/documen9.cxx                                                   |    2 
 sc/source/core/data/document.cxx                                                   |   81 
 sc/source/core/data/dpcachetable.cxx                                               |    3 
 sc/source/core/data/dpdimsave.cxx                                                  |    2 
 sc/source/core/data/dpglobal.cxx                                                   |    2 
 sc/source/core/data/dpgroup.cxx                                                    |    2 
 sc/source/core/data/dpobject.cxx                                                   |    2 
 sc/source/core/data/dpoutput.cxx                                                   |    2 
 sc/source/core/data/dpoutputgeometry.cxx                                           |    3 
 sc/source/core/data/dpsave.cxx                                                     |    2 
 sc/source/core/data/dpsdbtab.cxx                                                   |    2 
 sc/source/core/data/dpshttab.cxx                                                   |    2 
 sc/source/core/data/dptabdat.cxx                                                   |    3 
 sc/source/core/data/dptablecache.cxx                                               |    3 
 sc/source/core/data/dptabres.cxx                                                   |    3 
 sc/source/core/data/dptabsrc.cxx                                                   |    2 
 sc/source/core/data/drawpage.cxx                                                   |    2 
 sc/source/core/data/drwlayer.cxx                                                   |    3 
 sc/source/core/data/fillinfo.cxx                                                   |    2 
 sc/source/core/data/global.cxx                                                     |    2 
 sc/source/core/data/global2.cxx                                                    |    2 
 sc/source/core/data/globalx.cxx                                                    |    3 
 sc/source/core/data/markarr.cxx                                                    |    2 
 sc/source/core/data/markdata.cxx                                                   |    2 
 sc/source/core/data/olinetab.cxx                                                   |    2 
 sc/source/core/data/pagepar.cxx                                                    |    3 
 sc/source/core/data/patattr.cxx                                                    |    2 
 sc/source/core/data/pivot2.cxx                                                     |    2 
 sc/source/core/data/poolhelp.cxx                                                   |    2 
 sc/source/core/data/postit.cxx                                                     |    3 
 sc/source/core/data/scdpoutputimpl.cxx                                             |    3 
 sc/source/core/data/segmenttree.cxx                                                |    2 
 sc/source/core/data/sheetevents.cxx                                                |    2 
 sc/source/core/data/sortparam.cxx                                                  |    2 
 sc/source/core/data/stlpool.cxx                                                    |    2 
 sc/source/core/data/stlsheet.cxx                                                   |    2 
 sc/source/core/data/tabbgcolor.cxx                                                 |    3 
 sc/source/core/data/table1.cxx                                                     |    2 
 sc/source/core/data/table2.cxx                                                     |    2 
 sc/source/core/data/table3.cxx                                                     |    2 
 sc/source/core/data/table4.cxx                                                     |    2 
 sc/source/core/data/table5.cxx                                                     |    2 
 sc/source/core/data/table6.cxx                                                     |    3 
 sc/source/core/data/tabprotection.cxx                                              |    2 
 sc/source/core/data/userdat.cxx                                                    |    2 
 sc/source/core/data/validat.cxx                                                    |    2 
 sc/source/core/inc/interpre.hxx                                                    |   11 
 sc/source/core/tool/addincfg.cxx                                                   |    2 
 sc/source/core/tool/addincol.cxx                                                   |    2 
 sc/source/core/tool/addinhelpid.cxx                                                |    2 
 sc/source/core/tool/addinlis.cxx                                                   |    2 
 sc/source/core/tool/address.cxx                                                    |    5 
 sc/source/core/tool/adiasync.cxx                                                   |    2 
 sc/source/core/tool/appoptio.cxx                                                   |    6 
 sc/source/core/tool/autoform.cxx                                                   |    2 
 sc/source/core/tool/callform.cxx                                                   |    2 
 sc/source/core/tool/cellform.cxx                                                   |    2 
 sc/source/core/tool/cellkeytranslator.cxx                                          |    3 
 sc/source/core/tool/chartarr.cxx                                                   |    2 
 sc/source/core/tool/charthelper.cxx                                                |    3 
 sc/source/core/tool/chartlis.cxx                                                   |    2 
 sc/source/core/tool/chartlock.cxx                                                  |    3 
 sc/source/core/tool/chartpos.cxx                                                   |    3 
 sc/source/core/tool/chgtrack.cxx                                                   |    3 
 sc/source/core/tool/chgviset.cxx                                                   |    2 
 sc/source/core/tool/collect.cxx                                                    |    2 
 sc/source/core/tool/compiler.cxx                                                   |    3 
 sc/source/core/tool/consoli.cxx                                                    |    2 
 sc/source/core/tool/dbcolect.cxx                                                   |    2 
 sc/source/core/tool/ddelink.cxx                                                    |    2 
 sc/source/core/tool/detdata.cxx                                                    |    2 
 sc/source/core/tool/detfunc.cxx                                                    |    2 
 sc/source/core/tool/docoptio.cxx                                                   |    2 
 sc/source/core/tool/doubleref.cxx                                                  |    2 
 sc/source/core/tool/editutil.cxx                                                   |    3 
 sc/source/core/tool/filtopt.cxx                                                    |    2 
 sc/source/core/tool/formulaparserpool.cxx                                          |    2 
 sc/source/core/tool/hints.cxx                                                      |    2 
 sc/source/core/tool/inputopt.cxx                                                   |    2 
 sc/source/core/tool/interpr1.cxx                                                   |   16 
 sc/source/core/tool/interpr2.cxx                                                   |    2 
 sc/source/core/tool/interpr3.cxx                                                   |    2 
 sc/source/core/tool/interpr4.cxx                                                   |  137 
 sc/source/core/tool/interpr5.cxx                                                   |    8 
 sc/source/core/tool/interpr6.cxx                                                   |    3 
 sc/source/core/tool/lookupcache.cxx                                                |    3 
 sc/source/core/tool/navicfg.cxx                                                    |    2 
 sc/source/core/tool/odffmap.cxx                                                    |    3 
 sc/source/core/tool/optutil.cxx                                                    |    2 
 sc/source/core/tool/parclass.cxx                                                   |    2 
 sc/source/core/tool/printopt.cxx                                                   |    2 
 sc/source/core/tool/prnsave.cxx                                                    |    2 
 sc/source/core/tool/progress.cxx                                                   |    2 
 sc/source/core/tool/queryparam.cxx                                                 |    2 
 sc/source/core/tool/rangelst.cxx                                                   |   23 
 sc/source/core/tool/rangenam.cxx                                                   |    2 
 sc/source/core/tool/rangeseq.cxx                                                   |    2 
 sc/source/core/tool/rangeutl.cxx                                                   |    2 
 sc/source/core/tool/rechead.cxx                                                    |    2 
 sc/source/core/tool/refdata.cxx                                                    |    3 
 sc/source/core/tool/reffind.cxx                                                    |    2 
 sc/source/core/tool/refreshtimer.cxx                                               |    2 
 sc/source/core/tool/reftokenhelper.cxx                                             |    3 
 sc/source/core/tool/refupdat.cxx                                                   |    2 
 sc/source/core/tool/scmatrix.cxx                                                   |    2 
 sc/source/core/tool/simplerangelist.cxx                                            |    3 
 sc/source/core/tool/stringutil.cxx                                                 |    3 
 sc/source/core/tool/subtotal.cxx                                                   |    3 
 sc/source/core/tool/token.cxx                                                      |    2 
 sc/source/core/tool/unitconv.cxx                                                   |    2 
 sc/source/core/tool/userlist.cxx                                                   |    2 
 sc/source/core/tool/viewopti.cxx                                                   |    2 
 sc/source/core/tool/zforauto.cxx                                                   |    3 
 sc/source/filter/dif/difexp.cxx                                                    |    2 
 sc/source/filter/dif/difimp.cxx                                                    |    2 
 sc/source/filter/excel/colrowst.cxx                                                |    2 
 sc/source/filter/excel/excdoc.cxx                                                  |  105 
 sc/source/filter/excel/excel.cxx                                                   |   21 
 sc/source/filter/excel/excform.cxx                                                 |    2 
 sc/source/filter/excel/excform8.cxx                                                |    2 
 sc/source/filter/excel/excimp8.cxx                                                 |   32 
 sc/source/filter/excel/excrecds.cxx                                                |   30 
 sc/source/filter/excel/exctools.cxx                                                |    2 
 sc/source/filter/excel/expop2.cxx                                                  |   72 
 sc/source/filter/excel/fontbuff.cxx                                                |    2 
 sc/source/filter/excel/frmbase.cxx                                                 |    2 
 sc/source/filter/excel/impop.cxx                                                   |    3 
 sc/source/filter/excel/makefile.mk                                                 |    4 
 sc/source/filter/excel/namebuff.cxx                                                |    2 
 sc/source/filter/excel/read.cxx                                                    |   71 
 sc/source/filter/excel/tokstack.cxx                                                |    2 
 sc/source/filter/excel/xechart.cxx                                                 |    2 
 sc/source/filter/excel/xecontent.cxx                                               |   35 
 sc/source/filter/excel/xeescher.cxx                                                |  119 
 sc/source/filter/excel/xeformula.cxx                                               |    2 
 sc/source/filter/excel/xehelper.cxx                                                |    2 
 sc/source/filter/excel/xelink.cxx                                                  |    2 
 sc/source/filter/excel/xename.cxx                                                  |    4 
 sc/source/filter/excel/xepage.cxx                                                  |   52 
 sc/source/filter/excel/xepivot.cxx                                                 |  151 
 sc/source/filter/excel/xerecord.cxx                                                |    2 
 sc/source/filter/excel/xeroot.cxx                                                  |    2 
 sc/source/filter/excel/xestream.cxx                                                |  426 +-
 sc/source/filter/excel/xestring.cxx                                                |    8 
 sc/source/filter/excel/xestyle.cxx                                                 |    9 
 sc/source/filter/excel/xetable.cxx                                                 |  213 -
 sc/source/filter/excel/xeview.cxx                                                  |    2 
 sc/source/filter/excel/xichart.cxx                                                 |    2 
 sc/source/filter/excel/xicontent.cxx                                               |    2 
 sc/source/filter/excel/xiescher.cxx                                                |  153 
 sc/source/filter/excel/xiformula.cxx                                               |    2 
 sc/source/filter/excel/xihelper.cxx                                                |    2 
 sc/source/filter/excel/xilink.cxx                                                  |    2 
 sc/source/filter/excel/xiname.cxx                                                  |   25 
 sc/source/filter/excel/xipage.cxx                                                  |    2 
 sc/source/filter/excel/xipivot.cxx                                                 |    2 
 sc/source/filter/excel/xiroot.cxx                                                  |    3 
 sc/source/filter/excel/xistream.cxx                                                |    2 
 sc/source/filter/excel/xistring.cxx                                                |    2 
 sc/source/filter/excel/xistyle.cxx                                                 |   67 
 sc/source/filter/excel/xiview.cxx                                                  |    2 
 sc/source/filter/excel/xladdress.cxx                                               |    2 
 sc/source/filter/excel/xlchart.cxx                                                 |    3 
 sc/source/filter/excel/xlescher.cxx                                                |    5 
 sc/source/filter/excel/xlformula.cxx                                               |    2 
 sc/source/filter/excel/xlpage.cxx                                                  |   32 
 sc/source/filter/excel/xlpivot.cxx                                                 |    2 
 sc/source/filter/excel/xlroot.cxx                                                  |    2 
 sc/source/filter/excel/xlstyle.cxx                                                 |    2 
 sc/source/filter/excel/xltoolbar.cxx                                               |  431 ++
 sc/source/filter/excel/xltoolbar.hxx                                               |   95 
 sc/source/filter/excel/xltools.cxx                                                 |   10 
 sc/source/filter/excel/xltracer.cxx                                                |    2 
 sc/source/filter/excel/xlview.cxx                                                  |    2 
 sc/source/filter/ftools/fapihelper.cxx                                             |    2 
 sc/source/filter/ftools/fprogressbar.cxx                                           |    2 
 sc/source/filter/ftools/ftools.cxx                                                 |    2 
 sc/source/filter/html/htmlexp.cxx                                                  |    2 
 sc/source/filter/html/htmlexp2.cxx                                                 |    2 
 sc/source/filter/html/htmlimp.cxx                                                  |    2 
 sc/source/filter/html/htmlpars.cxx                                                 |    2 
 sc/source/filter/inc/XclExpChangeTrack.hxx                                         |   46 
 sc/source/filter/inc/excdoc.hxx                                                    |    2 
 sc/source/filter/inc/excimp8.hxx                                                   |    5 
 sc/source/filter/inc/excrecds.hxx                                                  |    4 
 sc/source/filter/inc/exp_op.hxx                                                    |   15 
 sc/source/filter/inc/xcl97esc.hxx                                                  |   10 
 sc/source/filter/inc/xcl97rec.hxx                                                  |   33 
 sc/source/filter/inc/xecontent.hxx                                                 |    2 
 sc/source/filter/inc/xeescher.hxx                                                  |   37 
 sc/source/filter/inc/xepivot.hxx                                                   |    1 
 sc/source/filter/inc/xestream.hxx                                                  |   18 
 sc/source/filter/inc/xetable.hxx                                                   |   11 
 sc/source/filter/inc/xiescher.hxx                                                  |   51 
 sc/source/filter/inc/xistyle.hxx                                                   |    2 
 sc/source/filter/inc/xlescher.hxx                                                  |    2 
 sc/source/filter/inc/xlpage.hxx                                                    |    6 
 sc/source/filter/lotus/expop.cxx                                                   |    2 
 sc/source/filter/lotus/export.cxx                                                  |    2 
 sc/source/filter/lotus/filter.cxx                                                  |    2 
 sc/source/filter/lotus/lotattr.cxx                                                 |    2 
 sc/source/filter/lotus/lotform.cxx                                                 |    2 
 sc/source/filter/lotus/lotimpop.cxx                                                |    2 
 sc/source/filter/lotus/lotread.cxx                                                 |    2 
 sc/source/filter/lotus/lotus.cxx                                                   |    2 
 sc/source/filter/lotus/memory.cxx                                                  |    2 
 sc/source/filter/lotus/op.cxx                                                      |    3 
 sc/source/filter/lotus/optab.cxx                                                   |    3 
 sc/source/filter/lotus/tool.cxx                                                    |    2 
 sc/source/filter/qpro/biff.cxx                                                     |    2 
 sc/source/filter/qpro/qpro.cxx                                                     |    3 
 sc/source/filter/qpro/qproform.cxx                                                 |    3 
 sc/source/filter/qpro/qprostyle.cxx                                                |    3 
 sc/source/filter/rtf/eeimpars.cxx                                                  |    2 
 sc/source/filter/rtf/expbase.cxx                                                   |    2 
 sc/source/filter/rtf/rtfexp.cxx                                                    |    2 
 sc/source/filter/rtf/rtfimp.cxx                                                    |    2 
 sc/source/filter/rtf/rtfparse.cxx                                                  |    2 
 sc/source/filter/starcalc/scflt.cxx                                                |    2 
 sc/source/filter/starcalc/scfobj.cxx                                               |    2 
 sc/source/filter/xcl97/XclExpChangeTrack.cxx                                       |  471 ++
 sc/source/filter/xcl97/XclImpChangeTrack.cxx                                       |    2 
 sc/source/filter/xcl97/xcl97dum.cxx                                                |    2 
 sc/source/filter/xcl97/xcl97esc.cxx                                                |   56 
 sc/source/filter/xcl97/xcl97rec.cxx                                                |  393 +
 sc/source/filter/xml/XMLCalculationSettingsContext.cxx                             |    3 
 sc/source/filter/xml/XMLCellRangeSourceContext.cxx                                 |    2 
 sc/source/filter/xml/XMLChangeTrackingExportHelper.cxx                             |    3 
 sc/source/filter/xml/XMLChangeTrackingImportHelper.cxx                             |    3 
 sc/source/filter/xml/XMLCodeNameProvider.cxx                                       |    3 
 sc/source/filter/xml/XMLColumnRowGroupExport.cxx                                   |    2 
 sc/source/filter/xml/XMLConsolidationContext.cxx                                   |    2 
 sc/source/filter/xml/XMLConverter.cxx                                              |    2 
 sc/source/filter/xml/XMLDDELinksContext.cxx                                        |    3 
 sc/source/filter/xml/XMLDetectiveContext.cxx                                       |    2 
 sc/source/filter/xml/XMLEmptyContext.cxx                                           |    3 
 sc/source/filter/xml/XMLExportDDELinks.cxx                                         |    3 
 sc/source/filter/xml/XMLExportDataPilot.cxx                                        |    3 
 sc/source/filter/xml/XMLExportDatabaseRanges.cxx                                   |    3 
 sc/source/filter/xml/XMLExportIterator.cxx                                         |    2 
 sc/source/filter/xml/XMLExportSharedData.cxx                                       |    3 
 sc/source/filter/xml/XMLStylesExportHelper.cxx                                     |    3 
 sc/source/filter/xml/XMLStylesImportHelper.cxx                                     |    2 
 sc/source/filter/xml/XMLTableHeaderFooterContext.cxx                               |    3 
 sc/source/filter/xml/XMLTableMasterPageExport.cxx                                  |    2 
 sc/source/filter/xml/XMLTableShapeImportHelper.cxx                                 |    3 
 sc/source/filter/xml/XMLTableShapeResizer.cxx                                      |    3 
 sc/source/filter/xml/XMLTableShapesContext.cxx                                     |    2 
 sc/source/filter/xml/XMLTableSourceContext.cxx                                     |    2 
 sc/source/filter/xml/XMLTextPContext.cxx                                           |    2 
 sc/source/filter/xml/XMLTrackedChangesContext.cxx                                  |    2 
 sc/source/filter/xml/sheetdata.cxx                                                 |    2 
 sc/source/filter/xml/xmlannoi.cxx                                                  |    2 
 sc/source/filter/xml/xmlbodyi.cxx                                                  |    2 
 sc/source/filter/xml/xmlcelli.cxx                                                  |    3 
 sc/source/filter/xml/xmlcoli.cxx                                                   |    3 
 sc/source/filter/xml/xmlconti.cxx                                                  |    3 
 sc/source/filter/xml/xmlcvali.cxx                                                  |    3 
 sc/source/filter/xml/xmldpimp.cxx                                                  |    3 
 sc/source/filter/xml/xmldrani.cxx                                                  |    2 
 sc/source/filter/xml/xmlexprt.cxx                                                  |   37 
 sc/source/filter/xml/xmlexternaltabi.cxx                                           |    3 
 sc/source/filter/xml/xmlfilti.cxx                                                  |    2 
 sc/source/filter/xml/xmlfonte.cxx                                                  |    3 
 sc/source/filter/xml/xmlimprt.cxx                                                  |    2 
 sc/source/filter/xml/xmllabri.cxx                                                  |    2 
 sc/source/filter/xml/xmlnexpi.cxx                                                  |    2 
 sc/source/filter/xml/xmlrowi.cxx                                                   |    3 
 sc/source/filter/xml/xmlsceni.cxx                                                  |    2 
 sc/source/filter/xml/xmlsorti.cxx                                                  |    2 
 sc/source/filter/xml/xmlstyle.cxx                                                  |    3 
 sc/source/filter/xml/xmlstyli.cxx                                                  |    2 
 sc/source/filter/xml/xmlsubti.cxx                                                  |    3 
 sc/source/filter/xml/xmltabi.cxx                                                   |    3 
 sc/source/filter/xml/xmlwrap.cxx                                                   |    2 
 sc/source/ui/Accessibility/AccessibilityHints.cxx                                  |    3 
 sc/source/ui/Accessibility/AccessibleCell.cxx                                      |    3 
 sc/source/ui/Accessibility/AccessibleCellBase.cxx                                  |    3 
 sc/source/ui/Accessibility/AccessibleContextBase.cxx                               |    2 
 sc/source/ui/Accessibility/AccessibleCsvControl.cxx                                |    2 
 sc/source/ui/Accessibility/AccessibleDataPilotControl.cxx                          |    3 
 sc/source/ui/Accessibility/AccessibleDocument.cxx                                  |    3 
 sc/source/ui/Accessibility/AccessibleDocumentBase.cxx                              |    3 
 sc/source/ui/Accessibility/AccessibleDocumentPagePreview.cxx                       |    3 
 sc/source/ui/Accessibility/AccessibleEditObject.cxx                                |    2 
 sc/source/ui/Accessibility/AccessibleFilterMenu.cxx                                |    3 
 sc/source/ui/Accessibility/AccessibleFilterMenuItem.cxx                            |    2 
 sc/source/ui/Accessibility/AccessibleFilterTopWindow.cxx                           |    2 
 sc/source/ui/Accessibility/AccessibleGlobal.cxx                                    |    2 
 sc/source/ui/Accessibility/AccessiblePageHeader.cxx                                |    3 
 sc/source/ui/Accessibility/AccessiblePageHeaderArea.cxx                            |    3 
 sc/source/ui/Accessibility/AccessiblePreviewCell.cxx                               |    2 
 sc/source/ui/Accessibility/AccessiblePreviewHeaderCell.cxx                         |    3 
 sc/source/ui/Accessibility/AccessiblePreviewTable.cxx                              |    2 
 sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx                               |    3 
 sc/source/ui/Accessibility/AccessibleTableBase.cxx                                 |    3 
 sc/source/ui/Accessibility/AccessibleText.cxx                                      |    3 
 sc/source/ui/Accessibility/DrawModelBroadcaster.cxx                                |    3 
 sc/source/ui/app/client.cxx                                                        |    2 
 sc/source/ui/app/drwtrans.cxx                                                      |    2 
 sc/source/ui/app/inputhdl.cxx                                                      |    2 
 sc/source/ui/app/inputwin.cxx                                                      |    2 
 sc/source/ui/app/lnktrans.cxx                                                      |    2 
 sc/source/ui/app/msgpool.cxx                                                       |    2 
 sc/source/ui/app/rfindlst.cxx                                                      |    2 
 sc/source/ui/app/scdll.cxx                                                         |    3 
 sc/source/ui/app/scmod.cxx                                                         |    2 
 sc/source/ui/app/scmod2.cxx                                                        |    2 
 sc/source/ui/app/seltrans.cxx                                                      |    2 
 sc/source/ui/app/template.cxx                                                      |    2 
 sc/source/ui/app/transobj.cxx                                                      |    2 
 sc/source/ui/app/typemap.cxx                                                       |    3 
 sc/source/ui/app/uiitems.cxx                                                       |    3 
 sc/source/ui/app/wtcdummy.cxx                                                      |    3 
 sc/source/ui/attrdlg/attrdlg.cxx                                                   |    2 
 sc/source/ui/attrdlg/condfrmt.cxx                                                  |    2 
 sc/source/ui/attrdlg/scabstdlg.cxx                                                 |    3 
 sc/source/ui/attrdlg/scdlgfact.cxx                                                 |   25 
 sc/source/ui/attrdlg/scdlgfact.hxx                                                 |   10 
 sc/source/ui/attrdlg/scuiexp.cxx                                                   |    3 
 sc/source/ui/attrdlg/tabpages.cxx                                                  |    3 
 sc/source/ui/cctrl/cbuttonw.cxx                                                    |    2 
 sc/source/ui/cctrl/dpcontrol.cxx                                                   |   24 
 sc/source/ui/cctrl/editfield.cxx                                                   |    2 
 sc/source/ui/cctrl/popmenu.cxx                                                     |    2 
 sc/source/ui/cctrl/tbinsert.cxx                                                    |    2 
 sc/source/ui/cctrl/tbzoomsliderctrl.cxx                                            |    3 
 sc/source/ui/dbgui/asciiopt.cxx                                                    |    2 
 sc/source/ui/dbgui/consdlg.cxx                                                     |    2 
 sc/source/ui/dbgui/csvcontrol.cxx                                                  |    2 
 sc/source/ui/dbgui/csvgrid.cxx                                                     |    2 
 sc/source/ui/dbgui/csvruler.cxx                                                    |    2 
 sc/source/ui/dbgui/csvsplits.cxx                                                   |    2 
 sc/source/ui/dbgui/csvtablebox.cxx                                                 |    2 
 sc/source/ui/dbgui/dapidata.cxx                                                    |    2 
 sc/source/ui/dbgui/dapitype.cxx                                                    |    2 
 sc/source/ui/dbgui/dbnamdlg.cxx                                                    |    2 
 sc/source/ui/dbgui/dpgroupdlg.cxx                                                  |    2 
 sc/source/ui/dbgui/expftext.cxx                                                    |    2 
 sc/source/ui/dbgui/fieldwnd.cxx                                                    |    2 
 sc/source/ui/dbgui/filtdlg.cxx                                                     |    3 
 sc/source/ui/dbgui/foptmgr.cxx                                                     |    3 
 sc/source/ui/dbgui/imoptdlg.cxx                                                    |    3 
 sc/source/ui/dbgui/pfiltdlg.cxx                                                    |    2 
 sc/source/ui/dbgui/pvfundlg.cxx                                                    |    2 
 sc/source/ui/dbgui/pvlaydlg.cxx                                                    |    2 
 sc/source/ui/dbgui/scendlg.cxx                                                     |    2 
 sc/source/ui/dbgui/scuiasciiopt.cxx                                                |    3 
 sc/source/ui/dbgui/scuiimoptdlg.cxx                                                |    3 
 sc/source/ui/dbgui/sfiltdlg.cxx                                                    |    2 
 sc/source/ui/dbgui/sortdlg.cxx                                                     |    3 
 sc/source/ui/dbgui/subtdlg.cxx                                                     |    2 
 sc/source/ui/dbgui/textimportoptions.cxx                                           |    2 
 sc/source/ui/dbgui/tpsort.cxx                                                      |    2 
 sc/source/ui/dbgui/tpsubt.cxx                                                      |    2 
 sc/source/ui/dbgui/validate.cxx                                                    |    3 
 sc/source/ui/docshell/arealink.cxx                                                 |    2 
 sc/source/ui/docshell/autostyl.cxx                                                 |    2 
 sc/source/ui/docshell/dbdocfun.cxx                                                 |    2 
 sc/source/ui/docshell/dbdocimp.cxx                                                 |    2 
 sc/source/ui/docshell/docfunc.cxx                                                  |   14 
 sc/source/ui/docshell/docsh.cxx                                                    |    9 
 sc/source/ui/docshell/docsh2.cxx                                                   |    3 
 sc/source/ui/docshell/docsh3.cxx                                                   |    3 
 sc/source/ui/docshell/docsh4.cxx                                                   |    3 
 sc/source/ui/docshell/docsh5.cxx                                                   |   53 
 sc/source/ui/docshell/docsh6.cxx                                                   |    2 
 sc/source/ui/docshell/docsh7.cxx                                                   |    2 
 sc/source/ui/docshell/docsh8.cxx                                                   |    2 
 sc/source/ui/docshell/editable.cxx                                                 |    2 
 sc/source/ui/docshell/externalrefmgr.cxx                                           |    2 
 sc/source/ui/docshell/hiranges.cxx                                                 |    2 
 sc/source/ui/docshell/impex.cxx                                                    |    3 
 sc/source/ui/docshell/macromgr.cxx                                                 |  216 +
 sc/source/ui/docshell/makefile.mk                                                  |    9 
 sc/source/ui/docshell/olinefun.cxx                                                 |    2 
 sc/source/ui/docshell/pagedata.cxx                                                 |    2 
 sc/source/ui/docshell/pntlock.cxx                                                  |    2 
 sc/source/ui/docshell/servobj.cxx                                                  |    2 
 sc/source/ui/docshell/sizedev.cxx                                                  |    2 
 sc/source/ui/docshell/tablink.cxx                                                  |    2 
 sc/source/ui/docshell/tpstat.cxx                                                   |    2 
 sc/source/ui/drawfunc/chartsh.cxx                                                  |    2 
 sc/source/ui/drawfunc/drawsh.cxx                                                   |    6 
 sc/source/ui/drawfunc/drawsh2.cxx                                                  |    6 
 sc/source/ui/drawfunc/drawsh4.cxx                                                  |    2 
 sc/source/ui/drawfunc/drawsh5.cxx                                                  |    6 
 sc/source/ui/drawfunc/drformsh.cxx                                                 |    2 
 sc/source/ui/drawfunc/drtxtob.cxx                                                  |    2 
 sc/source/ui/drawfunc/drtxtob1.cxx                                                 |    2 
 sc/source/ui/drawfunc/drtxtob2.cxx                                                 |    2 
 sc/source/ui/drawfunc/fuconarc.cxx                                                 |    2 
 sc/source/ui/drawfunc/fuconcustomshape.cxx                                         |    3 
 sc/source/ui/drawfunc/fuconpol.cxx                                                 |    3 
 sc/source/ui/drawfunc/fuconrec.cxx                                                 |    2 
 sc/source/ui/drawfunc/fuconstr.cxx                                                 |    2 
 sc/source/ui/drawfunc/fuconuno.cxx                                                 |    2 
 sc/source/ui/drawfunc/fudraw.cxx                                                   |    7 
 sc/source/ui/drawfunc/fuins1.cxx                                                   |    3 
 sc/source/ui/drawfunc/fuins2.cxx                                                   |    2 
 sc/source/ui/drawfunc/fumark.cxx                                                   |    2 
 sc/source/ui/drawfunc/fupoor.cxx                                                   |    3 
 sc/source/ui/drawfunc/fusel.cxx                                                    |   18 
 sc/source/ui/drawfunc/fusel2.cxx                                                   |    2 
 sc/source/ui/drawfunc/futext.cxx                                                   |    2 
 sc/source/ui/drawfunc/futext2.cxx                                                  |    2 
 sc/source/ui/drawfunc/futext3.cxx                                                  |    2 
 sc/source/ui/drawfunc/graphsh.cxx                                                  |    2 
 sc/source/ui/drawfunc/makefile.mk                                                  |    1 
 sc/source/ui/drawfunc/mediash.cxx                                                  |    3 
 sc/source/ui/drawfunc/objdraw.src                                                  |    6 
 sc/source/ui/drawfunc/oleobjsh.cxx                                                 |    2 
 sc/source/ui/formdlg/dwfunctr.cxx                                                  |    2 
 sc/source/ui/formdlg/formdata.cxx                                                  |    2 
 sc/source/ui/formdlg/formula.cxx                                                   |    2 
 sc/source/ui/formdlg/privsplt.cxx                                                  |    2 
 sc/source/ui/inc/asciiopt.hxx                                                      |    2 
 sc/source/ui/inc/datafdlg.hrc                                                      |   40 
 sc/source/ui/inc/datafdlg.hxx                                                      |  111 
 sc/source/ui/inc/docfunc.hxx                                                       |    2 
 sc/source/ui/inc/docsh.hxx                                                         |    5 
 sc/source/ui/inc/dpcontrol.hxx                                                     |    4 
 sc/source/ui/inc/drawsh.hxx                                                        |    2 
 sc/source/ui/inc/impex.hxx                                                         |    2 
 sc/source/ui/inc/tabcont.hxx                                                       |    1 
 sc/source/ui/inc/tabvwsh.hxx                                                       |    4 
 sc/source/ui/inc/undodat.hxx                                                       |   36 
 sc/source/ui/inc/viewfunc.hxx                                                      |   11 
 sc/source/ui/miscdlgs/acredlin.cxx                                                 |    2 
 sc/source/ui/miscdlgs/anyrefdg.cxx                                                 |    2 
 sc/source/ui/miscdlgs/autofmt.cxx                                                  |    2 
 sc/source/ui/miscdlgs/conflictsdlg.cxx                                             |    3 
 sc/source/ui/miscdlgs/crdlg.cxx                                                    |    2 
 sc/source/ui/miscdlgs/crnrdlg.cxx                                                  |    3 
 sc/source/ui/miscdlgs/datafdlg.cxx                                                 |  414 ++
 sc/source/ui/miscdlgs/delcldlg.cxx                                                 |    2 
 sc/source/ui/miscdlgs/delcodlg.cxx                                                 |    2 
 sc/source/ui/miscdlgs/filldlg.cxx                                                  |    2 
 sc/source/ui/miscdlgs/groupdlg.cxx                                                 |    2 
 sc/source/ui/miscdlgs/highred.cxx                                                  |    2 
 sc/source/ui/miscdlgs/inscldlg.cxx                                                 |    2 
 sc/source/ui/miscdlgs/inscodlg.cxx                                                 |    2 
 sc/source/ui/miscdlgs/instbdlg.cxx                                                 |    2 
 sc/source/ui/miscdlgs/lbseldlg.cxx                                                 |    2 
 sc/source/ui/miscdlgs/linkarea.cxx                                                 |    2 
 sc/source/ui/miscdlgs/makefile.mk                                                  |    1 
 sc/source/ui/miscdlgs/mtrindlg.cxx                                                 |    2 
 sc/source/ui/miscdlgs/mvtabdlg.cxx                                                 |    2 
 sc/source/ui/miscdlgs/namecrea.cxx                                                 |    2 
 sc/source/ui/miscdlgs/namepast.cxx                                                 |    2 
 sc/source/ui/miscdlgs/optsolver.cxx                                                |    2 
 sc/source/ui/miscdlgs/protectiondlg.cxx                                            |    3 
 sc/source/ui/miscdlgs/redcom.cxx                                                   |    2 
 sc/source/ui/miscdlgs/retypepassdlg.cxx                                            |    3 
 sc/source/ui/miscdlgs/scuiautofmt.cxx                                              |    3 
 sc/source/ui/miscdlgs/sharedocdlg.cxx                                              |    3 
 sc/source/ui/miscdlgs/shtabdlg.cxx                                                 |    2 
 sc/source/ui/miscdlgs/simpref.cxx                                                  |    2 
 sc/source/ui/miscdlgs/solveroptions.cxx                                            |    2 
 sc/source/ui/miscdlgs/solverutil.cxx                                               |    2 
 sc/source/ui/miscdlgs/solvrdlg.cxx                                                 |    2 
 sc/source/ui/miscdlgs/strindlg.cxx                                                 |    2 
 sc/source/ui/miscdlgs/tabbgcolordlg.cxx                                            |    3 
 sc/source/ui/miscdlgs/tabopdlg.cxx                                                 |    2 
 sc/source/ui/miscdlgs/textdlgs.cxx                                                 |    2 
 sc/source/ui/miscdlgs/warnbox.cxx                                                  |    2 
 sc/source/ui/namedlg/namedlg.cxx                                                   |    2 
 sc/source/ui/navipi/content.cxx                                                    |    2 
 sc/source/ui/navipi/navcitem.cxx                                                   |    2 
 sc/source/ui/navipi/navipi.cxx                                                     |    2 
 sc/source/ui/navipi/scenwnd.cxx                                                    |    2 
 sc/source/ui/optdlg/opredlin.cxx                                                   |    2 
 sc/source/ui/optdlg/tpcalc.cxx                                                     |    2 
 sc/source/ui/optdlg/tpformula.cxx                                                  |    3 
 sc/source/ui/optdlg/tpprint.cxx                                                    |    2 
 sc/source/ui/optdlg/tpusrlst.cxx                                                   |    2 
 sc/source/ui/optdlg/tpview.cxx                                                     |    2 
 sc/source/ui/pagedlg/areasdlg.cxx                                                  |    2 
 sc/source/ui/pagedlg/hfedtdlg.cxx                                                  |    2 
 sc/source/ui/pagedlg/scuitphfedit.cxx                                              |    3 
 sc/source/ui/pagedlg/tphf.cxx                                                      |    2 
 sc/source/ui/pagedlg/tphfedit.cxx                                                  |    2 
 sc/source/ui/pagedlg/tptable.cxx                                                   |    2 
 sc/source/ui/src/datafdlg.src                                                      |   95 
 sc/source/ui/src/globstr.src                                                       |   73 
 sc/source/ui/src/makefile.mk                                                       |    1 
 sc/source/ui/styleui/styledlg.cxx                                                  |    2 
 sc/source/ui/undo/areasave.cxx                                                     |    2 
 sc/source/ui/undo/refundo.cxx                                                      |    2 
 sc/source/ui/undo/target.cxx                                                       |    3 
 sc/source/ui/undo/undobase.cxx                                                     |    2 
 sc/source/ui/undo/undoblk.cxx                                                      |    2 
 sc/source/ui/undo/undoblk2.cxx                                                     |    2 
 sc/source/ui/undo/undoblk3.cxx                                                     |    2 
 sc/source/ui/undo/undocell.cxx                                                     |    2 
 sc/source/ui/undo/undodat.cxx                                                      |  211 +
 sc/source/ui/undo/undodraw.cxx                                                     |    2 
 sc/source/ui/undo/undoolk.cxx                                                      |    2 
 sc/source/ui/undo/undostyl.cxx                                                     |    2 
 sc/source/ui/undo/undotab.cxx                                                      |    2 
 sc/source/ui/undo/undoutil.cxx                                                     |    3 
 sc/source/ui/unoobj/ChartRangeSelectionListener.cxx                                |    3 
 sc/source/ui/unoobj/addruno.cxx                                                    |   32 
 sc/source/ui/unoobj/afmtuno.cxx                                                    |    2 
 sc/source/ui/unoobj/appluno.cxx                                                    |    2 
 sc/source/ui/unoobj/celllistsource.cxx                                             |    3 
 sc/source/ui/unoobj/cellsuno.cxx                                                   |    2 
 sc/source/ui/unoobj/cellvaluebinding.cxx                                           |    3 
 sc/source/ui/unoobj/chart2uno.cxx                                                  |    3 
 sc/source/ui/unoobj/chartuno.cxx                                                   |    2 
 sc/source/ui/unoobj/confuno.cxx                                                    |    2 
 sc/source/ui/unoobj/convuno.cxx                                                    |    2 
 sc/source/ui/unoobj/cursuno.cxx                                                    |    2 
 sc/source/ui/unoobj/dapiuno.cxx                                                    |    2 
 sc/source/ui/unoobj/datauno.cxx                                                    |    2 
 sc/source/ui/unoobj/defltuno.cxx                                                   |    2 
 sc/source/ui/unoobj/detreg.cxx                                                     |    2 
 sc/source/ui/unoobj/dispuno.cxx                                                    |    2 
 sc/source/ui/unoobj/docuno.cxx                                                     |   32 
 sc/source/ui/unoobj/drdefuno.cxx                                                   |    2 
 sc/source/ui/unoobj/editsrc.cxx                                                    |    2 
 sc/source/ui/unoobj/eventuno.cxx                                                   |    2 
 sc/source/ui/unoobj/fielduno.cxx                                                   |    2 
 sc/source/ui/unoobj/filtuno.cxx                                                    |    2 
 sc/source/ui/unoobj/fmtuno.cxx                                                     |    2 
 sc/source/ui/unoobj/forbiuno.cxx                                                   |    2 
 sc/source/ui/unoobj/funcuno.cxx                                                    |    2 
 sc/source/ui/unoobj/linkuno.cxx                                                    |    2 
 sc/source/ui/unoobj/listenercalls.cxx                                              |    2 
 sc/source/ui/unoobj/miscuno.cxx                                                    |    2 
 sc/source/ui/unoobj/nameuno.cxx                                                    |    2 
 sc/source/ui/unoobj/notesuno.cxx                                                   |    8 
 sc/source/ui/unoobj/optuno.cxx                                                     |    2 
 sc/source/ui/unoobj/pageuno.cxx                                                    |    3 
 sc/source/ui/unoobj/scdetect.cxx                                                   |    2 
 sc/source/ui/unoobj/servuno.cxx                                                    |   27 
 sc/source/ui/unoobj/shapeuno.cxx                                                   |   67 
 sc/source/ui/unoobj/srchuno.cxx                                                    |    2 
 sc/source/ui/unoobj/styleuno.cxx                                                   |    2 
 sc/source/ui/unoobj/targuno.cxx                                                    |    2 
 sc/source/ui/unoobj/textuno.cxx                                                    |    2 
 sc/source/ui/unoobj/tokenuno.cxx                                                   |    2 
 sc/source/ui/unoobj/unodoc.cxx                                                     |    2 
 sc/source/ui/unoobj/unoguard.cxx                                                   |    2 
 sc/source/ui/unoobj/unoreflist.cxx                                                 |    2 
 sc/source/ui/unoobj/viewuno.cxx                                                    |  148 
 sc/source/ui/unoobj/warnpassword.cxx                                               |    2 
 sc/source/ui/vba/excelvbahelper.cxx                                                |  207 -
 sc/source/ui/vba/excelvbahelper.hxx                                                |   39 
 sc/source/ui/vba/makefile.mk                                                       |   14 
 sc/source/ui/vba/service.cxx                                                       |    3 
 sc/source/ui/vba/testvba/testvba.cxx                                               |    9 
 sc/source/ui/vba/vbaapplication.cxx                                                |  795 +++-
 sc/source/ui/vba/vbaapplication.hxx                                                |   33 
 sc/source/ui/vba/vbaassistant.cxx                                                  |    3 
 sc/source/ui/vba/vbaaxes.cxx                                                       |    2 
 sc/source/ui/vba/vbaaxis.cxx                                                       |    2 
 sc/source/ui/vba/vbaaxistitle.cxx                                                  |    2 
 sc/source/ui/vba/vbaborders.cxx                                                    |    3 
 sc/source/ui/vba/vbacharacters.cxx                                                 |    2 
 sc/source/ui/vba/vbachart.cxx                                                      |    2 
 sc/source/ui/vba/vbachartobject.cxx                                                |    3 
 sc/source/ui/vba/vbachartobjects.cxx                                               |    2 
 sc/source/ui/vba/vbacharts.cxx                                                     |    2 
 sc/source/ui/vba/vbacharttitle.cxx                                                 |    2 
 sc/source/ui/vba/vbacomment.cxx                                                    |   29 
 sc/source/ui/vba/vbacomments.cxx                                                   |    3 
 sc/source/ui/vba/vbacommentshape.cxx                                               |   46 
 sc/source/ui/vba/vbacommentshape.hxx                                               |   46 
 sc/source/ui/vba/vbacondition.cxx                                                  |    2 
 sc/source/ui/vba/vbadialog.cxx                                                     |   82 
 sc/source/ui/vba/vbadialog.hxx                                                     |    3 
 sc/source/ui/vba/vbadialogs.cxx                                                    |   16 
 sc/source/ui/vba/vbadialogs.hxx                                                    |    1 
 sc/source/ui/vba/vbaeventshelper.cxx                                               |   13 
 sc/source/ui/vba/vbafiledialog.cxx                                                 |  183 
 sc/source/ui/vba/vbafiledialog.hxx                                                 |   60 
 sc/source/ui/vba/vbafiledialogselecteditems.cxx                                    |  154 
 sc/source/ui/vba/vbafiledialogselecteditems.hxx                                    |   87 
 sc/source/ui/vba/vbafilesearch.cxx                                                 |  242 +
 sc/source/ui/vba/vbafilesearch.hxx                                                 |   77 
 sc/source/ui/vba/vbafont.cxx                                                       |    3 
 sc/source/ui/vba/vbaformat.cxx                                                     |    2 
 sc/source/ui/vba/vbaformatcondition.cxx                                            |    3 
 sc/source/ui/vba/vbaformatconditions.cxx                                           |    2 
 sc/source/ui/vba/vbafoundfiles.cxx                                                 |  143 
 sc/source/ui/vba/vbafoundfiles.hxx                                                 |   88 
 sc/source/ui/vba/vbaglobals.cxx                                                    |    8 
 sc/source/ui/vba/vbaglobals.hxx                                                    |    1 
 sc/source/ui/vba/vbahelper.cxx                                                     |   97 
 sc/source/ui/vba/vbahyperlink.cxx                                                  |    3 
 sc/source/ui/vba/vbahyperlinks.cxx                                                 |    3 
 sc/source/ui/vba/vbainterior.cxx                                                   |    2 
 sc/source/ui/vba/vbamenu.cxx                                                       |   84 
 sc/source/ui/vba/vbamenu.hxx                                                       |   54 
 sc/source/ui/vba/vbamenubar.cxx                                                    |   66 
 sc/source/ui/vba/vbamenubar.hxx                                                    |   50 
 sc/source/ui/vba/vbamenubars.cxx                                                   |  137 
 sc/source/ui/vba/vbamenubars.hxx                                                   |   61 
 sc/source/ui/vba/vbamenuitem.cxx                                                   |   82 
 sc/source/ui/vba/vbamenuitem.hxx                                                   |   55 
 sc/source/ui/vba/vbamenuitems.cxx                                                  |  150 
 sc/source/ui/vba/vbamenuitems.hxx                                                  |   60 
 sc/source/ui/vba/vbamenus.cxx                                                      |  136 
 sc/source/ui/vba/vbamenus.hxx                                                      |   60 
 sc/source/ui/vba/vbaname.cxx                                                       |   93 
 sc/source/ui/vba/vbaname.hxx                                                       |    4 
 sc/source/ui/vba/vbanames.cxx                                                      |  102 
 sc/source/ui/vba/vbaoleobject.cxx                                                  |    5 
 sc/source/ui/vba/vbaoleobjects.cxx                                                 |    3 
 sc/source/ui/vba/vbaoutline.cxx                                                    |    3 
 sc/source/ui/vba/vbapagebreak.cxx                                                  |    2 
 sc/source/ui/vba/vbapagebreaks.cxx                                                 |   54 
 sc/source/ui/vba/vbapagesetup.cxx                                                  |  133 
 sc/source/ui/vba/vbapagesetup.hxx                                                  |    2 
 sc/source/ui/vba/vbapalette.cxx                                                    |    3 
 sc/source/ui/vba/vbapane.cxx                                                       |    3 
 sc/source/ui/vba/vbapivotcache.cxx                                                 |   21 
 sc/source/ui/vba/vbapivotcache.hxx                                                 |    8 
 sc/source/ui/vba/vbapivottable.cxx                                                 |    3 
 sc/source/ui/vba/vbapivottables.cxx                                                |    3 
 sc/source/ui/vba/vbapropvalue.cxx                                                  |    3 
 sc/source/ui/vba/vbaquerytable.cxx                                                 |   87 
 sc/source/ui/vba/vbaquerytable.hxx                                                 |   59 
 sc/source/ui/vba/vbarange.cxx                                                      | 1980 ++++++----
 sc/source/ui/vba/vbarange.hxx                                                      |   42 
 sc/source/ui/vba/vbaseriescollection.cxx                                           |    2 
 sc/source/ui/vba/vbasheetobject.cxx                                                |    3 
 sc/source/ui/vba/vbasheetobjects.cxx                                               |    3 
 sc/source/ui/vba/vbastyle.cxx                                                      |    3 
 sc/source/ui/vba/vbastyles.cxx                                                     |    3 
 sc/source/ui/vba/vbatextboxshape.cxx                                               |    3 
 sc/source/ui/vba/vbatextframe.cxx                                                  |    3 
 sc/source/ui/vba/vbavalidation.cxx                                                 |   15 
 sc/source/ui/vba/vbawindow.cxx                                                     |    3 
 sc/source/ui/vba/vbawindows.cxx                                                    |    3 
 sc/source/ui/vba/vbaworkbook.cxx                                                   |  114 
 sc/source/ui/vba/vbaworkbook.hxx                                                   |    9 
 sc/source/ui/vba/vbaworkbooks.cxx                                                  |    3 
 sc/source/ui/vba/vbaworksheet.cxx                                                  |  243 -
 sc/source/ui/vba/vbaworksheet.hxx                                                  |    7 
 sc/source/ui/vba/vbaworksheets.cxx                                                 |    3 
 sc/source/ui/vba/vbawsfunction.cxx                                                 |   85 
 sc/source/ui/view/auditsh.cxx                                                      |    2 
 sc/source/ui/view/cellmergeoption.cxx                                              |    3 
 sc/source/ui/view/cellsh.cxx                                                       |    2 
 sc/source/ui/view/cellsh1.cxx                                                      |    3 
 sc/source/ui/view/cellsh2.cxx                                                      |   20 
 sc/source/ui/view/cellsh3.cxx                                                      |    2 
 sc/source/ui/view/cellsh4.cxx                                                      |    2 
 sc/source/ui/view/colrowba.cxx                                                     |    2 
 sc/source/ui/view/dbfunc.cxx                                                       |    2 
 sc/source/ui/view/dbfunc2.cxx                                                      |    2 
 sc/source/ui/view/dbfunc3.cxx                                                      |    3 
 sc/source/ui/view/dbfunc4.cxx                                                      |    2 
 sc/source/ui/view/drawattr.cxx                                                     |    2 
 sc/source/ui/view/drawutil.cxx                                                     |    2 
 sc/source/ui/view/drawvie2.cxx                                                     |    2 
 sc/source/ui/view/drawvie3.cxx                                                     |    2 
 sc/source/ui/view/drawvie4.cxx                                                     |    2 
 sc/source/ui/view/drawview.cxx                                                     |    3 
 sc/source/ui/view/editsh.cxx                                                       |    2 
 sc/source/ui/view/formatsh.cxx                                                     |    3 
 sc/source/ui/view/galwrap.cxx                                                      |    2 
 sc/source/ui/view/gridmerg.cxx                                                     |    2 
 sc/source/ui/view/gridwin.cxx                                                      |    3 
 sc/source/ui/view/gridwin2.cxx                                                     |   19 
 sc/source/ui/view/gridwin3.cxx                                                     |    2 
 sc/source/ui/view/gridwin4.cxx                                                     |   15 
 sc/source/ui/view/gridwin5.cxx                                                     |    5 
 sc/source/ui/view/hdrcont.cxx                                                      |    2 
 sc/source/ui/view/hintwin.cxx                                                      |    3 
 sc/source/ui/view/imapwrap.cxx                                                     |    2 
 sc/source/ui/view/invmerge.cxx                                                     |    2 
 sc/source/ui/view/notemark.cxx                                                     |    2 
 sc/source/ui/view/olinewin.cxx                                                     |    2 
 sc/source/ui/view/olkact.cxx                                                       |    2 
 sc/source/ui/view/output.cxx                                                       |    2 
 sc/source/ui/view/output2.cxx                                                      |   24 
 sc/source/ui/view/output3.cxx                                                      |    2 
 sc/source/ui/view/overlayobject.cxx                                                |    3 
 sc/source/ui/view/pfuncache.cxx                                                    |    2 
 sc/source/ui/view/pgbrksh.cxx                                                      |    2 
 sc/source/ui/view/pivotsh.cxx                                                      |    2 
 sc/source/ui/view/preview.cxx                                                      |    3 
 sc/source/ui/view/prevloc.cxx                                                      |    2 
 sc/source/ui/view/prevwsh.cxx                                                      |    2 
 sc/source/ui/view/prevwsh2.cxx                                                     |    2 
 sc/source/ui/view/printfun.cxx                                                     |    2 
 sc/source/ui/view/reffact.cxx                                                      |    3 
 sc/source/ui/view/scextopt.cxx                                                     |    2 
 sc/source/ui/view/select.cxx                                                       |    2 
 sc/source/ui/view/selectionstate.cxx                                               |    2 
 sc/source/ui/view/spelldialog.cxx                                                  |    2 
 sc/source/ui/view/spelleng.cxx                                                     |    2 
 sc/source/ui/view/tabcont.cxx                                                      |   19 
 sc/source/ui/view/tabpopsh.cxx                                                     |    3 
 sc/source/ui/view/tabsplit.cxx                                                     |    2 
 sc/source/ui/view/tabview.cxx                                                      |    2 
 sc/source/ui/view/tabview2.cxx                                                     |    2 
 sc/source/ui/view/tabview3.cxx                                                     |   20 
 sc/source/ui/view/tabview4.cxx                                                     |    2 
 sc/source/ui/view/tabview5.cxx                                                     |    2 
 sc/source/ui/view/tabvwsh.cxx                                                      |    3 
 sc/source/ui/view/tabvwsh2.cxx                                                     |    2 
 sc/source/ui/view/tabvwsh3.cxx                                                     |    2 
 sc/source/ui/view/tabvwsh4.cxx                                                     |    9 
 sc/source/ui/view/tabvwsh5.cxx                                                     |    2 
 sc/source/ui/view/tabvwsh8.cxx                                                     |    2 
 sc/source/ui/view/tabvwsh9.cxx                                                     |    2 
 sc/source/ui/view/tabvwsha.cxx                                                     |    2 
 sc/source/ui/view/tabvwshb.cxx                                                     |    2 
 sc/source/ui/view/tabvwshc.cxx                                                     |    2 
 sc/source/ui/view/tabvwshd.cxx                                                     |    2 
 sc/source/ui/view/tabvwshe.cxx                                                     |    2 
 sc/source/ui/view/tabvwshf.cxx                                                     |    2 
 sc/source/ui/view/tabvwshg.cxx                                                     |    2 
 sc/source/ui/view/tabvwshh.cxx                                                     |    2 
 sc/source/ui/view/viewdata.cxx                                                     |    3 
 sc/source/ui/view/viewfun2.cxx                                                     |   61 
 sc/source/ui/view/viewfun3.cxx                                                     |  188 
 sc/source/ui/view/viewfun4.cxx                                                     |    2 
 sc/source/ui/view/viewfun5.cxx                                                     |    2 
 sc/source/ui/view/viewfun6.cxx                                                     |    3 
 sc/source/ui/view/viewfun7.cxx                                                     |    2 
 sc/source/ui/view/viewfunc.cxx                                                     |    2 
 sc/source/ui/view/viewutil.cxx                                                     |    2 
 sc/source/ui/view/waitoff.cxx                                                      |    2 
 sc/uiconfig/scalc/menubar/menubar.xml                                              |    1 
 sc/util/makefile.mk                                                                |   10 
 sc/util/scfilt.map                                                                 |    3 
 sc/workben/addin.cxx                                                               |    2 
 sc/workben/result.cxx                                                              |    2 
 sc/workben/test.cxx                                                                |    2 
 scaddins/source/analysis/analysis.cxx                                              |    2 
 scaddins/source/analysis/analysishelper.cxx                                        |    2 
 scaddins/source/analysis/bessel.cxx                                                |    2 
 scaddins/source/analysis/financial.cxx                                             |    2 
 scaddins/source/datefunc/datefunc.cxx                                              |    2 
 sccomp/source/solver/solver.cxx                                                    |    2 
 1094 files changed, 12869 insertions(+), 2099 deletions(-)

New commits:
commit c0aac7c892688678544a2dd339064f081cc7fbfa
Merge: 764e33d... e6df329...
Author: Kohei Yoshida <kyoshida at novell.com>
Date:   Wed Oct 13 23:21:02 2010 -0400

    Merge branch 'master' into feature/calc-key-binding-compat
    
    Conflicts:
    	sc/source/ui/attrdlg/scdlgfact.cxx

diff --cc sc/inc/sc.hrc
index 157ecf9,23ea60e..dc90cb2
--- a/sc/inc/sc.hrc
+++ b/sc/inc/sc.hrc
@@@ -1672,11 -1670,11 +1670,15 @@@
  // Insert current date and time to cell via command
  #define SID_INSERT_CURRENT_DATE     (SC_OOO_BUILD_START + 4)
  #define SID_INSERT_CURRENT_TIME     (SC_OOO_BUILD_START + 5)
+ // Data Form
+ #define SID_DATAFORM_NEW            (SC_OOO_BUILD_START + 6) // message
+ #define SID_DATA_FORM               (SC_OOO_BUILD_START + 7) // menu (in Data menu)
+ #define RID_SCDLG_DATAFORM          (SC_OOO_BUILD_START + 8) // dialog
  
 +// Compatibility options page
 +#define RID_SCPAGE_COMPATIBILITY    (SC_OOO_BUILD_START + 6)
 +#define HID_SCPAGE_COMPATIBILITY    (SC_OOO_BUILD_START + 7)
 +
  #endif
  
  
diff --cc sc/source/ui/attrdlg/scdlgfact.cxx
index 19e7a2e,02cd919..fa14720
--- a/sc/source/ui/attrdlg/scdlgfact.cxx
+++ b/sc/source/ui/attrdlg/scdlgfact.cxx
@@@ -80,7 -81,8 +81,8 @@@
  #include "tpusrlst.hxx" //add for ScTpUserLists
  #include "tpview.hxx" //add for ScTpContentOptions
  #include "tpformula.hxx"
 -//for dataform
+ #include "datafdlg.hxx" //add for ScDataFormDlg
 +#include "tpcompatibility.hxx"
  
  // ause
  #include "editutil.hxx"
diff --cc sc/source/ui/inc/docsh.hxx
index e8e8563,1ea3118..fff44a1
--- a/sc/source/ui/inc/docsh.hxx
+++ b/sc/source/ui/inc/docsh.hxx
@@@ -40,9 -40,9 +40,10 @@@
  #include "document.hxx"
  #include "shellids.hxx"
  #include "refreshtimer.hxx"
 +#include "optutil.hxx"
  
  #include <hash_map>
+ #include <cppuhelper/implbase1.hxx>
  
  class ScEditEngineDefaulter;
  class FontList;
commit e6df329808c4b8e3c06cfd8614ffdf71aa967bcc
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Wed Oct 13 20:56:30 2010 +0200

    Fixed build of sc (ctor of XclObjAny has 2 params)

diff --git a/sc/source/filter/excel/xeescher.cxx b/sc/source/filter/excel/xeescher.cxx
index 2ef4366..baed64c 100644
--- a/sc/source/filter/excel/xeescher.cxx
+++ b/sc/source/filter/excel/xeescher.cxx
@@ -1162,7 +1162,7 @@ XclMacroHelper::SetMacroLink( const String& rMacroName )
 }
 
 XclExpShapeObj::XclExpShapeObj( XclExpObjectManager& rRoot, ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape > xShape ) :
-    XclObjAny( rRoot ),
+    XclObjAny( rRoot, xShape ),
     XclMacroHelper( rRoot )
 {
     if( SdrObject* pSdrObj = ::GetSdrObjectFromXShape( xShape ) )
commit b968c2f1fc8e71dd44d7c67da77603012da7bedb
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Wed Oct 13 18:18:31 2010 +0200

    Merged oox-sc-notes.diff from ooo-build

diff --git a/sc/source/filter/excel/xeescher.cxx b/sc/source/filter/excel/xeescher.cxx
index fcb7e20..2ef4366 100644
--- a/sc/source/filter/excel/xeescher.cxx
+++ b/sc/source/filter/excel/xeescher.cxx
@@ -999,7 +999,12 @@ XclExpNote::XclExpNote( const XclExpRoot& rRoot, const ScAddress& rScPos,
     // get the main note text
     String aNoteText;
     if( pScNote )
+    {
         aNoteText = pScNote->GetText();
+        const EditTextObject *pEditObj = pScNote->GetEditTextObject();
+        if( pEditObj )
+            mpNoteContents = XclExpStringHelper::CreateString( rRoot, *pEditObj );
+    }
     // append additional text
     ScGlobal::AddToken( aNoteText, rAddText, '\n', 2 );
     maOrigNoteText = aNoteText;
diff --git a/sc/source/ui/unoobj/notesuno.cxx b/sc/source/ui/unoobj/notesuno.cxx
index 321e8d4..f766312 100644
--- a/sc/source/ui/unoobj/notesuno.cxx
+++ b/sc/source/ui/unoobj/notesuno.cxx
@@ -57,16 +57,20 @@
 #include <svx/svditer.hxx>
 #include <svx/svdpage.hxx>
 #include <com/sun/star/drawing/XShapeDescriptor.hpp>
+#include <editeng/unoprnms.hxx>
 
 using namespace com::sun::star;
 
 //------------------------------------------------------------------------
 
-//	keine Properties fuer Text in Notizen
 const SvxItemPropertySet* lcl_GetAnnotationPropertySet()
 {
     static SfxItemPropertyMapEntry aAnnotationPropertyMap_Impl[] =
     {
+        SVX_UNOEDIT_CHAR_PROPERTIES,
+        SVX_UNOEDIT_FONT_PROPERTIES,
+        SVX_UNOEDIT_PARA_PROPERTIES,
+        SVX_UNOEDIT_NUMBERING_PROPERTIE,	// for completeness of service ParagraphProperties
         {0,0,0,0,0,0}
     };
     static SvxItemPropertySet aAnnotationPropertySet_Impl( aAnnotationPropertyMap_Impl, SdrObject::GetGlobalDrawObjectItemPool() ); 
commit 26edd0d746a57cd7353c0931dbd4e604abe52b22
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Wed Oct 13 18:16:07 2010 +0200

    Merged ooxml-sc-internal-hlink-export.diff from ooo-build

diff --git a/sc/source/filter/excel/xecontent.cxx b/sc/source/filter/excel/xecontent.cxx
index d55042d..215d5d2 100644
--- a/sc/source/filter/excel/xecontent.cxx
+++ b/sc/source/filter/excel/xecontent.cxx
@@ -456,7 +456,16 @@ XclExpHyperlink::XclExpHyperlink( const XclExpRoot& rRoot, const SvxURLField& rU
     else if( rUrl.GetChar( 0 ) == '#' )     // hack for #89066#
     {
         String aTextMark( rUrl.Copy( 1 ) );
-        aTextMark.SearchAndReplace( '.', '!' );
+
+        xub_StrLen nSepPos = aTextMark.SearchAndReplace( '.', '!' );
+        String aSheetName( aTextMark.Copy(0, nSepPos));
+
+        if ( aSheetName.Search(' ') != STRING_NOTFOUND && aSheetName.GetChar(0) != '\'')
+        {
+            aTextMark.Insert('\'', nSepPos);
+            aTextMark.Insert('\'', 0);
+        }
+
         mxTextMark.reset( new XclExpString( aTextMark, EXC_STR_FORCEUNICODE, 255 ) );
     }
 
@@ -533,13 +542,15 @@ void XclExpHyperlink::WriteEmbeddedData( XclExpStream& rStrm )
 
 void XclExpHyperlink::SaveXml( XclExpXmlStream& rStrm )
 {
-    OUString sId = rStrm.addRelation( rStrm.GetCurrentStream()->getOutputStream(),
+    OUString sId = msTarget.getLength() ? rStrm.addRelation( rStrm.GetCurrentStream()->getOutputStream(),
             XclXmlUtils::ToOUString( "http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink" ),
             msTarget,
-            XclXmlUtils::ToOUString( "External" ) );
+            XclXmlUtils::ToOUString( "External" ) ) : OUString();
     rStrm.GetCurrentStream()->singleElement( XML_hyperlink,
             XML_ref,                XclXmlUtils::ToOString( maScPos ).getStr(),
-            FSNS( XML_r, XML_id ),  XclXmlUtils::ToOString( sId ).getStr(),
+            FSNS( XML_r, XML_id ),  sId.getLength()
+                                       ? XclXmlUtils::ToOString( sId ).getStr()
+                                       : NULL,
             XML_location,           mxTextMark.get() != NULL 
                                         ? XclXmlUtils::ToOString( *mxTextMark ).getStr() 
                                         : NULL,
commit 47f4d561b5c44c239925edb84d242abfdb11f12e
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Wed Oct 13 18:12:42 2010 +0200

    Merged ooxml-sc-showdropdown-fix.diff from ooo-build

diff --git a/sc/source/filter/excel/xecontent.cxx b/sc/source/filter/excel/xecontent.cxx
index e56ed9c..d55042d 100644
--- a/sc/source/filter/excel/xecontent.cxx
+++ b/sc/source/filter/excel/xecontent.cxx
@@ -1162,7 +1162,8 @@ void XclExpDV::SaveXml( XclExpXmlStream& rStrm )
             XML_operator,           lcl_GetOperatorType( mnFlags ),
             XML_prompt,             XESTRING_TO_PSZ( maPromptText ),
             XML_promptTitle,        XESTRING_TO_PSZ( maPromptTitle ),
-            XML_showDropDown,       XclXmlUtils::ToPsz( ! ::get_flag( mnFlags, EXC_DV_SUPPRESSDROPDOWN ) ),
+            // showDropDown should have been showNoDropDown - check oox/xlsx import for details
+            XML_showDropDown,       XclXmlUtils::ToPsz( ::get_flag( mnFlags, EXC_DV_SUPPRESSDROPDOWN ) ),
             XML_showErrorMessage,   XclXmlUtils::ToPsz( ::get_flag( mnFlags, EXC_DV_SHOWERROR ) ),
             XML_showInputMessage,   XclXmlUtils::ToPsz( ::get_flag( mnFlags, EXC_DV_SHOWPROMPT ) ),
             XML_sqref,              XclXmlUtils::ToOString( maScRanges ).getStr(),
commit 2969dce8a1ea07a30eedd4a59bf3f69a89a307ee
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Wed Oct 13 18:12:19 2010 +0200

    Merged ooxml-sc-paneexport.cxx from ooo-build

diff --git a/sc/source/filter/excel/xestream.cxx b/sc/source/filter/excel/xestream.cxx
index 8b63779..7791776 100644
--- a/sc/source/filter/excel/xestream.cxx
+++ b/sc/source/filter/excel/xestream.cxx
@@ -48,6 +48,7 @@
 #include "compiler.hxx"
 
 #include <../../ui/inc/docsh.hxx>
+#include <../../ui/inc/viewdata.hxx>
 #include <excdoc.hxx>
 
 #include <oox/core/tokens.hxx>
@@ -1120,6 +1121,10 @@ bool XclExpXmlStream::exportDocument() throw()
                 pShell->SetError( nError, ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( OSL_LOG_PREFIX ) ) );
             }
 #endif
+    // Get the viewsettings before processing
+    if( pShell->GetViewData() )
+        pShell->GetViewData()->WriteExtOptions( mpRoot->GetExtDocOptions() );
+
     OUString const workbook = CREATE_OUSTRING( "xl/workbook.xml" );
     PushStream( CreateOutputStream( workbook, workbook,
                                     Reference <XOutputStream>(),
commit e2fe8b83fad41cab0d0db9ca73adfa56b8fd918c
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Wed Oct 13 18:09:49 2010 +0200

    Merged ooxml-sc-page-date.diff from ooo-build

diff --git a/sc/source/filter/excel/excrecds.cxx b/sc/source/filter/excel/excrecds.cxx
index b9d87fa..facfe89 100644
--- a/sc/source/filter/excel/excrecds.cxx
+++ b/sc/source/filter/excel/excrecds.cxx
@@ -361,6 +361,7 @@ Exc1904::Exc1904( ScDocument& rDoc )
 {
     Date* pDate = rDoc.GetFormatTable()->GetNullDate();
     bVal = pDate ? (*pDate == Date( 1, 1, 1904 )) : FALSE;
+    bDateCompatibility = pDate ? !( *pDate == Date( 30, 12, 1899 )) : FALSE;
 }
 
 
@@ -372,9 +373,21 @@ UINT16 Exc1904::GetNum( void ) const
 
 void Exc1904::SaveXml( XclExpXmlStream& rStrm )
 {
-    rStrm.WriteAttributes(
+    bool bISOIEC = ( rStrm.getVersion() == oox::core::ISOIEC_29500_2008 );
+
+    if( bISOIEC )
+    {
+        rStrm.WriteAttributes(
+            XML_dateCompatibility, XclXmlUtils::ToPsz( bDateCompatibility ),
+            FSEND );
+    }
+
+    if( !bISOIEC || bDateCompatibility )
+    {
+        rStrm.WriteAttributes(
             XML_date1904, XclXmlUtils::ToPsz( bVal ),
             FSEND );
+    }
 }
 
 
diff --git a/sc/source/filter/excel/xepage.cxx b/sc/source/filter/excel/xepage.cxx
index 9e30957..b91644c 100644
--- a/sc/source/filter/excel/xepage.cxx
+++ b/sc/source/filter/excel/xepage.cxx
@@ -97,25 +97,37 @@ XclExpSetup::XclExpSetup( const XclPageData& rPageData ) :
 
 void XclExpSetup::SaveXml( XclExpXmlStream& rStrm )
 {
-    rStrm.GetCurrentStream()->singleElement( XML_pageSetup,
-            XML_paperSize,          OString::valueOf( (sal_Int32) mrData.mnPaperSize ).getStr(),
-            XML_scale,              OString::valueOf( (sal_Int32) mrData.mnScaling ).getStr(),
-            XML_firstPageNumber,    OString::valueOf( (sal_Int32) mrData.mnStartPage ).getStr(),
-            XML_fitToWidth,         OString::valueOf( (sal_Int32) mrData.mnFitToWidth ).getStr(),
-            XML_fitToHeight,        OString::valueOf( (sal_Int32) mrData.mnFitToHeight ).getStr(),
-            XML_pageOrder,          mrData.mbPrintInRows ? "overThenDown" : "downThenOver",
-            XML_orientation,        mrData.mbPortrait ? "portrait" : "landscape",   // OOXTODO: "default"?
-            XML_usePrinterDefaults, XclXmlUtils::ToPsz( !mrData.mbValid ),
-            XML_blackAndWhite,      XclXmlUtils::ToPsz( mrData.mbBlackWhite ),
-            XML_draft,              XclXmlUtils::ToPsz( mrData.mbDraftQuality ),
-            XML_cellComments,       mrData.mbPrintNotes ? "atEnd" : "none",         // OOXTODO: "asDisplayed"?
-            XML_useFirstPageNumber, XclXmlUtils::ToPsz( mrData.mbManualStart ),
-            // OOXTODO: XML_errors, // == displayed|blank|dash|NA
-            XML_horizontalDpi,      OString::valueOf( (sal_Int32) mrData.mnHorPrintRes ).getStr(),
-            XML_verticalDpi,        OString::valueOf( (sal_Int32) mrData.mnVerPrintRes ).getStr(),
-            XML_copies,             OString::valueOf( (sal_Int32) mrData.mnCopies ).getStr(),
-            // OOXTODO: devMode settings part RelationshipId: FSNS( XML_r, XML_id ),
-            FSEND );
+    sax_fastparser::FastAttributeList* pAttrList=rStrm.GetCurrentStream()->createAttrList();
+    if( rStrm.getVersion() != oox::core::ISOIEC_29500_2008 ||
+        mrData.mnStrictPaperSize != EXC_PAPERSIZE_USER )
+    {
+        pAttrList->add( XML_paperSize,           OString::valueOf( (sal_Int32) mrData.mnPaperSize ).getStr() );
+    }
+    else
+    {
+        pAttrList->add( XML_paperWidth,          OString::valueOf( (sal_Int32) mrData.mnPaperWidth ).concat(OString("mm")).getStr() );
+        pAttrList->add( XML_paperHeight,         OString::valueOf( (sal_Int32) mrData.mnPaperHeight ).concat(OString("mm")).getStr() );
+        // pAttrList->add( XML_paperUnits,          "mm" );
+    }
+    pAttrList->add( XML_scale,              OString::valueOf( (sal_Int32) mrData.mnScaling ).getStr() );
+    pAttrList->add( XML_firstPageNumber,    OString::valueOf( (sal_Int32) mrData.mnStartPage ).getStr() );
+    pAttrList->add( XML_fitToWidth,         OString::valueOf( (sal_Int32) mrData.mnFitToWidth ).getStr() );
+    pAttrList->add( XML_fitToHeight,        OString::valueOf( (sal_Int32) mrData.mnFitToHeight ).getStr() );
+    pAttrList->add( XML_pageOrder,          mrData.mbPrintInRows ? "overThenDown" : "downThenOver" );
+    pAttrList->add( XML_orientation,        mrData.mbPortrait ? "portrait" : "landscape" );   // OOXTODO: "default"?
+    pAttrList->add( XML_usePrinterDefaults, XclXmlUtils::ToPsz( !mrData.mbValid ) );
+    pAttrList->add( XML_blackAndWhite,      XclXmlUtils::ToPsz( mrData.mbBlackWhite ) );
+    pAttrList->add( XML_draft,              XclXmlUtils::ToPsz( mrData.mbDraftQuality ) );
+    pAttrList->add( XML_cellComments,       mrData.mbPrintNotes ? "atEnd" : "none" );         // OOXTODO: "asDisplayed"?
+    pAttrList->add( XML_useFirstPageNumber, XclXmlUtils::ToPsz( mrData.mbManualStart ) );
+    // OOXTODO: XML_errors, // == displayed|blank|dash|NA
+    pAttrList->add( XML_horizontalDpi,      OString::valueOf( (sal_Int32) mrData.mnHorPrintRes ).getStr() );
+    pAttrList->add( XML_verticalDpi,        OString::valueOf( (sal_Int32) mrData.mnVerPrintRes ).getStr() );
+    pAttrList->add( XML_copies,             OString::valueOf( (sal_Int32) mrData.mnCopies ).getStr() );
+    // OOXTODO: devMode settings part RelationshipId: FSNS( XML_r, XML_id ),
+
+    ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XFastAttributeList > aAttrs(pAttrList);
+    rStrm.GetCurrentStream()->singleElement( XML_pageSetup, aAttrs );
 }
 
 void XclExpSetup::WriteBody( XclExpStream& rStrm )
diff --git a/sc/source/filter/excel/xlpage.cxx b/sc/source/filter/excel/xlpage.cxx
index 4af4828..6a68867 100644
--- a/sc/source/filter/excel/xlpage.cxx
+++ b/sc/source/filter/excel/xlpage.cxx
@@ -37,6 +37,7 @@
 #include <editeng/brshitem.hxx>
 #include "global.hxx"
 #include "xlconst.hxx"
+#include <oox/core/xmlfilterbase.hxx>
 
 // Paper size =================================================================
 
@@ -49,6 +50,8 @@ struct XclPaperSize
 
 #define IN2TWIPS( v )      ((long)((v) * EXC_TWIPS_PER_INCH + 0.5))
 #define MM2TWIPS( v )      ((long)((v) * EXC_TWIPS_PER_INCH / CM_PER_INCH / 10.0 + 0.5))
+#define TWIPS2MM( v )      ((long)((v - 0.5) / EXC_TWIPS_PER_INCH * CM_PER_INCH * 10.0))
+
 
 static const XclPaperSize pPaperSizeTable[] =
 {
@@ -190,6 +193,8 @@ void XclPageData::SetDefaults()
     mfHdrLeftMargin = mfHdrRightMargin = XclTools::GetInchFromHmm( EXC_MARGIN_DEFAULT_HLR );
     mfFtrLeftMargin = mfFtrRightMargin = XclTools::GetInchFromHmm( EXC_MARGIN_DEFAULT_FLR );
     mnPaperSize = EXC_PAPERSIZE_DEFAULT;
+    mnPaperWidth = 0;
+    mnPaperHeight = 0;
     mnCopies = 1;
     mnStartPage = 0;
     mnScaling = 100;
@@ -223,7 +228,7 @@ Size XclPageData::GetScPaperSize() const
     return aSize;
 }
 
-void XclPageData::SetScPaperSize( const Size& rSize, bool bPortrait )
+void XclPageData::SetScPaperSize( const Size& rSize, bool bPortrait, bool bStrictSize )
 {
     mbPortrait = bPortrait;
     mnPaperSize = 0;
@@ -231,6 +236,20 @@ void XclPageData::SetScPaperSize( const Size& rSize, bool bPortrait )
     long nHeight = bPortrait ? rSize.Height() : rSize.Width();
     long nMaxWDiff = 80;
     long nMaxHDiff = 50;
+
+    mnPaperWidth = TWIPS2MM( nWidth );
+    mnPaperHeight = TWIPS2MM( nHeight );
+    if( bStrictSize )
+    {
+        nMaxWDiff = 5;
+        nMaxHDiff = 5;
+        mnStrictPaperSize = EXC_PAPERSIZE_USER;
+    }
+    else
+    {
+        mnPaperSize = 0;
+    }
+
     for( const XclPaperSize* pEntry = pPaperSizeTable; pEntry != STATIC_TABLE_END( pPaperSizeTable ); ++pEntry )
     {
         long nWDiff = Abs( pEntry->mnWidth - nWidth );
@@ -238,11 +257,18 @@ void XclPageData::SetScPaperSize( const Size& rSize, bool bPortrait )
         if( ((nWDiff <= nMaxWDiff) && (nHDiff < nMaxHDiff)) ||
             ((nWDiff < nMaxWDiff) && (nHDiff <= nMaxHDiff)) )
         {
-            mnPaperSize = static_cast< sal_uInt16 >( pEntry - pPaperSizeTable );
+            sal_uInt16 nIndex = static_cast< sal_uInt16 >( pEntry - pPaperSizeTable );
+            if( !bStrictSize )
+                mnPaperSize = nIndex;
+            else
+                mnStrictPaperSize = mnPaperSize = nIndex;
+
             nMaxWDiff = nWDiff;
             nMaxHDiff = nHDiff;
         }
     }
+    if( !bStrictSize )
+        SetScPaperSize( rSize, bPortrait, sal_True );
 }
 
 // ============================================================================
diff --git a/sc/source/filter/inc/excrecds.hxx b/sc/source/filter/inc/excrecds.hxx
index ba075e9..109a280 100644
--- a/sc/source/filter/inc/excrecds.hxx
+++ b/sc/source/filter/inc/excrecds.hxx
@@ -286,6 +286,8 @@ public:
     virtual UINT16			GetNum( void ) const;
 
     virtual void            SaveXml( XclExpXmlStream& rStrm );
+private:
+    BOOL                    bDateCompatibility;
 };
 
 
diff --git a/sc/source/filter/inc/xlpage.hxx b/sc/source/filter/inc/xlpage.hxx
index 4878ba9..ea5cfc4 100644
--- a/sc/source/filter/inc/xlpage.hxx
+++ b/sc/source/filter/inc/xlpage.hxx
@@ -89,6 +89,7 @@ const sal_uInt16 EXC_SETUP_STARTPAGE        = 0x0080;
 const sal_uInt16 EXC_SETUP_NOTES_END        = 0x0200;
 
 const sal_uInt16 EXC_PAPERSIZE_DEFAULT      = 0;
+const sal_uInt16 EXC_PAPERSIZE_USER         = 0xFFFF;
 
 // ============================================================================
 
@@ -118,6 +119,9 @@ struct XclPageData : ScfNoCopy
     double              mfFtrLeftMargin;    /// Left margin to footer.
     double              mfFtrRightMargin;   /// Right margin to footer.
     sal_uInt16          mnPaperSize;        /// Index into paper size table.
+    sal_uInt16          mnStrictPaperSize;  /// Same as papersize - but for ooxml (considering stricter dimensions)
+    sal_uInt16          mnPaperWidth;       /// Paper Width in mm
+    sal_uInt16          mnPaperHeight;      /// Paper Height in mm
     sal_uInt16          mnCopies;           /// Number of copies.
     sal_uInt16          mnStartPage;        /// Start page number.
     sal_uInt16          mnScaling;          /// Scaling in percent.
@@ -147,7 +151,7 @@ struct XclPageData : ScfNoCopy
     /** Returns the real paper size (twips) from the paper size index and paper orientation. */
     Size                GetScPaperSize() const;
     /** Sets the Excel paper size index and paper orientation from Calc paper size (twips). */
-    void                SetScPaperSize( const Size& rSize, bool bPortrait );
+    void                SetScPaperSize( const Size& rSize, bool bPortrait, bool bStrict = sal_False );
 };
 
 // ============================================================================
commit ad17361f991e06ba2b48ba5bc806e1589488fa44
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Wed Oct 13 17:59:35 2010 +0200

    Merged xlsx-shared-xlsx-export-perf-rowbuffer.diff from ooo-build

diff --git a/sc/source/filter/excel/xetable.cxx b/sc/source/filter/excel/xetable.cxx
index 352b8e2..df1273f 100644
--- a/sc/source/filter/excel/xetable.cxx
+++ b/sc/source/filter/excel/xetable.cxx
@@ -1999,9 +1999,7 @@ void XclExpRow::SaveXml( XclExpXmlStream& rStrm )
 XclExpRowBuffer::XclExpRowBuffer( const XclExpRoot& rRoot ) :
     XclExpRoot( rRoot ),
     maOutlineBfr( rRoot ),
-    maDimensions( rRoot ),
-    mpLastUsedRow( 0 ),
-    mnLastUsedXclRow( 0 )
+    maDimensions( rRoot )
 {
 }
 
@@ -2019,63 +2017,34 @@ void XclExpRowBuffer::CreateRows( SCROW nFirstFreeScRow )
 
 void XclExpRowBuffer::Finalize( XclExpDefaultRowData& rDefRowData, const ScfUInt16Vec& rColXFIndexes )
 {
-    size_t nPos, nSize;
-
     // *** Finalize all rows *** ----------------------------------------------
 
     GetProgressBar().ActivateFinalRowsSegment();
 
-    // unused blank cell records will be removed
-    for( nPos = 0, nSize = maRowList.GetSize(); nPos < nSize; ++nPos )
-        maRowList.GetRecord( nPos )->Finalize( rColXFIndexes );
+    RowMap::iterator itr, itrBeg = maRowMap.begin(), itrEnd = maRowMap.end();
+    for (itr = itrBeg; itr != itrEnd; ++itr)
+        itr->second->Finalize(rColXFIndexes);
 
     // *** Default row format *** ---------------------------------------------
 
     typedef ::std::map< XclExpDefaultRowData, size_t > XclExpDefRowDataMap;
     XclExpDefRowDataMap aDefRowMap;
 
-    // find default row format for rows beyond used area
-    sal_uInt32 nDefaultXclRow = maRowList.IsEmpty() ? 0 : (maRowList.GetLastRecord()->GetXclRow() + 1);
     XclExpDefaultRowData aMaxDefData;
     size_t nMaxDefCount = 0;
-    /*  #i30411# Files saved with SO7/OOo1.x with nonstandard default column
-        formatting cause big Excel files, because all rows from row 1 to row
-        32000 are exported. Now, if the used area goes exactly to row 32000,
-        ignore all rows >32000.
-        #i59220# Tolerance of +-128 rows for inserted/removed rows. */
-    if( (nDefaultXclRow < 31872) || (nDefaultXclRow > 32128) )
-    {
-        sal_uInt16 nLastXclRow = static_cast< sal_uInt16 >( GetMaxPos().Row() );
-        if( nDefaultXclRow <= nLastXclRow )
-        {
-            // create a dummy ROW record and fill aMaxDefData
-            XclExpRowOutlineBuffer aOutlineBfr( GetRoot() );
-            XclExpRow aRow( GetRoot(), nLastXclRow, aOutlineBfr, true );
-            aMaxDefData = XclExpDefaultRowData( aRow );
-            aDefRowMap[ aMaxDefData ] = nMaxDefCount =
-                static_cast< size_t >( nLastXclRow - nDefaultXclRow + 1 );
-        }
-    }
-
     // only look for default format in existing rows, if there are more than unused
-    nSize = maRowList.GetSize();
-    if( nMaxDefCount < nSize )
+    for (itr = itrBeg; itr != itrEnd; ++itr)
     {
-        for( nPos = 0; nPos < nSize; ++nPos )
+        const RowRef& rRow = itr->second;
+        if (rRow->IsDefaultable())
         {
-            XclExpRowRef xRow = maRowList.GetRecord( nPos );
-            /*  Collect formats of unused rows (rows without cells), which are able
-                to be defaulted (i.e. no explicit format or outline level). */
-            if( xRow->IsDefaultable() )
+            XclExpDefaultRowData aDefData( *rRow );
+            size_t& rnDefCount = aDefRowMap[ aDefData ];
+            ++rnDefCount;
+            if( rnDefCount > nMaxDefCount )
             {
-                XclExpDefaultRowData aDefData( *xRow );
-                size_t& rnDefCount = aDefRowMap[ aDefData ];
-                ++rnDefCount;
-                if( rnDefCount > nMaxDefCount )
-                {
-                    nMaxDefCount = rnDefCount;
-                    aMaxDefData = aDefData;
-                }
+                nMaxDefCount = rnDefCount;
+                aMaxDefData = aDefData;
             }
         }
     }
@@ -2090,24 +2059,23 @@ void XclExpRowBuffer::Finalize( XclExpDefaultRowData& rDefRowData, const ScfUInt
     sal_uInt32 nFirstUsedXclRow = SAL_MAX_UINT32;
     sal_uInt32 nFirstFreeXclRow = 0;
 
-    for( nPos = 0, nSize = maRowList.GetSize(); nPos < nSize; ++nPos )
+    for (itr = itrBeg; itr != itrEnd; ++itr)
     {
-        XclExpRowRef xRow = maRowList.GetRecord( nPos );
-
+        const RowRef& rRow = itr->second;
         // disable unused rows
-        xRow->DisableIfDefault( aMaxDefData );
+        rRow->DisableIfDefault( aMaxDefData );
 
         // find used column range
-        if( !xRow->IsEmpty() )      // empty rows return (0...0) as used range
+        if( !rRow->IsEmpty() )      // empty rows return (0...0) as used range
         {
-            nFirstUsedXclCol = ::std::min( nFirstUsedXclCol, xRow->GetFirstUsedXclCol() );
-            nFirstFreeXclCol = ::std::max( nFirstFreeXclCol, xRow->GetFirstFreeXclCol() );
+            nFirstUsedXclCol = ::std::min( nFirstUsedXclCol, rRow->GetFirstUsedXclCol() );
+            nFirstFreeXclCol = ::std::max( nFirstFreeXclCol, rRow->GetFirstFreeXclCol() );
         }
 
         // find used row range
-        if( xRow->IsEnabled() )
+        if( rRow->IsEnabled() )
         {
-            sal_uInt16 nXclRow = xRow->GetXclRow();
+            sal_uInt16 nXclRow = rRow->GetXclRow();
             nFirstUsedXclRow = ::std::min< sal_uInt32 >( nFirstUsedXclRow, nXclRow );
             nFirstFreeXclRow = ::std::max< sal_uInt32 >( nFirstFreeXclRow, nXclRow + 1 );
         }
@@ -2128,27 +2096,29 @@ void XclExpRowBuffer::Save( XclExpStream& rStrm )
     maDimensions.Save( rStrm );
 
     // save in blocks of 32 rows, each block contains first all ROWs, then all cells
-    size_t nSize = maRowList.GetSize();
-    size_t nBlockStart = 0;
-    sal_uInt16 nStartXclRow = (nSize == 0) ? 0 : maRowList.GetRecord( 0 )->GetXclRow();
+    size_t nSize = maRowMap.size();
+    RowMap::iterator itr, itrBeg = maRowMap.begin(), itrEnd = maRowMap.end();
+    RowMap::iterator itrBlkStart = maRowMap.begin(), itrBlkEnd = maRowMap.begin();
+    sal_uInt16 nStartXclRow = (nSize == 0) ? 0 : itrBeg->second->GetXclRow();
 
-    while( nBlockStart < nSize )
+
+    for (itr = itrBeg; itr != itrEnd; ++itr)
     {
         // find end of row block
-        size_t nBlockEnd = nBlockStart + 1;
-        while( (nBlockEnd < nSize) && (maRowList.GetRecord( nBlockEnd )->GetXclRow() - nStartXclRow < EXC_ROW_ROWBLOCKSIZE) )
-            ++nBlockEnd;
+        ++itrBlkEnd;
+        while( (itrBlkEnd != itrEnd) && (itrBlkEnd->second->GetXclRow() - nStartXclRow < EXC_ROW_ROWBLOCKSIZE) )
+            ++itrBlkEnd;
 
         // write the ROW records
-        size_t nPos;
-        for( nPos = nBlockStart; nPos < nBlockEnd; ++nPos )
-            maRowList.GetRecord( nPos )->Save( rStrm );
+        RowMap::iterator itRow;
+        for( itRow = itrBlkStart; itRow != itrBlkEnd; ++itRow )
+            itRow->second->Save( rStrm );
 
         // write the cell records
-        for( nPos = nBlockStart; nPos < nBlockEnd; ++nPos )
-            maRowList.GetRecord( nPos )->WriteCellList( rStrm );
+        for( itRow = itrBlkStart; itRow != itrBlkEnd; ++itRow )
+             itRow->second->WriteCellList( rStrm );
 
-        nBlockStart = nBlockEnd;
+        itrBlkStart = itrBlkEnd;
         nStartXclRow += EXC_ROW_ROWBLOCKSIZE;
     }
 }
@@ -2156,23 +2126,22 @@ void XclExpRowBuffer::Save( XclExpStream& rStrm )
 void XclExpRowBuffer::SaveXml( XclExpXmlStream& rStrm )
 {
     sal_Int32 nNonEmpty = 0;
-
-    size_t nRows = maRowList.GetSize();
-    for( size_t i = 0; i < nRows; ++i)
-        if( maRowList.GetRecord( i )->IsEnabled() )
+    RowMap::iterator itr = maRowMap.begin(), itrEnd = maRowMap.end();
+    for (; itr != itrEnd; ++itr)
+        if (itr->second->IsEnabled())
             ++nNonEmpty;
 
-    if( nNonEmpty == 0 )
+    if (nNonEmpty == 0)
     {
         rStrm.GetCurrentStream()->singleElement( XML_sheetData, FSEND );
+        return;
     }
-    else
-    {
-        sax_fastparser::FSHelperPtr& rWorksheet = rStrm.GetCurrentStream();
-        rWorksheet->startElement( XML_sheetData, FSEND );
-        maRowList.SaveXml( rStrm );
-        rWorksheet->endElement( XML_sheetData );
-    }
+
+    sax_fastparser::FSHelperPtr& rWorksheet = rStrm.GetCurrentStream();
+    rWorksheet->startElement( XML_sheetData, FSEND );
+    for (itr = maRowMap.begin(); itr != itrEnd; ++itr)
+        itr->second->SaveXml(rStrm);
+    rWorksheet->endElement( XML_sheetData );
 }
 
 XclExpDimensions* XclExpRowBuffer::GetDimensions() 
@@ -2182,18 +2151,14 @@ XclExpDimensions* XclExpRowBuffer::GetDimensions()
 
 XclExpRow& XclExpRowBuffer::GetOrCreateRow( sal_uInt16 nXclRow, bool bRowAlwaysEmpty )
 {
-    if( !mpLastUsedRow || (mnLastUsedXclRow != nXclRow) )
+    RowMap::iterator itr = maRowMap.find(nXclRow);
+    if (itr == maRowMap.end())
     {
-        // fill up missing ROW records
-        // do not use sal_uInt16 for nFirstFreeXclRow, would cause loop in full sheets
-        for( size_t nFirstFreeXclRow = maRowList.GetSize(); nFirstFreeXclRow <= nXclRow; ++nFirstFreeXclRow )
-            maRowList.AppendNewRecord( new XclExpRow(
-                GetRoot(), static_cast< sal_uInt16 >( nFirstFreeXclRow ), maOutlineBfr, bRowAlwaysEmpty ) );
-
-        mpLastUsedRow = maRowList.GetRecord( nXclRow ).get();
-        mnLastUsedXclRow = nXclRow;
+        RowRef p(new XclExpRow(GetRoot(), nXclRow, maOutlineBfr, bRowAlwaysEmpty));
+        ::std::pair<RowMap::iterator, bool> r = maRowMap.insert(RowMap::value_type(nXclRow, p));
+        itr = r.first;
     }
-    return *mpLastUsedRow;
+    return *itr->second;
 }
 
 // ============================================================================
@@ -2260,7 +2225,7 @@ XclExpCellTable::XclExpCellTable( const XclExpRoot& rRoot ) :
 
     // range for cell iterator
     SCCOL nLastIterScCol = nMaxScCol;
-    SCROW nLastIterScRow = ulimit_cast< SCROW >( nLastUsedScRow + 128, nMaxScRow );
+    SCROW nLastIterScRow = ulimit_cast< SCROW >( nLastUsedScRow, nMaxScRow );
     ScUsedAreaIterator aIt( &rDoc, nScTab, 0, 0, nLastIterScCol, nLastIterScRow );
 
     // activate the correct segment and sub segment at the progress bar
diff --git a/sc/source/filter/inc/xetable.hxx b/sc/source/filter/inc/xetable.hxx
index ff20f56..c344ec2 100644
--- a/sc/source/filter/inc/xetable.hxx
+++ b/sc/source/filter/inc/xetable.hxx
@@ -38,6 +38,9 @@
 #include "xeformula.hxx"
 #include "xestyle.hxx"
 
+#include <boost/shared_ptr.hpp>
+#include <map>
+
 /* ============================================================================
 Export of cell tables including row and column description.
 - Managing all used and formatted cells in a sheet.
@@ -980,14 +983,12 @@ private:
     XclExpRow&          GetOrCreateRow( sal_uInt16 nXclRow, bool bRowAlwaysEmpty );
 
 private:
-    typedef XclExpRecordList< XclExpRow >   XclExpRowList;
-    typedef XclExpRowList::RecordRefType    XclExpRowRef;
+    typedef ::boost::shared_ptr<XclExpRow>  RowRef;
+    typedef ::std::map<sal_uInt32, RowRef>  RowMap;
 
-    XclExpRowList       maRowList;          /// List of all ROW records.
+    RowMap              maRowMap;
     XclExpRowOutlineBuffer maOutlineBfr;    /// Buffer for row outline groups.
     XclExpDimensions    maDimensions;       /// DIMENSIONS record for used area.
-    XclExpRow*          mpLastUsedRow;      /// Last used row for faster access.
-    sal_uInt16          mnLastUsedXclRow;   /// Last used row for faster access.
 };
 
 // ============================================================================
commit 230ed9ef8b6efb7ebc75b5e6d90e35cb680cad70
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Wed Oct 13 17:58:15 2010 +0200

    Merged xlsx-shared-xlsx-export-no-more-svstream-sotstorage.diff from ooo-build

diff --git a/sc/source/filter/excel/xestream.cxx b/sc/source/filter/excel/xestream.cxx
index bf1569b..8b63779 100644
--- a/sc/source/filter/excel/xestream.cxx
+++ b/sc/source/filter/excel/xestream.cxx
@@ -1096,9 +1096,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;
@@ -1107,7 +1108,7 @@ bool XclExpXmlStream::exportDocument() throw()
     mpRoot = &aRoot;
     aRoot.GetOldRoot().pER = &aRoot;
     aRoot.GetOldRoot().eDateiTyp = Biff8;
-
+#if 0 // FIXME: Re-write this block without using SotStorage.
     if ( SvtFilterOptions* pOptions = SvtFilterOptions::Get() )
         if ( pShell && pOptions->IsLoadExcelBasicStorage() )
             if ( sal_uInt32 nError
@@ -1118,7 +1119,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>(),
commit 41dce2a8e86caa9c2dff1e7b9da9246e4f258ad1
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Wed Oct 13 17:57:34 2010 +0200

    Merged xlsx-shared-oox-calc-export-sotstorage-init.diff from ooo-build

diff --git a/sc/source/filter/excel/xestream.cxx b/sc/source/filter/excel/xestream.cxx
index 5ee9cb7..bf1569b 100644
--- a/sc/source/filter/excel/xestream.cxx
+++ b/sc/source/filter/excel/xestream.cxx
@@ -54,6 +54,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;
@@ -1092,7 +1096,9 @@ bool XclExpXmlStream::exportDocument() throw()
 {
     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;
commit 68c780b3efc0afc65db44a50aea067cb606f4f90
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Wed Oct 13 17:56:46 2010 +0200

    Merged xlsx-shared-oox-calc-export-export-pivot-content.diff from ooo-build

diff --git a/sc/source/filter/excel/xepivot.cxx b/sc/source/filter/excel/xepivot.cxx
index 2e6294f..9a1989a 100644
--- a/sc/source/filter/excel/xepivot.cxx
+++ b/sc/source/filter/excel/xepivot.cxx
@@ -740,6 +740,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")
@@ -758,6 +760,7 @@ void XclExpPivotCache::SaveXml( XclExpXmlStream& rStrm )
     // create the pivot cache storage stream
     // OOXTODO: WriteCacheStream();
     rWorkbook->endElement( XML_pivotCache );
+#endif /* XLSX_PIVOT_CACHE */
 }
 
 // private --------------------------------------------------------------------
@@ -1871,12 +1874,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 )
commit bd47174b3fcadda86fa6f568a90cdf97721d884f
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Wed Oct 13 17:55:59 2010 +0200

    Merged xlsx-shared-xlsx-export-cell-style-max-builtin.diff from ooo-build

diff --git a/sc/source/filter/excel/xestyle.cxx b/sc/source/filter/excel/xestyle.cxx
index 4c1814b..a4b3d36 100644
--- a/sc/source/filter/excel/xestyle.cxx
+++ b/sc/source/filter/excel/xestyle.cxx
@@ -2242,7 +2242,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() ),
commit 469bdf8c402b8149f31a14698fec622c4e6f2ae1
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Wed Oct 13 17:55:23 2010 +0200

    Merged xlsx-shared-xlsx-export-skip-auto-format.diff from ooo-build

diff --git a/sc/source/filter/excel/xepivot.cxx b/sc/source/filter/excel/xepivot.cxx
index 1d97d18..2e6294f 100644
--- a/sc/source/filter/excel/xepivot.cxx
+++ b/sc/source/filter/excel/xepivot.cxx
@@ -1399,7 +1399,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) ]
commit f6a7fcff8868858d50799af4320c45a8cb8b5c79
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Wed Oct 13 17:54:42 2010 +0200

    Merged xlsx-shared-xlsx-export-simple-autofilter.diff from ooo-buil

diff --git a/sc/source/filter/excel/excrecds.cxx b/sc/source/filter/excel/excrecds.cxx
index 6285895..b9d87fa 100644
--- a/sc/source/filter/excel/excrecds.cxx
+++ b/sc/source/filter/excel/excrecds.cxx
@@ -843,6 +843,7 @@ ExcAutoFilterRecs::ExcAutoFilterRecs( const XclExpRoot& rRoot, SCTAB nTab ) :
     XclExpRoot( rRoot ),
     pFilterMode( NULL ),
     pFilterInfo( NULL )
+    , mbAutoFilter (false)
 {
     ScDBCollection& rDBColl = GetDatabaseRanges();
     XclExpNameManager& rNameMgr = GetNameManager();
@@ -943,6 +944,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;
         }
     }
 }
@@ -1000,7 +1004,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();
@@ -1008,7 +1012,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 );
 }
 
diff --git a/sc/source/filter/inc/excrecds.hxx b/sc/source/filter/inc/excrecds.hxx
index 4a99a7b..ba075e9 100644
--- a/sc/source/filter/inc/excrecds.hxx
+++ b/sc/source/filter/inc/excrecds.hxx
@@ -472,6 +472,7 @@ private:
     XclExpFiltermode*   pFilterMode;
     XclExpAutofilterinfo* pFilterInfo;
     ScRange                 maRef;
+    bool mbAutoFilter;
 };
 
 // ----------------------------------------------------------------------------
commit 5fced3b5d58afa378cce03c8937ff8c39d546ea1
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Wed Oct 13 17:53:56 2010 +0200

    Merged xlsx-shared-xlsx-export-set-xml-2007-flavour.diff from ooo-build

diff --git a/sc/source/filter/excel/xestream.cxx b/sc/source/filter/excel/xestream.cxx
index 4bdb0a4..5ee9cb7 100644
--- a/sc/source/filter/excel/xestream.cxx
+++ b/sc/source/filter/excel/xestream.cxx
@@ -1095,6 +1095,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;
commit 9db5edb4a753b684b99bf3bde060fd727b22d69a
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Wed Oct 13 17:51:38 2010 +0200

    Merged xlsx-shared-xlsx-arabic-export-crash.diff from ooo-build

diff --git a/sc/source/filter/excel/xetable.cxx b/sc/source/filter/excel/xetable.cxx
index 7e32694..352b8e2 100644
--- a/sc/source/filter/excel/xetable.cxx
+++ b/sc/source/filter/excel/xetable.cxx
@@ -899,7 +899,7 @@ void XclExpFormulaCell::SaveXml( XclExpXmlStream& rStrm )
 
     rWorksheet->startElement( XML_f,
             // OOXTODO: XML_t,      ST_CellFormulaType
-            XML_aca,    XclXmlUtils::ToPsz( mxTokArr->IsVolatile() || (mxAddRec.is() && mxAddRec->IsVolatile()) ),
+            XML_aca,    XclXmlUtils::ToPsz( (mxTokArr.is() && mxTokArr->IsVolatile()) || (mxAddRec.is() && mxAddRec->IsVolatile()) ),
             // OOXTODO: XML_ref,    ST_Ref
             // OOXTODO: XML_dt2D,   bool
             // OOXTODO: XML_dtr,    bool
commit 1f3075f834ea6b524b9e56992c24f82225db521d
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Wed Oct 13 17:50:08 2010 +0200

    Merged xlsx-shared-xlsx-shared-import-and-export.diff from ooo-build

diff --git a/sc/source/filter/excel/excdoc.cxx b/sc/source/filter/excel/excdoc.cxx
index cc4cfce..1f8d6a6 100644
--- a/sc/source/filter/excel/excdoc.cxx
+++ b/sc/source/filter/excel/excdoc.cxx
@@ -781,19 +781,17 @@ void ExcDocument::Write( SvStream& rSvStrm )
         pExpChangeTrack->Write();
 }
 
-void ExcDocument::WriteXml( SvStream& rStrm )
+void ExcDocument::WriteXml( XclExpXmlStream& rStrm )
 {
-    XclExpXmlStream aStrm( ::comphelper::getProcessServiceFactory(), rStrm, GetRoot() );
-
     SfxObjectShell* pDocShell = GetDocShell();
 
     using namespace ::com::sun::star;
     uno::Reference<document::XDocumentPropertiesSupplier> xDPS( pDocShell->GetModel(), uno::UNO_QUERY_THROW );
     uno::Reference<document::XDocumentProperties> xDocProps = xDPS->getDocumentProperties();
 
-    aStrm.exportDocumentProperties( xDocProps );
+    rStrm.exportDocumentProperties( xDocProps );
 
-    sax_fastparser::FSHelperPtr& rWorkbook = aStrm.GetCurrentStream();
+    sax_fastparser::FSHelperPtr& rWorkbook = rStrm.GetCurrentStream();
     rWorkbook->startElement( XML_workbook,
             XML_xmlns, "http://schemas.openxmlformats.org/spreadsheetml/2006/main",
             FSNS(XML_xmlns, XML_r), "http://schemas.openxmlformats.org/officeDocument/2006/relationships",
@@ -810,7 +808,7 @@ void ExcDocument::WriteXml( SvStream& rStrm )
     {
         InitializeSave();
 
-        aHeader.WriteXml( aStrm );
+        aHeader.WriteXml( rStrm );
 
         for( size_t nTab = 0, nTabCount = maTableList.GetSize(); nTab < nTabCount; ++nTab )
         {
@@ -821,17 +819,17 @@ void ExcDocument::WriteXml( SvStream& rStrm )
                 xBoundsheet->SetStreamPos( aXclStrm.GetSvStreamPos() );
 #endif
             // write the table
-            maTableList.GetRecord( nTab )->WriteXml( aStrm );
+            maTableList.GetRecord( nTab )->WriteXml( rStrm );
         }
     }
 
     if( pExpChangeTrack )
-        pExpChangeTrack->WriteXml( aStrm );
+        pExpChangeTrack->WriteXml( rStrm );
 
     rWorkbook->endElement( XML_workbook );
     rWorkbook.reset();
 
-    aStrm.commitStorage();
+    rStrm.commitStorage();
 }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/source/filter/excel/excel.cxx b/sc/source/filter/excel/excel.cxx
index e4207f8..c4c8230 100644
--- a/sc/source/filter/excel/excel.cxx
+++ b/sc/source/filter/excel/excel.cxx
@@ -262,25 +262,10 @@ static FltError lcl_ExportExcelBiff( SfxMedium& rMedium, ScDocument *pDocument,
     return eRet;
 }
 
-static FltError lcl_ExportExcel2007Xml( SfxMedium& rMedium, ScDocument *pDocument,
-        SvStream* pMedStrm, CharSet eNach )
-{
-    SotStorageRef xRootStrg = (SotStorage*) 0;
-
-    XclExpRootData aExpData( EXC_BIFF8, rMedium, xRootStrg, *pDocument, eNach );
-    aExpData.meOutput = EXC_OUTPUT_XML_2007;
-
-    ExportXml2007 aFilter( aExpData, *pMedStrm );
-
-    FltError eRet = aFilter.Write();
-
-    return eRet;
-}
-
 FltError ScFormatFilterPluginImpl::ScExportExcel5( SfxMedium& rMedium, ScDocument *pDocument,
     ExportFormatExcel eFormat, CharSet eNach )
 {
-    if( eFormat != ExpBiff5 && eFormat != ExpBiff8 && eFormat != Exp2007Xml )
+    if( eFormat != ExpBiff5 && eFormat != ExpBiff8 )
         return eERR_NI;
 
     // check the passed Calc document
@@ -295,8 +280,6 @@ FltError ScFormatFilterPluginImpl::ScExportExcel5( SfxMedium& rMedium, ScDocumen
     FltError eRet = eERR_UNKN_BIFF;
     if( eFormat == ExpBiff5 || eFormat == ExpBiff8 )
         eRet = lcl_ExportExcelBiff( rMedium, pDocument, pMedStrm, eFormat == ExpBiff8, eNach );
-    else if( eFormat == Exp2007Xml )
-        eRet = lcl_ExportExcel2007Xml( rMedium, pDocument, pMedStrm, eNach );
 
     return eRet;
 }
diff --git a/sc/source/filter/excel/expop2.cxx b/sc/source/filter/excel/expop2.cxx
index 10db502..4e89ed0 100644
--- a/sc/source/filter/excel/expop2.cxx
+++ b/sc/source/filter/excel/expop2.cxx
@@ -148,60 +148,4 @@ ExportBiff8::ExportBiff8( XclExpRootData& rExpData, SvStream& rStrm ) :
 ExportBiff8::~ExportBiff8()
 {
 }
-
-
-ExportXml2007::ExportXml2007( XclExpRootData& rExpData, SvStream& rStrm )
-    : ExportTyp( rStrm, &rExpData.mrDoc, rExpData.meTextEnc )
-    , XclExpRoot( rExpData )
-{
-    pExcRoot = &GetOldRoot();
-    pExcRoot->pER = this;
-    pExcRoot->eDateiTyp = Biff8;
-    pExcDoc = new ExcDocument( *this );
-}
-
-
-ExportXml2007::~ExportXml2007()
-{
-    delete pExcDoc;
-}
-
-
-FltError ExportXml2007::Write()
-{
-    SfxObjectShell* pDocShell = GetDocShell();
-    DBG_ASSERT( pDocShell, "ExportXml2007::Write - no document shell" );
-
-    SotStorageRef xRootStrg = GetRootStorage();
-    DBG_ASSERT( xRootStrg.Is(), "ExportXml2007::Write - no root storage" );
-
-    bool bWriteBasicCode = false;
-    bool bWriteBasicStrg = false;
-
-    if( SvtFilterOptions* pFilterOpt = SvtFilterOptions::Get() )
-    {
-        bWriteBasicCode = pFilterOpt->IsLoadExcelBasicCode();
-        bWriteBasicStrg = pFilterOpt->IsLoadExcelBasicStorage();
-    }
-
-    if( pDocShell && xRootStrg.Is() && bWriteBasicStrg )
-    {
-        SvxImportMSVBasic aBasicImport( *pDocShell, *xRootStrg, bWriteBasicCode, bWriteBasicStrg );
-        ULONG nErr = aBasicImport.SaveOrDelMSVBAStorage( TRUE, EXC_STORAGE_VBA_PROJECT );
-        if( nErr != ERRCODE_NONE )
-            pDocShell->SetError( nErr, ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( OSL_LOG_PREFIX ) ) );
-    }
-
-    pExcDoc->ReadDoc();         // ScDoc -> ExcDoc
-    pExcDoc->WriteXml( aOut );  // wechstreamen
-
-    //! TODO: separate warnings for columns and sheets
-    const XclExpAddressConverter& rAddrConv = GetAddressConverter();
-    if( rAddrConv.IsColTruncated() || rAddrConv.IsRowTruncated() || rAddrConv.IsTabTruncated() )
-        return SCWARN_EXPORT_MAXROW;
-
-    return eERR_OK;
-}
-
-
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/source/filter/excel/xestream.cxx b/sc/source/filter/excel/xestream.cxx
index 5f67972..4bdb0a4 100644
--- a/sc/source/filter/excel/xestream.cxx
+++ b/sc/source/filter/excel/xestream.cxx
@@ -47,6 +47,9 @@
 #include "rangelst.hxx"
 #include "compiler.hxx"
 
+#include <../../ui/inc/docsh.hxx>
+#include <excdoc.hxx>
+
 #include <oox/core/tokens.hxx>
 #include <formula/grammar.hxx>
 #include <oox/export/drawingml.hxx>
@@ -54,14 +57,20 @@
 #define DEBUG_XL_ENCRYPTION 0
 
 using ::com::sun::star::beans::PropertyValue;
+using ::com::sun::star::embed::XStorage;
 using ::com::sun::star::io::XOutputStream;
 using ::com::sun::star::io::XStream;
 using ::com::sun::star::lang::XComponent;
 using ::com::sun::star::lang::XMultiServiceFactory;
 using ::com::sun::star::lang::XServiceInfo;
+using ::com::sun::star::lang::XSingleServiceFactory;
+using ::com::sun::star::registry::InvalidRegistryException;
+using ::com::sun::star::registry::XRegistryKey;
+using ::com::sun::star::uno::Exception;
 using ::com::sun::star::uno::Reference;
 using ::com::sun::star::uno::Sequence;
 using ::com::sun::star::uno::UNO_QUERY;
+using ::com::sun::star::uno::XInterface;
 using ::rtl::OString;
 using ::rtl::OUString;
 using ::utl::OStreamWrapper;
@@ -951,29 +960,10 @@ sax_fastparser::FSHelperPtr XclXmlUtils::WriteFontData( sax_fastparser::FSHelper
 
 // ============================================================================
 
-XclExpXmlStream::XclExpXmlStream( const Reference< XMultiServiceFactory >& rSMgr, SvStream& rStrm, const XclExpRoot& rRoot )
-    : XmlFilterBase( rSMgr )
-    , mrRoot( rRoot )
+XclExpXmlStream::XclExpXmlStream( const Reference< XMultiServiceFactory >& rSMgr )
+    : XmlFilterBase( rSMgr ),
+      mpRoot( NULL )
 {
-    Sequence< PropertyValue > aArgs( 1 );
-    const OUString sStream( RTL_CONSTASCII_USTRINGPARAM( "StreamForOutput" ) );
-    aArgs[0].Name  = sStream;
-    aArgs[0].Value <<= Reference< XStream > ( new OStreamWrapper( rStrm ) );
-
-    XServiceInfo* pInfo = rRoot.GetDocModelObj();
-    Reference< XComponent > aComponent( pInfo, UNO_QUERY );
-    setSourceDocument( aComponent );
-    filter( aArgs );
-
-    PushStream( CreateOutputStream(
-                OUString::createFromAscii( "xl/workbook.xml" ),
-                OUString::createFromAscii( "xl/workbook.xml" ),
-                Reference< XOutputStream >(),
-                "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml",
-                "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" ) );
-
-    DrawingML::ResetCounters();
-    XclObjList::ResetCounters();
 }
 
 XclExpXmlStream::~XclExpXmlStream()
@@ -1086,14 +1076,57 @@ oox::drawingml::chart::ChartConverter& XclExpXmlStream::getChartConverter()
     return * (oox::drawingml::chart::ChartConverter*) NULL;
 }
 
-bool XclExpXmlStream::exportDocument() throw()
+ScDocShell* XclExpXmlStream::getDocShell()
 {
-    return false;
+    Reference< XInterface > xModel( getModel(), UNO_QUERY );
+
+    ScModelObj *pObj = dynamic_cast < ScModelObj* >( xModel.get() );
+
+    if ( pObj )
+        return reinterpret_cast < ScDocShell* >( pObj->GetEmbeddedObject() );
+
+    return 0;
 }
 
-::rtl::OUString XclExpXmlStream::implGetImplementationName() const
+bool XclExpXmlStream::exportDocument() throw()
 {
-    return CREATE_OUSTRING( "TODO" );
+    ScDocShell* pShell = getDocShell();
+    ScDocument* pDoc = pShell->GetDocument();
+    SotStorageRef rStorage = dynamic_cast <SotStorage*>( Reference<XStorage>( pShell->GetStorage() ).get() );
+
+    XclExpRootData aData( EXC_BIFF8, *pShell->GetMedium (), rStorage, *pDoc, RTL_TEXTENCODING_DONTKNOW );
+    XclExpRoot aRoot( aData );
+
+    mpRoot = &aRoot;
+    aRoot.GetOldRoot().pER = &aRoot;
+    aRoot.GetOldRoot().eDateiTyp = Biff8;
+
+    if ( SvtFilterOptions* pOptions = SvtFilterOptions::Get() )
+        if ( pShell && pOptions->IsLoadExcelBasicStorage() )
+            if ( sal_uInt32 nError
+                 = SvxImportMSVBasic( *pShell, *rStorage,
+                                      pOptions->IsLoadExcelBasicCode(),
+                                      pOptions->IsLoadExcelBasicStorage() )
+                .SaveOrDelMSVBAStorage( true, EXC_STORAGE_VBA_PROJECT) )
+            {
+                pShell->SetError( nError, ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( OSL_LOG_PREFIX ) ) );
+            }
+
+    OUString const workbook = CREATE_OUSTRING( "xl/workbook.xml" );
+    PushStream( CreateOutputStream( workbook, workbook,
+                                    Reference <XOutputStream>(),
+                                    "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml",
+                                    "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" ) );
+
+    // destruct at the end of the block
+    {
+        ExcDocument aDocRoot( aRoot );
+        aDocRoot.ReadDoc();
+        aDocRoot.WriteXml( *this );
+    }
+
+    mpRoot = NULL;
+    return true;
 }
 
 void XclExpXmlStream::Trace( const char* format, ...)
@@ -1104,4 +1137,99 @@ void XclExpXmlStream::Trace( const char* format, ...)
     va_end( ap );
 }
 
+//////////////////////////////////////////////////////////////////////////
+// UNO stuff so that the filter is registered
+//////////////////////////////////////////////////////////////////////////
+
+#define IMPL_NAME "com.sun.star.comp.oox.ExcelFilterExport"
+
+OUString XlsxExport_getImplementationName()
+{
+    return OUString( RTL_CONSTASCII_USTRINGPARAM( IMPL_NAME ) );
+}
+
+::rtl::OUString XclExpXmlStream::implGetImplementationName() const
+{
+    return CREATE_OUSTRING( "TODO" );
+}
+
+
+Sequence< OUString > SAL_CALL XlsxExport_getSupportedServiceNames() throw()
+{
+    const OUString aServiceName( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.document.ExportFilter" ) );
+    const Sequence< OUString > aSeq( &aServiceName, 1 );
+    return aSeq;
+}
+
+Reference< XInterface > SAL_CALL XlsxExport_createInstance(const Reference< XMultiServiceFactory > & rSMgr ) throw( Exception )
+{
+    return (cppu::OWeakObject*) new XclExpXmlStream( rSMgr );
+}
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+SAL_DLLPUBLIC_EXPORT void SAL_CALL component_getImplementationEnvironment( const sal_Char ** ppEnvTypeName, uno_Environment ** /* ppEnv */ )
+{
+    *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME;
+}
+
+SAL_DLLPUBLIC_EXPORT sal_Bool SAL_CALL component_writeInfo( void* /* pServiceManager */, void* pRegistryKey )
+{
+    sal_Bool bRet = sal_False;
+
+    if( pRegistryKey )
+    {
+        try
+        {
+            Reference< XRegistryKey > xNewKey1(
+                    static_cast< XRegistryKey* >( pRegistryKey )->createKey(
+                        OUString::createFromAscii( IMPL_NAME "/UNO/SERVICES/" ) ) );
+            xNewKey1->createKey( XlsxExport_getSupportedServiceNames().getConstArray()[0] );
+
+            bRet = sal_True;
+        }
+        catch( InvalidRegistryException& )
+        {
+            OSL_ENSURE( sal_False, "### InvalidRegistryException!" );
+        }
+    }
+
+    return bRet;
+}
+
+// ------------------------
+// - component_getFactory -
+// ------------------------
+
+SAL_DLLPUBLIC_EXPORT void* SAL_CALL component_getFactory( const sal_Char* pImplName, void* pServiceManager, void* /* pRegistryKey */ )
+{
+    Reference< XSingleServiceFactory > xFactory;
+    void* pRet = 0;
+
+    if ( rtl_str_compare( pImplName, IMPL_NAME ) == 0 )
+    {
+        const OUString aServiceName( OUString::createFromAscii( IMPL_NAME ) );
+
+        xFactory = Reference< XSingleServiceFactory >( ::cppu::createSingleFactory(
+                    reinterpret_cast< XMultiServiceFactory* >( pServiceManager ),
+                    XlsxExport_getImplementationName(),
+                    XlsxExport_createInstance,
+                    XlsxExport_getSupportedServiceNames() ) );
+    }
+
+    if ( xFactory.is() )
+    {
+        xFactory->acquire();
+        pRet = xFactory.get();
+    }
+
+    return pRet;
+}
+
+#ifdef __cplusplus
+}
+#endif
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/source/filter/inc/excdoc.hxx b/sc/source/filter/inc/excdoc.hxx
index a05305d..25687f2 100644
--- a/sc/source/filter/inc/excdoc.hxx
+++ b/sc/source/filter/inc/excdoc.hxx
@@ -110,7 +110,7 @@ public:
 
     void				ReadDoc( void );
     void				Write( SvStream& rSvStrm );
-    void				WriteXml( SvStream& rSvStrm );
+    void				WriteXml( XclExpXmlStream& );
 };
 
 
diff --git a/sc/source/filter/inc/exp_op.hxx b/sc/source/filter/inc/exp_op.hxx
index a115c7b..6a8c150 100644
--- a/sc/source/filter/inc/exp_op.hxx
+++ b/sc/source/filter/inc/exp_op.hxx
@@ -127,21 +127,6 @@ public:
 };
 
 
-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 a/sc/source/filter/inc/xestream.hxx b/sc/source/filter/inc/xestream.hxx
index 0cf6e4c..87cff88 100644
--- a/sc/source/filter/inc/xestream.hxx
+++ b/sc/source/filter/inc/xestream.hxx
@@ -257,6 +257,7 @@ private:
     (s.Len() && s.GetChar( 0 ) != 0 ? XclXmlUtils::ToOString( s ).getStr() : NULL)
 
 class ScAddress;
+class ScDocShell;
 class ScDocument;
 class ScFormulaCell;
 class ScRange;
@@ -305,11 +306,11 @@ public:
 class XclExpXmlStream : public oox::core::XmlFilterBase
 {
 public:
-    XclExpXmlStream( const com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory >& rSMgr, SvStream& rStrm, const XclExpRoot& rRoot );
+    XclExpXmlStream( const com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory >& rSMgr );
     virtual ~XclExpXmlStream();
 
     /** Returns the filter root data. */
-    inline const XclExpRoot& GetRoot() const { return mrRoot; }
+    inline const XclExpRoot& GetRoot() const { return *mpRoot; }
 
     sax_fastparser::FSHelperPtr& GetCurrentStream();
     void PushStream( sax_fastparser::FSHelperPtr aStream );
@@ -341,12 +342,13 @@ public:
     void Trace( const char* format, ...);
 private:
     virtual ::rtl::OUString implGetImplementationName() const;
+    ScDocShell *getDocShell();
 
     typedef std::map< ::rtl::OUString,
         std::pair< ::rtl::OUString,
             sax_fastparser::FSHelperPtr > >     XclExpXmlPathToStateMap;
 
-    const XclExpRoot&                           mrRoot;         /// Filter root data.
+    const XclExpRoot*                           mpRoot;
     std::stack< sax_fastparser::FSHelperPtr >   maStreams;
     XclExpXmlPathToStateMap                     maOpenedStreamMap;
 };
diff --git a/sc/source/ui/docshell/docsh.cxx b/sc/source/ui/docshell/docsh.cxx
index 6c3a98e..a4c5ea4 100644
--- a/sc/source/ui/docshell/docsh.cxx
+++ b/sc/source/ui/docshell/docsh.cxx
@@ -172,7 +172,6 @@ static const sal_Char __FAR_DATA pFilterExcel95[]	= "MS Excel 95";
 static const sal_Char __FAR_DATA pFilterEx95Temp[]	= "MS Excel 95 Vorlage/Template";
 static const sal_Char __FAR_DATA pFilterExcel97[]	= "MS Excel 97";
 static const sal_Char __FAR_DATA pFilterEx97Temp[]	= "MS Excel 97 Vorlage/Template";
-static const sal_Char __FAR_DATA pFilterEx07Xml[]   = "Calc MS Excel 2007 XML";
 static const sal_Char __FAR_DATA pFilterDBase[]		= "dBase";
 static const sal_Char __FAR_DATA pFilterDif[]		= "DIF";
 static const sal_Char __FAR_DATA pFilterSylk[]		= "SYLK";
@@ -2091,8 +2090,7 @@ BOOL __EXPORT ScDocShell::ConvertTo( SfxMedium &rMed )
     }
     else if (aFltName.EqualsAscii(pFilterExcel5) || aFltName.EqualsAscii(pFilterExcel95) ||
              aFltName.EqualsAscii(pFilterExcel97) || aFltName.EqualsAscii(pFilterEx5Temp) ||
-             aFltName.EqualsAscii(pFilterEx95Temp) || aFltName.EqualsAscii(pFilterEx97Temp) ||
-             aFltName.EqualsAscii(pFilterEx07Xml))
+             aFltName.EqualsAscii(pFilterEx95Temp) || aFltName.EqualsAscii(pFilterEx97Temp))
     {
         WaitObject aWait( GetActiveDialogParent() );
 
@@ -2134,8 +2132,6 @@ BOOL __EXPORT ScDocShell::ConvertTo( SfxMedium &rMed )
             ExportFormatExcel eFormat = ExpBiff5;
             if( aFltName.EqualsAscii( pFilterExcel97 ) || aFltName.EqualsAscii( pFilterEx97Temp ) )
                 eFormat = ExpBiff8;
-            if( aFltName.EqualsAscii( pFilterEx07Xml ) )
-                eFormat = Exp2007Xml;
             FltError eError = ScFormatFilter::Get().ScExportExcel5( rMed, &aDocument, eFormat, RTL_TEXTENCODING_MS_1252 );
 
             if( eError && !GetError() )
diff --git a/sc/util/scfilt.map b/sc/util/scfilt.map
index 642b8db..ea169e1 100644
--- a/sc/util/scfilt.map
+++ b/sc/util/scfilt.map
@@ -1,6 +1,9 @@
 UDK_3_0_0 {
   global:
     ScFilterCreate;
+    component_getImplementationEnvironment;
+    component_writeInfo;
+    component_getFactory;
   local:
     *;
 };
commit d96bc3bf83a539526c783825f569c82f9147bcc7
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Wed Oct 13 17:44:47 2010 +0200

    Merged xlsx-shared-xlsx-snapshot.diff from ooo-build

diff --git a/sc/source/filter/excel/excdoc.cxx b/sc/source/filter/excel/excdoc.cxx
index 0245521..cc4cfce 100644
--- a/sc/source/filter/excel/excdoc.cxx
+++ b/sc/source/filter/excel/excdoc.cxx
@@ -85,6 +85,8 @@
 
 #include <math.h>
 
+#include <com/sun/star/document/XDocumentProperties.hpp>
+#include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
 #include <oox/core/tokens.hxx>
 
 using ::rtl::OString;
@@ -120,27 +122,22 @@ static void lcl_AddCalcPr( XclExpRecordList<>& aRecList, ExcTable& self )
     aRecList.AppendNewRecord( new XclExpXmlEndSingleElementRecord() );  // XML_calcPr
 }
 
-#if 0
-// removed during rebase, because scsheetprotection02 is not yet up-stream :-(
 static void lcl_AddWorkbookProtection( XclExpRecordList<>& aRecList, ExcTable& self )
 {
     aRecList.AppendNewRecord( new XclExpXmlStartSingleElementRecord( XML_workbookProtection ) );
+
     const ScDocProtection* pProtect = self.GetDoc().GetDocProtection();
     if (pProtect && pProtect->isProtected())
     {
         aRecList.AppendNewRecord( new XclExpWindowProtection(pProtect->isOptionEnabled(ScDocProtection::WINDOWS)) );
         aRecList.AppendNewRecord( new XclExpProtection(pProtect->isOptionEnabled(ScDocProtection::STRUCTURE)) );
+#if ENABLE_SHEET_PROTECTION
         aRecList.AppendNewRecord( new XclExpPassHash(pProtect->getPasswordHash(PASSHASH_XL)) );
+#endif
     }
 
-    if( self.GetBiff() == EXC_BIFF8 )
-    {
-        aRecList.AppendNewRecord( new XclExpProt4Rev );
-        aRecList.AppendNewRecord( new XclExpProt4RevPass );
-    }
     aRecList.AppendNewRecord( new XclExpXmlEndSingleElementRecord() );   // XML_workbookProtection
 }
-#endif
 
 static void lcl_AddScenariosAndFilters( XclExpRecordList<>& aRecList, const XclExpRoot& rRoot, SCTAB nScTab )
 {
@@ -268,30 +265,25 @@ void ExcTable::FillAsHeader( ExcBoundsheetList& rBoundsheetList )
     }
 
     // document protection options
-    const ScDocProtection* pProtect = GetDoc().GetDocProtection();
-    if (pProtect && pProtect->isProtected())
+    if( GetOutput() == EXC_OUTPUT_BINARY )
     {
-        Add( new XclExpWindowProtection(pProtect->isOptionEnabled(ScDocProtection::WINDOWS)) );
-        Add( new XclExpProtection(pProtect->isOptionEnabled(ScDocProtection::STRUCTURE)) );
-#if ENABLE_SHEET_PROTECTION
-        Add( new XclExpPassHash(pProtect->getPasswordHash(PASSHASH_XL)) );
-#endif
-    }
+        lcl_AddWorkbookProtection( aRecList, *this );
 
-    if( GetBiff() == EXC_BIFF8 )
-    {
-        Add( new XclExpProt4Rev );
-        Add( new XclExpProt4RevPass );
-    }
+        if( GetBiff() == EXC_BIFF8 )
+        {
+            Add( new XclExpProt4Rev );
+            Add( new XclExpProt4RevPass );
+        }
 
-    // document protection options
-    if( GetOutput() == EXC_OUTPUT_BINARY )
-    {
-        //lcl_AddWorkbookProtection( aRecList, *this );
         lcl_AddBookviews( aRecList, *this );
     }
 
     Add( new XclExpXmlStartSingleElementRecord( XML_workbookPr ) );
+    if ( GetBiff() == EXC_BIFF8 && GetOutput() != EXC_OUTPUT_BINARY )
+    {
+        Add( new XclExpBoolRecord(0x0040, false, XML_backupFile ) );    // BACKUP
+        Add( new XclExpBoolRecord(0x008D, false, XML_showObjects ) );   // HIDEOBJ
+    }
 
     if ( GetBiff() == EXC_BIFF8 )
     {
@@ -375,7 +367,7 @@ void ExcTable::FillAsHeader( ExcBoundsheetList& rBoundsheetList )
 
         if( GetOutput() != EXC_OUTPUT_BINARY )
         {
-            //lcl_AddWorkbookProtection( aRecList, *this );
+            lcl_AddWorkbookProtection( aRecList, *this );
             lcl_AddBookviews( aRecList, *this );
         }
 
@@ -636,6 +628,9 @@ void ExcTable::FillAsXmlTable( SCTAB nCodeNameIdx )
         }
     }
 
+    // all MSODRAWING and OBJ stuff of this sheet goes here
+    aRecList.AppendRecord( GetObjectManager().ProcessDrawing( GetSdrPage( mnScTab ) ) );
+
     // EOF
     Add( new ExcEof );
 }
@@ -788,25 +783,33 @@ void ExcDocument::Write( SvStream& rSvStrm )
 
 void ExcDocument::WriteXml( SvStream& rStrm )
 {
+    XclExpXmlStream aStrm( ::comphelper::getProcessServiceFactory(), rStrm, GetRoot() );
+
+    SfxObjectShell* pDocShell = GetDocShell();
+
+    using namespace ::com::sun::star;
+    uno::Reference<document::XDocumentPropertiesSupplier> xDPS( pDocShell->GetModel(), uno::UNO_QUERY_THROW );
+    uno::Reference<document::XDocumentProperties> xDocProps = xDPS->getDocumentProperties();
+
+    aStrm.exportDocumentProperties( xDocProps );
+
+    sax_fastparser::FSHelperPtr& rWorkbook = aStrm.GetCurrentStream();
+    rWorkbook->startElement( XML_workbook,
+            XML_xmlns, "http://schemas.openxmlformats.org/spreadsheetml/2006/main",
+            FSNS(XML_xmlns, XML_r), "http://schemas.openxmlformats.org/officeDocument/2006/relationships",
+            FSEND );
+    rWorkbook->singleElement( XML_fileVersion,
+            XML_appName, "Calc",
+            // OOXTODO: XML_codeName
+            // OOXTODO: XML_lastEdited
+            // OOXTODO: XML_lowestEdited
+            // OOXTODO: XML_rupBuild
+            FSEND );
+
     if( !maTableList.IsEmpty() )
     {
         InitializeSave();
 
-        XclExpXmlStream aStrm( ::comphelper::getProcessServiceFactory(), rStrm, GetRoot() );
-
-        sax_fastparser::FSHelperPtr& rWorkbook = aStrm.GetCurrentStream();
-        rWorkbook->startElement( XML_workbook,
-                XML_xmlns, "http://schemas.openxmlformats.org/spreadsheetml/2006/main",
-                FSNS(XML_xmlns, XML_r), "http://schemas.openxmlformats.org/officeDocument/2006/relationships",
-                FSEND );
-        rWorkbook->singleElement( XML_fileVersion,
-                XML_appName, "Calc",
-                // OOXTODO: XML_codeName
-                // OOXTODO: XML_lastEdited
-                // OOXTODO: XML_lowestEdited
-                // OOXTODO: XML_rupBuild
-                FSEND );
-
         aHeader.WriteXml( aStrm );
 
         for( size_t nTab = 0, nTabCount = maTableList.GetSize(); nTab < nTabCount; ++nTab )
@@ -820,15 +823,15 @@ void ExcDocument::WriteXml( SvStream& rStrm )
             // write the table
             maTableList.GetRecord( nTab )->WriteXml( aStrm );
         }
-
-        rWorkbook->endElement( XML_workbook );
-        rWorkbook.reset();
-        aStrm.commitStorage();
     }
-#if 0
+
     if( pExpChangeTrack )
-        pExpChangeTrack->WriteXml();
-#endif
+        pExpChangeTrack->WriteXml( aStrm );
+
+    rWorkbook->endElement( XML_workbook );
+    rWorkbook.reset();
+
+    aStrm.commitStorage();
 }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/source/filter/excel/excrecds.cxx b/sc/source/filter/excel/excrecds.cxx
index e37fb20..6285895 100644
--- a/sc/source/filter/excel/excrecds.cxx
+++ b/sc/source/filter/excel/excrecds.cxx
@@ -155,6 +155,10 @@ void ExcRecord::WriteBody( XclExpStream& rStrm )
     SaveCont( rStrm );
 }
 
+void ExcRecord::SaveXml( XclExpXmlStream& rStrm )
+{
+}
+
 
 //--------------------------------------------------------- class ExcEmptyRec -
 
diff --git a/sc/source/filter/excel/expop2.cxx b/sc/source/filter/excel/expop2.cxx
index e018710..10db502 100644
--- a/sc/source/filter/excel/expop2.cxx
+++ b/sc/source/filter/excel/expop2.cxx
@@ -195,20 +195,6 @@ FltError ExportXml2007::Write()
     pExcDoc->ReadDoc();         // ScDoc -> ExcDoc
     pExcDoc->WriteXml( aOut );  // wechstreamen
 
-    if( pDocShell && xRootStrg.Is() )
-    {
-        using namespace ::com::sun::star;
-        uno::Reference<document::XDocumentPropertiesSupplier> xDPS(
-                pDocShell->GetModel(), uno::UNO_QUERY_THROW);
-        uno::Reference<document::XDocumentProperties> xDocProps
-                = xDPS->getDocumentProperties();
-        ::boost::shared_ptr<GDIMetaFile> pMetaFile =
-            pDocShell->GetPreviewMetaFile (sal_False);
-        uno::Sequence<sal_uInt8> metaFile(
-            sfx2::convertMetaFile(pMetaFile.get()));
-        sfx2::SaveOlePropertySet(xDocProps, xRootStrg, &metaFile);
-    }
-
     //! TODO: separate warnings for columns and sheets
     const XclExpAddressConverter& rAddrConv = GetAddressConverter();
     if( rAddrConv.IsColTruncated() || rAddrConv.IsRowTruncated() || rAddrConv.IsTabTruncated() )
diff --git a/sc/source/filter/excel/xeescher.cxx b/sc/source/filter/excel/xeescher.cxx
index e46c4af..fcb7e20 100644
--- a/sc/source/filter/excel/xeescher.cxx
+++ b/sc/source/filter/excel/xeescher.cxx
@@ -69,6 +69,7 @@
 #include "svx/unoapi.hxx"
 
 #include <oox/core/tokens.hxx>
+#include <oox/export/drawingml.hxx>
 
 using ::rtl::OString;
 using ::rtl::OUString;
@@ -90,6 +91,7 @@ using ::com::sun::star::form::binding::XListEntrySource;
 using ::com::sun::star::script::ScriptEventDescriptor;
 using ::com::sun::star::table::CellAddress;
 using ::com::sun::star::table::CellRangeAddress;
+using ::oox::drawingml::DrawingML;
 
 // Escher client anchor =======================================================
 
@@ -298,6 +300,17 @@ void XclExpImgData::Save( XclExpStream& rStrm )
     }
 }
 
+void XclExpImgData::SaveXml( XclExpXmlStream& rStrm )
+{
+    sax_fastparser::FSHelperPtr pWorksheet = rStrm.GetCurrentStream();
+
+    DrawingML aDML( pWorksheet, &rStrm, DrawingML::DOCUMENT_XLSX );
+    OUString rId = aDML.WriteImage( maGraphic );
+    pWorksheet->singleElement( XML_picture,
+            FSNS( XML_r, XML_id ),  XclXmlUtils::ToOString( rId ).getStr(),
+            FSEND );
+}
+
 // ============================================================================
 
 XclExpControlHelper::XclExpControlHelper( const XclExpRoot& rRoot ) :
@@ -1004,7 +1017,7 @@ XclExpNote::XclExpNote( const XclExpRoot& rRoot, const ScAddress& rScPos,
             if( pScNote )
                 if( SdrCaptionObj* pCaption = pScNote->GetOrCreateCaption( maScPos ) )
                     if( const OutlinerParaObject* pOPO = pCaption->GetOutlinerParaObject() )
-                        mnObjId = rRoot.GetObjectManager().AddObj( new XclObjComment( rRoot.GetObjectManager(), pCaption->GetLogicRect(), pOPO->GetTextObject(), pCaption, mbVisible ) );
+                        mnObjId = rRoot.GetObjectManager().AddObj( new XclObjComment( rRoot.GetObjectManager(), pCaption->GetLogicRect(), pOPO->GetTextObject(), pCaption, mbVisible, maScPos ) );
 
             SetRecSize( 9 + maAuthor.GetSize() );
         }
@@ -1089,9 +1102,14 @@ void XclExpNote::WriteXml( sal_Int32 nAuthorId, XclExpXmlStream& rStrm )
             FSEND );
     rComments->startElement( XML_text, FSEND );
     // OOXTODO: phoneticPr, rPh, r
+#if 0
     rComments->startElement( XML_t, FSEND );
     rComments->writeEscaped( XclXmlUtils::ToOUString( maOrigNoteText ) );
     rComments->endElement ( XML_t );
+#else
+    if( mpNoteContents.is() )
+        mpNoteContents->WriteXml( rStrm );
+#endif
     rComments->endElement( XML_text );
     rComments->endElement( XML_comment );
 }
@@ -1173,7 +1191,7 @@ struct OUStringLess : public std::binary_function<OUString, OUString, bool>
 {
     bool operator()(const OUString& x, const OUString& y) const
     {
-        return x.compareTo( y ) <= 0;
+        return x.compareTo( y ) < 0;
     }
 };
 
diff --git a/sc/source/filter/excel/xename.cxx b/sc/source/filter/excel/xename.cxx
index 42f2c08..0d2056a 100644
--- a/sc/source/filter/excel/xename.cxx
+++ b/sc/source/filter/excel/xename.cxx
@@ -563,7 +563,7 @@ sal_uInt16 XclExpNameManagerImpl::CreateName( const ScRangeData& rRangeData )
         xName->SetTokenArray( xTokArr );
 
         String sSymbol;
-        rRangeData.GetSymbol( sSymbol, formula::FormulaGrammar::GRAM_NATIVE_XL_A1 );
+        rRangeData.GetSymbol( sSymbol, formula::FormulaGrammar::GRAM_ENGLISH_XL_A1 );
         xName->SetSymbol( sSymbol );
 
         /*  Try to replace by existing built-in name - complete token array is
diff --git a/sc/source/filter/excel/xepivot.cxx b/sc/source/filter/excel/xepivot.cxx
index 7b09f06..1d97d18 100644
--- a/sc/source/filter/excel/xepivot.cxx
+++ b/sc/source/filter/excel/xepivot.cxx
@@ -1346,6 +1346,147 @@ void XclExpPivotTable::Save( XclExpStream& rStrm )
     }
 }
 
+void XclExpPivotTable::SaveXml( XclExpXmlStream& rStrm )
+{
+    if( !mbValid )
+        return;
+    sax_fastparser::FSHelperPtr aPivotTableDefinition = rStrm.CreateOutputStream(
+            XclXmlUtils::GetStreamName( "xl/", "pivotTables/pivotTable", mnOutScTab+1),
+            XclXmlUtils::GetStreamName( "../", "pivotTables/pivotTable", mnOutScTab+1),
+            rStrm.GetCurrentStream()->getOutputStream(),
+            "application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml",
+            "http://schemas.openxmlformats.org/officeDocument/2006/relationships/pivotTable");
+    rStrm.PushStream( aPivotTableDefinition );
+
+    aPivotTableDefinition->startElement( XML_pivotTableDefinition,
+            XML_xmlns,                      "http://schemas.openxmlformats.org/spreadsheetml/2006/main",
+            XML_name,                       XclXmlUtils::ToOString( maPTInfo.maTableName ).getStr(),
+            XML_cacheId,                    OString::valueOf( (sal_Int32) maPTInfo.mnCacheIdx ).getStr(),
+            XML_dataOnRows,                 XclXmlUtils::ToPsz( maPTInfo.mnDataAxis == EXC_SXVD_AXIS_COL ),
+            XML_dataPosition,               OString::valueOf( (sal_Int32) maPTInfo.mnDataPos ).getStr(),
+            XML_autoFormatId,               OString::valueOf( (sal_Int32) maPTInfo.mnAutoFmtIdx ).getStr(),
+            // OOXTODO: XML_applyNumberFormats,         [ SXVIEW fAtrNum (maPTInfo.mnFlags) ]
+            // OOXTODO: XML_applyBorderFormats,         [ SXVIEW fAtrBdr (maPTInfo.mnFlags) ]
+            // OOXTODO: XML_applyFontFormats,           [ SXVIEW fAtrFnt (maPTInfo.mnFlags) ]
+            // OOXTODO: XML_applyPatternFormats,        [ SXVIEW fAtrPat (maPTInfo.mnFlags) ]
+            // OOXTODO: XML_applyAlignmentFormats,      [ SXVIEW fAtrAlc (maPTInfo.mnFlags) ]
+            // OOXTODO: XML_applyWidthHeightFormats,    [ SXVIEW fAtrProc (maPTInfo.mnFlags) ]
+            XML_dataCaption,                XclXmlUtils::ToOString( maPTInfo.maDataName ).getStr(),
+            // OOXTODO: XML_grandTotalCaption,          [ SxViewEx9 chGrand ]
+            // OOXTODO: XML_errorCaption,               [ SXEx stError ]
+            // OOXTODO: XML_showError,                  [ SXEx fDisplayErrorString ]
+            // OOXTODO: XML_missingCaption,             [ SXEx stDisplayNull ]
+            // OOXTODO: XML_showMissing,                [ SXEx fDisplayNullString ]
+            // OOXTODO: XML_pageStyle,                  [ SXEx stPageFieldStyle ]
+            // OOXTODO: XML_pivotTableStyle,            [ SXEx stTableStyle ]
+            // OOXTODO: XML_vacatedStyle,               [ SXEx stVacateStyle ]
+            // OOXTODO: XML_tag,                        [ SXEx stTag ]
+            // OOXTODO: XML_updatedVersion,             [ app-dependent ]
+            // OOXTODO: XML_minRefreshableVersion,      [ app-dependent ]
+            // OOXTODO: XML_asteriskTotals,             [ QsiSXTag/SXView9Save fHideTotAnnotation ]
+            // OOXTODO: XML_showItems,                  [ ??? ]
+            // OOXTODO: XML_editData,                   [ ??? ]
+            // OOXTODO: XML_disableFieldList,           [ SXEx fEnableFieldDialog? ]
+            // OOXTODO: XML_showCalcMbrs,               [ ??? ]
+            // OOXTODO: XML_visualTotals,               [ ??? ]
+            // OOXTODO: XML_showMultipleLabel,          [ SXEx fMergeLabels? ]
+            // OOXTODO: XML_showDataDropDown,           [ SXEx fEnableDrillDown? ]
+            // OOXTODO: XML_showDrill,                  [ ??? ]
+            // OOXTODO: XML_printDrill,                 [ ??? ]
+            // OOXTODO: XML_showMemberPropertyTips,
+            // OOXTODO: XML_showDataTips,
+            // OOXTODO: XML_enableWizard,
+            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,
+            // OOXTODO: XML_pageWrap,                   [ SXEx cWrapPage (maPTExtInfo.mnFlags) ]
+            // OOXTODO: XML_pageOverThenDown,           [ SXEx fAcrossPageLay (maPTExtInfo.mnFlags) ]
+            // OOXTODO: XML_subtotalHiddenItems,        [ SXEx fSubtotalHiddenPageItems (maPTExtInfo.mnFlags) ]
+            XML_rowGrandTotals,             XclXmlUtils::ToPsz( maPTInfo.mnFlags & EXC_SXVIEW_ROWGRAND ),
+            XML_colGrandTotals,             XclXmlUtils::ToPsz( maPTInfo.mnFlags & EXC_SXVIEW_COLGRAND ),
+            // OOXTODO: XML_fieldPrintTitles,
+            // OOXTODO: XML_itemPrintTitles,
+            // OOXTODO: XML_mergeItem,
+            // OOXTODO: XML_showDropZones,
+            // OOXTODO: XML_createdVersion,
+            // OOXTODO: XML_indent,
+            // OOXTODO: XML_showEmptyRow,
+            // OOXTODO: XML_showEmptyCol,
+            // OOXTODO: XML_showHeaders,
+            // OOXTODO: XML_compact,
+            // OOXTODO: XML_outline,
+            // OOXTODO: XML_outlineData,
+            // OOXTODO: XML_compactData,
+            // OOXTODO: XML_published,
+            // OOXTODO: XML_gridDropZones,
+            // OOXTODO: XML_immersive,
+            // OOXTODO: XML_multipleFieldFilters,
+            // OOXTODO: XML_chartFormat,
+            // OOXTODO: XML_rowHeaderCaption,
+            // OOXTODO: XML_colHeaderCaption,
+            // OOXTODO: XML_fieldListSortAscending,
+            // OOXTODO: XML_mdxSubqueries,
+            // OOXTODO: XML_customListSort,
+            FSEND );
+
+    aPivotTableDefinition->singleElement( XML_location,
+            XML_ref,            XclXmlUtils::ToOString( maPTInfo.maOutXclRange ).getStr(),
+            XML_firstHeaderRow, OString::valueOf( (sal_Int32) maPTInfo.mnFirstHeadRow ).getStr(),
+            XML_firstDataRow,   OString::valueOf( (sal_Int32) maPTInfo.maDataXclPos.mnRow ).getStr(),
+            XML_firstDataCol,   OString::valueOf( (sal_Int32) maPTInfo.maDataXclPos.mnCol ).getStr(),
+            XML_rowPageCount,   OString::valueOf( (sal_Int32) maPTInfo.mnDataRows ).getStr(),   // OOXTODO?
+            XML_colPageCount,   OString::valueOf( (sal_Int32) maPTInfo.mnDataCols ).getStr(),   // OOXTODO?
+            FSEND );
+
+    // OOXTODO: XML_pivotFields
+
+    // maPTInfo.mnFields?
+    if( maPTInfo.mnRowFields )
+    {
+        aPivotTableDefinition->startElement( XML_rowFields,
+                XML_count,  OString::valueOf( (sal_Int32) maPTInfo.mnRowFields ).getStr(),
+                FSEND );
+        aPivotTableDefinition->endElement( XML_rowFields );
+    }
+
+    // OOXTODO: XML_rowItems
+
+    if( maPTInfo.mnColFields )
+    {
+        aPivotTableDefinition->startElement( XML_colFields,
+                XML_count,  OString::valueOf( (sal_Int32) maPTInfo.mnColFields ).getStr(),
+                FSEND );
+        aPivotTableDefinition->endElement( XML_colFields );
+    }
+
+    // OOXTODO: XML_colItems
+
+    if( maPTInfo.mnPageFields )
+    {
+        aPivotTableDefinition->startElement( XML_pageFields,
+                XML_count,  OString::valueOf( (sal_Int32) maPTInfo.mnPageFields ).getStr(),
+                FSEND );
+        aPivotTableDefinition->endElement( XML_pageFields );
+    }
+
+    if( maPTInfo.mnDataFields )
+    {
+        aPivotTableDefinition->startElement( XML_dataFields,
+                XML_count,  OString::valueOf( (sal_Int32) maPTInfo.mnDataFields ).getStr(),
+                FSEND );
+        aPivotTableDefinition->endElement( XML_dataFields );
+    }
+
+    // OOXTODO: XML_formats, XML_conditionalFormats, XML_chartFormats,
+    //          XML_pivotHierarchies, XML_pivotTableStyleInfo, XML_filters,
+    //          XML_rowHierarchiesUsage, XML_colHierarchiesUsage, XML_ext
+
+    aPivotTableDefinition->endElement( XML_pivotTableDefinition );
+
+    rStrm.PopStream();
+}
+
 // private --------------------------------------------------------------------
 
 XclExpPTField* XclExpPivotTable::GetFieldAcc( const String& rName )
diff --git a/sc/source/filter/excel/xestream.cxx b/sc/source/filter/excel/xestream.cxx
index d666c38..5f67972 100644
--- a/sc/source/filter/excel/xestream.cxx
+++ b/sc/source/filter/excel/xestream.cxx
@@ -43,11 +43,13 @@
 #include "xlstring.hxx"
 #include "xeroot.hxx"
 #include "xestyle.hxx"
+#include "xcl97rec.hxx"
 #include "rangelst.hxx"
 #include "compiler.hxx"
 
 #include <oox/core/tokens.hxx>
 #include <formula/grammar.hxx>
+#include <oox/export/drawingml.hxx>
 
 #define DEBUG_XL_ENCRYPTION 0
 
@@ -644,6 +646,70 @@ void XclExpBiff8Encrypter::EncryptBytes( SvStream& rStrm, vector<sal_uInt8>& aBy
     mnOldPos = nStrmPos;
 }
 
+static const char* lcl_GetErrorString( USHORT nScErrCode )
+{
+    sal_uInt8 nXclErrCode = XclTools::GetXclErrorCode( nScErrCode );
+    switch( nXclErrCode )
+    {
+        case EXC_ERR_NULL:  return "#NULL!";
+        case EXC_ERR_DIV0:  return "#DIV/0!";
+        case EXC_ERR_VALUE: return "#VALUE!";
+        case EXC_ERR_REF:   return "#REF!";
+        case EXC_ERR_NAME:  return "#NAME?";
+        case EXC_ERR_NUM:   return "#NUM!";
+        case EXC_ERR_NA:
+        default:            return "#N/A";
+    }
+}
+
+void XclXmlUtils::GetFormulaTypeAndValue( ScFormulaCell& rCell, const char*& rsType, OUString& rsValue )
+{
+    switch( rCell.GetFormatType() )
+    {
+        case NUMBERFORMAT_NUMBER:
+        {
+            // either value or error code
+            USHORT nScErrCode = rCell.GetErrCode();
+            if( nScErrCode )
+            {
+                rsType = "e";
+                rsValue = ToOUString( lcl_GetErrorString( nScErrCode ) );
+            }
+            else
+            {
+                rsType = "n";
+                rsValue = OUString::valueOf( rCell.GetValue() );
+            }
+        }
+        break;
+
+        case NUMBERFORMAT_TEXT:
+        {
+            rsType = "str";
+            String aResult;
+            rCell.GetString( aResult );
+            rsValue = ToOUString( aResult );
+        }
+        break;
+
+        case NUMBERFORMAT_LOGICAL:
+        {
+            rsType = "b";
+            rsValue = ToOUString( rCell.GetValue() == 0.0 ? "0" : "1" );
+        }
+        break;
+
+        default:
+        {
+            rsType = "inlineStr";
+            String aResult;
+            rCell.GetString( aResult );
+            rsValue = ToOUString( aResult );
+        }
+        break;
+    }
+}
+
 rtl::OUString XclXmlUtils::GetStreamName( const char* sStreamDir, const char* sStream, sal_Int32 nId )
 {
     rtl::OUStringBuffer sBuf;
@@ -735,6 +801,11 @@ static ScRange lcl_ToRange( const XclRange& rRange )
     return aRange;
 }
 
+rtl::OString XclXmlUtils::ToOString( const XclRange& rRange )
+{
+    return ToOString( lcl_ToRange( rRange ) );
+}
+
 rtl::OString XclXmlUtils::ToOString( const XclRangeList& rRanges )
 {
     ScRangeList aRanges;
@@ -767,7 +838,7 @@ OUString XclXmlUtils::ToOUString( const String& s )
 rtl::OUString XclXmlUtils::ToOUString( ScDocument& rDocument, const ScAddress& rAddress, ScTokenArray* pTokenArray )
 {
     ScCompiler aCompiler( &rDocument, rAddress, *pTokenArray);
-    aCompiler.SetGrammar(FormulaGrammar::GRAM_NATIVE_XL_A1);
+    aCompiler.SetGrammar(FormulaGrammar::GRAM_ENGLISH_XL_A1);
     String s;
     aCompiler.CreateStringFromTokenArray( s );
     return ToOUString( s );
@@ -784,6 +855,100 @@ const char* XclXmlUtils::ToPsz( bool b )
     return b ? "true" : "false";
 }
 
+sax_fastparser::FSHelperPtr XclXmlUtils::WriteElement( sax_fastparser::FSHelperPtr pStream, sal_Int32 nElement, sal_Int32 nValue )
+{
+    pStream->startElement( nElement, FSEND );
+    pStream->write( nValue );
+    pStream->endElement( nElement );
+
+    return pStream;
+}
+
+sax_fastparser::FSHelperPtr XclXmlUtils::WriteElement( sax_fastparser::FSHelperPtr pStream, sal_Int32 nElement, sal_Int64 nValue )
+{
+    pStream->startElement( nElement, FSEND );
+    pStream->write( nValue );
+    pStream->endElement( nElement );
+
+    return pStream;
+}
+
+sax_fastparser::FSHelperPtr XclXmlUtils::WriteElement( sax_fastparser::FSHelperPtr pStream, sal_Int32 nElement, const char* sValue )
+{
+    pStream->startElement( nElement, FSEND );
+    pStream->write( sValue );
+    pStream->endElement( nElement );
+
+    return pStream;
+}
+
+static void lcl_WriteValue( sax_fastparser::FSHelperPtr& rStream, sal_Int32 nElement, const char* pValue )
+{
+    if( !pValue )
+        return;
+    rStream->singleElement( nElement,
+            XML_val, pValue,
+            FSEND );
+}
+
+static const char* lcl_GetUnderlineStyle( FontUnderline eUnderline, bool& bHaveUnderline )
+{
+    bHaveUnderline = true;
+    switch( eUnderline )
+    {
+        // OOXTODO: doubleAccounting, singleAccounting
+        // OOXTODO: what should be done with the other FontUnderline values?
+        case UNDERLINE_SINGLE:  return "single";
+        case UNDERLINE_DOUBLE:  return "double";
+        case UNDERLINE_NONE:
+        default:                bHaveUnderline = false; return "none";
+    }
+}
+
+static const char* lcl_ToVerticalAlignmentRun( SvxEscapement eEscapement, bool& bHaveAlignment )
+{
+    bHaveAlignment = true;
+    switch( eEscapement )
+    {
+        case SVX_ESCAPEMENT_SUPERSCRIPT:    return "superscript";
+        case SVX_ESCAPEMENT_SUBSCRIPT:      return "subscript";
+        case SVX_ESCAPEMENT_OFF:
+        default:                            bHaveAlignment = false; return "baseline";
+    }
+}
+
+sax_fastparser::FSHelperPtr XclXmlUtils::WriteFontData( sax_fastparser::FSHelperPtr pStream, const XclFontData& rFontData, sal_Int32 nFontId )
+{
+    bool bHaveUnderline, bHaveVertAlign;
+    const char* pUnderline = lcl_GetUnderlineStyle( rFontData.GetScUnderline(), bHaveUnderline );
+    const char* pVertAlign = lcl_ToVerticalAlignmentRun( rFontData.GetScEscapement(), bHaveVertAlign );
+
+    lcl_WriteValue( pStream, nFontId,        XclXmlUtils::ToOString( rFontData.maName ).getStr() );
+    lcl_WriteValue( pStream, XML_charset,    rFontData.mnCharSet != 0 ? OString::valueOf( (sal_Int32) rFontData.mnCharSet ).getStr() : NULL );
+    lcl_WriteValue( pStream, XML_family,     OString::valueOf( (sal_Int32) rFontData.mnFamily ).getStr() );
+    lcl_WriteValue( pStream, XML_b,          rFontData.mnWeight > 400 ? XclXmlUtils::ToPsz( rFontData.mnWeight > 400 ) : NULL );
+    lcl_WriteValue( pStream, XML_i,          rFontData.mbItalic ? XclXmlUtils::ToPsz( rFontData.mbItalic ) : NULL );
+    lcl_WriteValue( pStream, XML_strike,     rFontData.mbStrikeout ? XclXmlUtils::ToPsz( rFontData.mbStrikeout ) : NULL );
+    lcl_WriteValue( pStream, XML_outline,    rFontData.mbOutline ? XclXmlUtils::ToPsz( rFontData.mbOutline ) : NULL );
+    lcl_WriteValue( pStream, XML_shadow,     rFontData.mbShadow ? XclXmlUtils::ToPsz( rFontData.mbShadow ) : NULL );
+    // OOXTODO: lcl_WriteValue( rStream, XML_condense, );    // mac compatibility setting
+    // OOXTODO: lcl_WriteValue( rStream, XML_extend, );      // compatibility setting
+    if( rFontData.maColor != Color( 0xFF, 0xFF, 0xFF, 0xFF ) )
+        pStream->singleElement( XML_color,
+                // OOXTODO: XML_auto,       bool
+                // OOXTODO: XML_indexed,    uint
+                XML_rgb,    XclXmlUtils::ToOString( rFontData.maColor ).getStr(),
+                // OOXTODO: XML_theme,      index into <clrScheme/>
+                // OOXTODO: XML_tint,       double
+                FSEND );
+    lcl_WriteValue( pStream, XML_sz,         OString::valueOf( (double) (rFontData.mnHeight / 20.0) ) );  // Twips->Pt
+    lcl_WriteValue( pStream, XML_u,          bHaveUnderline ? pUnderline : NULL );
+    lcl_WriteValue( pStream, XML_vertAlign,  bHaveVertAlign ? pVertAlign : NULL );
+
+    return pStream;
+}
+
+
 // ============================================================================
 
 XclExpXmlStream::XclExpXmlStream( const Reference< XMultiServiceFactory >& rSMgr, SvStream& rStrm, const XclExpRoot& rRoot )
@@ -806,6 +971,9 @@ XclExpXmlStream::XclExpXmlStream( const Reference< XMultiServiceFactory >& rSMgr
                 Reference< XOutputStream >(),
                 "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml",
                 "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" ) );
+
+    DrawingML::ResetCounters();
+    XclObjList::ResetCounters();
 }
 
 XclExpXmlStream::~XclExpXmlStream()
@@ -868,75 +1036,6 @@ sax_fastparser::FSHelperPtr& XclExpXmlStream::WriteAttributes( sal_Int32 nAttrib
 
     return rStream;
 }
-
-static void lcl_WriteValue( sax_fastparser::FSHelperPtr& rStream, sal_Int32 nElement, const char* pValue )
-{
-    if( !pValue )
-        return;
-    rStream->singleElement( nElement,
-            XML_val, pValue,
-            FSEND );
-}
-
-static const char* lcl_GetUnderlineStyle( FontUnderline eUnderline, bool& bHaveUnderline )
-{
-    bHaveUnderline = true;
-    switch( eUnderline )
-    {
-        // OOXTODO: doubleAccounting, singleAccounting
-        // OOXTODO: what should be done with the other FontUnderline values?
-        case UNDERLINE_SINGLE:  return "single";
-        case UNDERLINE_DOUBLE:  return "double";
-        case UNDERLINE_NONE:
-        default:                bHaveUnderline = false; return "none";
-    }
-}
-
-static const char* lcl_ToVerticalAlignmentRun( SvxEscapement eEscapement, bool& bHaveAlignment )
-{
-    bHaveAlignment = true;
-    switch( eEscapement )
-    {
-        case SVX_ESCAPEMENT_SUPERSCRIPT:    return "superscript";
-        case SVX_ESCAPEMENT_SUBSCRIPT:      return "subscript";
-        case SVX_ESCAPEMENT_OFF:
-        default:                            bHaveAlignment = false; return "baseline";
-    }
-}
-
-sax_fastparser::FSHelperPtr& XclExpXmlStream::WriteFontData( const XclFontData& rFontData, sal_Int32 nFontId )
-{
-    bool bHaveUnderline, bHaveVertAlign;
-    const char* pUnderline = lcl_GetUnderlineStyle( rFontData.GetScUnderline(), bHaveUnderline );
-    const char* pVertAlign = lcl_ToVerticalAlignmentRun( rFontData.GetScEscapement(), bHaveVertAlign );
-
-    sax_fastparser::FSHelperPtr& rStream = GetCurrentStream();
-
-    lcl_WriteValue( rStream, nFontId,        XclXmlUtils::ToOString( rFontData.maName ).getStr() );
-    lcl_WriteValue( rStream, XML_charset,    rFontData.mnCharSet != 0 ? OString::valueOf( (sal_Int32) rFontData.mnCharSet ).getStr() : NULL );
-    lcl_WriteValue( rStream, XML_family,     OString::valueOf( (sal_Int32) rFontData.mnFamily ).getStr() );
-    lcl_WriteValue( rStream, XML_b,          rFontData.mnWeight > 400 ? XclXmlUtils::ToPsz( rFontData.mnWeight > 400 ) : NULL );
-    lcl_WriteValue( rStream, XML_i,          rFontData.mbItalic ? XclXmlUtils::ToPsz( rFontData.mbItalic ) : NULL );
-    lcl_WriteValue( rStream, XML_strike,     rFontData.mbStrikeout ? XclXmlUtils::ToPsz( rFontData.mbStrikeout ) : NULL );
-    lcl_WriteValue( rStream, XML_outline,    rFontData.mbOutline ? XclXmlUtils::ToPsz( rFontData.mbOutline ) : NULL );
-    lcl_WriteValue( rStream, XML_shadow,     rFontData.mbShadow ? XclXmlUtils::ToPsz( rFontData.mbShadow ) : NULL );
-    // OOXTODO: lcl_WriteValue( rStream, XML_condense, );    // mac compatibility setting
-    // OOXTODO: lcl_WriteValue( rStream, XML_extend, );      // compatibility setting
-    if( rFontData.maColor != Color( 0xFF, 0xFF, 0xFF, 0xFF ) )
-        rStream->singleElement( XML_color,
-                // OOXTODO: XML_auto,       bool
-                // OOXTODO: XML_indexed,    uint
-                XML_rgb,    XclXmlUtils::ToOString( rFontData.maColor ).getStr(),
-                // OOXTODO: XML_theme,      index into <clrScheme/>
-                // OOXTODO: XML_tint,       double
-                FSEND );
-    lcl_WriteValue( rStream, XML_sz,         OString::valueOf( (double) (rFontData.mnHeight / 20.0) ) );  // Twips->Pt
-    lcl_WriteValue( rStream, XML_u,          bHaveUnderline ? pUnderline : NULL );
-    lcl_WriteValue( rStream, XML_vertAlign,  bHaveVertAlign ? pVertAlign : NULL );
-
-    return rStream;
-}
-
 sax_fastparser::FSHelperPtr XclExpXmlStream::CreateOutputStream (
     const OUString& sFullStream,
     const OUString& sRelativeStream,
diff --git a/sc/source/filter/excel/xestring.cxx b/sc/source/filter/excel/xestring.cxx
index 63fd3c8..b75bb2c 100644
--- a/sc/source/filter/excel/xestring.cxx
+++ b/sc/source/filter/excel/xestring.cxx
@@ -31,6 +31,8 @@
 
 #include <algorithm>
 #include <stdio.h>
+#include "xlstyle.hxx"
+#include "xestyle.hxx"
 #include "xestream.hxx"
 #include "xlstyle.hxx"
 #include "xestyle.hxx"
@@ -453,7 +455,7 @@ static sal_uInt16 lcl_WriteRun( XclExpXmlStream& rStrm, const ScfUInt16Vec& rBuf
     {
         const XclFontData& rFontData = pFont->GetFontData();
         rWorksheet->startElement( XML_rPr, FSEND );
-        rStrm.WriteFontData( rFontData, XML_rFont );
+        XclXmlUtils::WriteFontData( rWorksheet, rFontData, XML_rFont );
         rWorksheet->endElement( XML_rPr );
     }
     rWorksheet->startElement( XML_t, 
@@ -462,7 +464,7 @@ static sal_uInt16 lcl_WriteRun( XclExpXmlStream& rStrm, const ScfUInt16Vec& rBuf
     rWorksheet->writeEscaped( XclXmlUtils::ToOUString( rBuffer, nStart, nLength ) );
     rWorksheet->endElement( XML_t );
     rWorksheet->endElement( XML_r );
-    return static_cast<sal_uInt16>(nStart + nLength);
+    return nStart + nLength;
 }
 
 void XclExpString::WriteXml( XclExpXmlStream& rStrm ) const
diff --git a/sc/source/filter/excel/xestyle.cxx b/sc/source/filter/excel/xestyle.cxx
index 3f69d90..4c1814b 100644
--- a/sc/source/filter/excel/xestyle.cxx
+++ b/sc/source/filter/excel/xestyle.cxx
@@ -982,7 +982,7 @@ void XclExpFont::SaveXml( XclExpXmlStream& rStrm )
 {
     sax_fastparser::FSHelperPtr& rStyleSheet = rStrm.GetCurrentStream();
     rStyleSheet->startElement( XML_font, FSEND );
-    rStrm.WriteFontData( maData, XML_name );
+    XclXmlUtils::WriteFontData( rStyleSheet, maData, XML_name );
     // OOXTODO: XML_scheme; //scheme/@val values: "major", "minor", "none"
     rStyleSheet->endElement( XML_font );
 }
diff --git a/sc/source/filter/excel/xetable.cxx b/sc/source/filter/excel/xetable.cxx
index 075e445..7e32694 100644
--- a/sc/source/filter/excel/xetable.cxx
+++ b/sc/source/filter/excel/xetable.cxx
@@ -883,76 +883,12 @@ void XclExpFormulaCell::Save( XclExpStream& rStrm )
         mxStringRec->Save( rStrm );
 }
 
-static const char* lcl_GetErrorString( USHORT nScErrCode )
-{
-    sal_uInt8 nXclErrCode = XclTools::GetXclErrorCode( nScErrCode );
-    switch( nXclErrCode )
-    {
-        case EXC_ERR_NULL:  return "#NULL!";
-        case EXC_ERR_DIV0:  return "#DIV/0!";
-        case EXC_ERR_VALUE: return "#VALUE!";
-        case EXC_ERR_REF:   return "#REF!";
-        case EXC_ERR_NAME:  return "#NAME?";
-        case EXC_ERR_NUM:   return "#NUM!";
-        case EXC_ERR_NA:    
-        default:            return "#N/A";
-    }
-}
-
-static void lcl_GetFormulaInfo( ScFormulaCell& rCell, const char** pType, OUString& rValue)
-{
-    switch( rCell.GetFormatType() )
-    {
-        case NUMBERFORMAT_NUMBER:
-        {
-            // either value or error code
-            USHORT nScErrCode = rCell.GetErrCode();
-            if( nScErrCode )
-            {
-                *pType = "e";
-                rValue = XclXmlUtils::ToOUString( lcl_GetErrorString( nScErrCode ) );
-            }
-            else
-            {
-                *pType = "n";
-                rValue = OUString::valueOf( rCell.GetValue() );
-            }
-        }
-        break;
-
-        case NUMBERFORMAT_TEXT:
-        {
-            *pType = "str";
-            String aResult;
-            rCell.GetString( aResult );
-            rValue = XclXmlUtils::ToOUString( aResult );
-        }
-        break;
-
-        case NUMBERFORMAT_LOGICAL:
-        {
-            *pType = "b";
-            rValue = XclXmlUtils::ToOUString( rCell.GetValue() == 0.0 ? "0" : "1" );
-        }
-        break;
-
-        default:
-        {
-            *pType = "inlineStr";
-            String aResult;
-            rCell.GetString( aResult );
-            rValue = XclXmlUtils::ToOUString( aResult );
-        }
-        break;
-    }
-}
-
 void XclExpFormulaCell::SaveXml( XclExpXmlStream& rStrm )
 {
     const char* sType = NULL;
     OUString    sValue;
 
-    lcl_GetFormulaInfo( mrScFmlaCell, &sType, sValue );
+    XclXmlUtils::GetFormulaTypeAndValue( mrScFmlaCell, sType, sValue );
     sax_fastparser::FSHelperPtr& rWorksheet = rStrm.GetCurrentStream();
     rWorksheet->startElement( XML_c,
             XML_r,      XclXmlUtils::ToOString( GetXclPos() ).getStr(),
diff --git a/sc/source/filter/inc/XclExpChangeTrack.hxx b/sc/source/filter/inc/XclExpChangeTrack.hxx
index 24b723e..8e25c80 100644
--- a/sc/source/filter/inc/XclExpChangeTrack.hxx
+++ b/sc/source/filter/inc/XclExpChangeTrack.hxx
@@ -238,6 +238,8 @@ public:
 
     virtual UINT16				GetNum() const;
     virtual sal_Size            GetLen() const;
+
+    virtual void                SaveXml( XclExpXmlStream& rStrm );
 };
 
 //___________________________________________________________________

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list