LCOV - code coverage report
Current view: top level - sc/inc - docuno.hxx (source / functions) Hit Total Coverage
Test: commit e02a6cb2c3e2b23b203b422e4e0680877f232636 Lines: 0 1 0.0 %
Date: 2014-04-14 Functions: 0 1 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
       2             : /*
       3             :  * This file is part of the LibreOffice project.
       4             :  *
       5             :  * This Source Code Form is subject to the terms of the Mozilla Public
       6             :  * License, v. 2.0. If a copy of the MPL was not distributed with this
       7             :  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
       8             :  *
       9             :  * This file incorporates work covered by the following license notice:
      10             :  *
      11             :  *   Licensed to the Apache Software Foundation (ASF) under one or more
      12             :  *   contributor license agreements. See the NOTICE file distributed
      13             :  *   with this work for additional information regarding copyright
      14             :  *   ownership. The ASF licenses this file to you under the Apache
      15             :  *   License, Version 2.0 (the "License"); you may not use this file
      16             :  *   except in compliance with the License. You may obtain a copy of
      17             :  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
      18             :  */
      19             : 
      20             : #ifndef SC_DOCUNO_HXX
      21             : #define SC_DOCUNO_HXX
      22             : 
      23             : #include "address.hxx"
      24             : #include <sfx2/sfxbasemodel.hxx>
      25             : #include <svl/lstner.hxx>
      26             : #include <svx/fmdmod.hxx>
      27             : #include <com/sun/star/view/XRenderable.hpp>
      28             : #include <com/sun/star/style/XStyleFamiliesSupplier.hpp>
      29             : #include <com/sun/star/document/XActionLockable.hpp>
      30             : #include <com/sun/star/document/XLinkTargetSupplier.hpp>
      31             : #include <com/sun/star/drawing/XDrawPagesSupplier.hpp>
      32             : #include <com/sun/star/drawing/XDrawPages.hpp>
      33             : #include <com/sun/star/sheet/XGoalSeek.hpp>
      34             : #include <com/sun/star/sheet/XCalculatable.hpp>
      35             : #include <com/sun/star/sheet/XScenarios.hpp>
      36             : #include <com/sun/star/sheet/XConsolidatable.hpp>
      37             : #include <com/sun/star/sheet/XSpreadsheetDocument.hpp>
      38             : #include <com/sun/star/sheet/XSpreadsheets2.hpp>
      39             : #include <com/sun/star/sheet/XDocumentAuditing.hpp>
      40             : #include <com/sun/star/lang/XServiceInfo.hpp>
      41             : #include <com/sun/star/util/XProtectable.hpp>
      42             : #include <com/sun/star/container/XEnumerationAccess.hpp>
      43             : #include <com/sun/star/table/XTableColumns.hpp>
      44             : #include <com/sun/star/table/XTableRows.hpp>
      45             : #include <com/sun/star/sheet/XSheetAnnotations.hpp>
      46             : #include <com/sun/star/beans/XPropertySet.hpp>
      47             : #include <com/sun/star/sheet/XCellRangesAccess.hpp>
      48             : #include <com/sun/star/sheet/opencl/XOpenCLSelection.hpp>
      49             : #include <com/sun/star/sheet/opencl/OpenCLPlatform.hpp>
      50             : #include <com/sun/star/util/XChangesNotifier.hpp>
      51             : #include <cppuhelper/implbase2.hxx>
      52             : #include <cppuhelper/implbase3.hxx>
      53             : #include <cppuhelper/implbase4.hxx>
      54             : #include <cppuhelper/implbase5.hxx>
      55             : #include <cppuhelper/interfacecontainer.h>
      56             : #include <svl/itemprop.hxx>
      57             : #include "drwlayer.hxx"
      58             : 
      59             : class ScDocShell;
      60             : class ScAnnotationObj;
      61             : class ScMarkData;
      62             : class ScPrintFuncCache;
      63             : class ScPrintSelectionStatus;
      64             : class ScTableColumnObj;
      65             : class ScTableRowObj;
      66             : class ScTableSheetObj;
      67             : class ScRangeList;
      68             : class ScPrintUIOptions;
      69             : class ScSheetSaveData;
      70             : 
      71             : class SC_DLLPUBLIC ScModelObj : public SfxBaseModel,
      72             :                     public com::sun::star::sheet::XSpreadsheetDocument,
      73             :                     public com::sun::star::document::XActionLockable,
      74             :                     public com::sun::star::sheet::XCalculatable,
      75             :                     public com::sun::star::util::XProtectable,
      76             :                     public com::sun::star::drawing::XDrawPagesSupplier,
      77             :                     public com::sun::star::sheet::XGoalSeek,
      78             :                     public com::sun::star::sheet::XConsolidatable,
      79             :                     public com::sun::star::sheet::XDocumentAuditing,
      80             :                     public com::sun::star::style::XStyleFamiliesSupplier,
      81             :                     public com::sun::star::view::XRenderable,
      82             :                     public com::sun::star::document::XLinkTargetSupplier,
      83             :                     public com::sun::star::beans::XPropertySet,
      84             :                     public SvxFmMSFactory,  ///< derived from XMultiServiceFactory
      85             :                     public com::sun::star::lang::XServiceInfo,
      86             :                     public ::com::sun::star::util::XChangesNotifier,
      87             :                     public com::sun::star::sheet::opencl::XOpenCLSelection
      88             : {
      89             : private:
      90             :     SfxItemPropertySet      aPropSet;
      91             :     ScDocShell*             pDocShell;
      92             :     ScPrintFuncCache*       pPrintFuncCache;
      93             :     ScPrintUIOptions*       pPrinterOptions;
      94             :     com::sun::star::uno::Reference<com::sun::star::uno::XAggregation> xNumberAgg;
      95             :     com::sun::star::uno::Reference<com::sun::star::uno::XInterface> xDrawGradTab;
      96             :     com::sun::star::uno::Reference<com::sun::star::uno::XInterface> xDrawHatchTab;
      97             :     com::sun::star::uno::Reference<com::sun::star::uno::XInterface> xDrawBitmapTab;
      98             :     com::sun::star::uno::Reference<com::sun::star::uno::XInterface> xDrawTrGradTab;
      99             :     com::sun::star::uno::Reference<com::sun::star::uno::XInterface> xDrawMarkerTab;
     100             :     com::sun::star::uno::Reference<com::sun::star::uno::XInterface> xDrawDashTab;
     101             :     com::sun::star::uno::Reference<com::sun::star::uno::XInterface> xChartDataProv;
     102             :     com::sun::star::uno::Reference<com::sun::star::uno::XInterface> xObjProvider;
     103             : 
     104             :     ::cppu::OInterfaceContainerHelper maChangesListeners;
     105             : 
     106             :     bool                    FillRenderMarkData( const com::sun::star::uno::Any& aSelection,
     107             :                                                 const com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue >& rOptions,
     108             :                                                 ScMarkData& rMark, ScPrintSelectionStatus& rStatus, OUString& rPagesStr ) const;
     109             :     com::sun::star::uno::Reference<com::sun::star::uno::XAggregation> GetFormatter();
     110             :     void                    HandleCalculateEvents();
     111             : 
     112             :     css::uno::Reference<css::uno::XInterface> create(
     113             :         OUString const & aServiceSpecifier,
     114             :         css::uno::Sequence<css::uno::Any> const * arguments);
     115             : 
     116             :     OUString           maBuildId;
     117             : protected:
     118           0 :     const SfxItemPropertySet&   GetPropertySet() const { return aPropSet; }
     119             : 
     120             : public:
     121             :                             ScModelObj(ScDocShell* pDocSh);
     122             :     virtual                 ~ScModelObj();
     123             : 
     124             :     /// create ScModelObj and set at pDocSh (SetBaseModel)
     125             :     static void             CreateAndSet(ScDocShell* pDocSh);
     126             : 
     127             :     ScDocument*             GetDocument() const;
     128             :     SfxObjectShell*         GetEmbeddedObject() const;
     129             : 
     130             :     void UpdateAllRowHeights();
     131             : 
     132             :     void                    BeforeXMLLoading();
     133             :     void                    AfterXMLLoading(bool bRet);
     134             :     ScSheetSaveData*        GetSheetSaveData();
     135             : 
     136             :     void                    RepaintRange( const ScRange& rRange );
     137             :     void                    RepaintRange( const ScRangeList& rRange );
     138             : 
     139             :     bool                    HasChangesListeners() const;
     140             : 
     141             :     void                    NotifyChanges( const OUString& rOperation, const ScRangeList& rRanges,
     142             :                                            const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& rProperties =
     143             :                                                ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >() );
     144             : 
     145             :     virtual ::com::sun::star::uno::Any SAL_CALL queryInterface(
     146             :                                 const ::com::sun::star::uno::Type & rType )
     147             :                                     throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     148             :     virtual void SAL_CALL   acquire() throw() SAL_OVERRIDE;
     149             :     virtual void SAL_CALL   release() throw() SAL_OVERRIDE;
     150             : 
     151             :     virtual void            Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) SAL_OVERRIDE;
     152             : 
     153             :                             /// XSpreadsheetDocument
     154             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::sheet::XSpreadsheets > SAL_CALL
     155             :                             getSheets() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     156             : 
     157             :                             /// XStyleFamiliesSupplier
     158             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > SAL_CALL
     159             :                             getStyleFamilies() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     160             : 
     161             :                             /// XRenderable
     162             :     virtual sal_Int32 SAL_CALL getRendererCount( const ::com::sun::star::uno::Any& aSelection,
     163             :                                     const ::com::sun::star::uno::Sequence<
     164             :                                         ::com::sun::star::beans::PropertyValue >& xOptions )
     165             :                                 throw (::com::sun::star::lang::IllegalArgumentException,
     166             :                                        ::com::sun::star::uno::RuntimeException,
     167             :                                        std::exception) SAL_OVERRIDE;
     168             :     virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL
     169             :                             getRenderer( sal_Int32 nRenderer, const ::com::sun::star::uno::Any& aSelection,
     170             :                                     const ::com::sun::star::uno::Sequence<
     171             :                                         ::com::sun::star::beans::PropertyValue >& xOptions )
     172             :                                 throw (::com::sun::star::lang::IllegalArgumentException,
     173             :                                        ::com::sun::star::uno::RuntimeException,
     174             :                                        std::exception) SAL_OVERRIDE;
     175             :     virtual void SAL_CALL   render( sal_Int32 nRenderer, const ::com::sun::star::uno::Any& aSelection,
     176             :                                     const ::com::sun::star::uno::Sequence<
     177             :                                         ::com::sun::star::beans::PropertyValue >& xOptions )
     178             :                                 throw (::com::sun::star::lang::IllegalArgumentException,
     179             :                                        ::com::sun::star::uno::RuntimeException,
     180             :                                        std::exception) SAL_OVERRIDE;
     181             : 
     182             :                             /// XLinkTargetSupplier
     183             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > SAL_CALL
     184             :                             getLinks() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     185             : 
     186             :                             /// XActionLockable
     187             :     virtual sal_Bool SAL_CALL isActionLocked() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     188             :     virtual void SAL_CALL   addActionLock() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     189             :     virtual void SAL_CALL   removeActionLock() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     190             :     virtual void SAL_CALL   setActionLocks( sal_Int16 nLock )
     191             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     192             :     virtual sal_Int16 SAL_CALL resetActionLocks() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     193             : 
     194             :         virtual void SAL_CALL   lockControllers() throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     195             :         virtual void SAL_CALL   unlockControllers() throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     196             : 
     197             :                             /// XCalculatable
     198             :     virtual void SAL_CALL   calculate() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     199             :     virtual void SAL_CALL   calculateAll() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     200             :     virtual sal_Bool SAL_CALL isAutomaticCalculationEnabled()
     201             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     202             :     virtual void SAL_CALL   enableAutomaticCalculation( sal_Bool bEnabled )
     203             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     204             : 
     205             :                             /// XProtectable
     206             :     virtual void SAL_CALL   protect( const OUString& aPassword )
     207             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     208             :     virtual void SAL_CALL   unprotect( const OUString& aPassword )
     209             :                                 throw(::com::sun::star::lang::IllegalArgumentException,
     210             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     211             :     virtual sal_Bool SAL_CALL isProtected() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     212             : 
     213             :                             /// XDrawPagesSupplier
     214             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPages > SAL_CALL
     215             :                             getDrawPages() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     216             : 
     217             :                             /// XGoalSeek
     218             :     virtual ::com::sun::star::sheet::GoalResult SAL_CALL seekGoal(
     219             :                                 const ::com::sun::star::table::CellAddress& aFormulaPosition,
     220             :                                 const ::com::sun::star::table::CellAddress& aVariablePosition,
     221             :                                 const OUString& aGoalValue )
     222             :                                     throw (::com::sun::star::uno::RuntimeException,
     223             :                                            std::exception) SAL_OVERRIDE;
     224             : 
     225             :                             /// XConsolidatable
     226             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::sheet::XConsolidationDescriptor >
     227             :                             SAL_CALL createConsolidationDescriptor( sal_Bool bEmpty )
     228             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     229             :     virtual void SAL_CALL consolidate( const ::com::sun::star::uno::Reference<
     230             :                                 ::com::sun::star::sheet::XConsolidationDescriptor >& xDescriptor )
     231             :                                     throw (::com::sun::star::uno::RuntimeException,
     232             :                                           std::exception) SAL_OVERRIDE;
     233             : 
     234             :                             /// XDocumentAuditing
     235             :     virtual void SAL_CALL   refreshArrows() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     236             : 
     237             :                             /// XViewDataSupplier
     238             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess > SAL_CALL getViewData(  )
     239             :                                 throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     240             : 
     241             :                             /// XPropertySet
     242             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo >
     243             :                             SAL_CALL getPropertySetInfo()
     244             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     245             :     virtual void SAL_CALL   setPropertyValue( const OUString& aPropertyName,
     246             :                                     const ::com::sun::star::uno::Any& aValue )
     247             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     248             :                                     ::com::sun::star::beans::PropertyVetoException,
     249             :                                     ::com::sun::star::lang::IllegalArgumentException,
     250             :                                     ::com::sun::star::lang::WrappedTargetException,
     251             :                                     ::com::sun::star::uno::RuntimeException,
     252             :                                     std::exception) SAL_OVERRIDE;
     253             :     virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue(
     254             :                                     const OUString& PropertyName )
     255             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     256             :                                     ::com::sun::star::lang::WrappedTargetException,
     257             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     258             :     virtual void SAL_CALL   addPropertyChangeListener( const OUString& aPropertyName,
     259             :                                     const ::com::sun::star::uno::Reference<
     260             :                                         ::com::sun::star::beans::XPropertyChangeListener >& xListener )
     261             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     262             :                                     ::com::sun::star::lang::WrappedTargetException,
     263             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     264             :     virtual void SAL_CALL   removePropertyChangeListener( const OUString& aPropertyName,
     265             :                                     const ::com::sun::star::uno::Reference<
     266             :                                         ::com::sun::star::beans::XPropertyChangeListener >& aListener )
     267             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     268             :                                     ::com::sun::star::lang::WrappedTargetException,
     269             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     270             :     virtual void SAL_CALL   addVetoableChangeListener( const OUString& PropertyName,
     271             :                                     const ::com::sun::star::uno::Reference<
     272             :                                         ::com::sun::star::beans::XVetoableChangeListener >& aListener )
     273             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     274             :                                     ::com::sun::star::lang::WrappedTargetException,
     275             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     276             :     virtual void SAL_CALL   removeVetoableChangeListener( const OUString& PropertyName,
     277             :                                     const ::com::sun::star::uno::Reference<
     278             :                                         ::com::sun::star::beans::XVetoableChangeListener >& aListener )
     279             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     280             :                                     ::com::sun::star::lang::WrappedTargetException,
     281             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     282             : 
     283             :                             /// XMultiServiceFactory
     284             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL
     285             :                             createInstance( const OUString& aServiceSpecifier )
     286             :                                 throw(::com::sun::star::uno::Exception,
     287             :                                         ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     288             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL
     289             :                             createInstanceWithArguments( const OUString& ServiceSpecifier,
     290             :                                 const ::com::sun::star::uno::Sequence<
     291             :                                     ::com::sun::star::uno::Any >& Arguments )
     292             :                                 throw(::com::sun::star::uno::Exception,
     293             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     294             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getAvailableServiceNames()
     295             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     296             : 
     297             :                             /// XServiceInfo
     298             :     virtual OUString SAL_CALL getImplementationName()
     299             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     300             :     virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName )
     301             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     302             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames()
     303             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     304             : 
     305             :                             /// XUnoTunnel
     306             :     virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence<
     307             :                                     sal_Int8 >& aIdentifier )
     308             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     309             : 
     310             :     static const com::sun::star::uno::Sequence<sal_Int8>& getUnoTunnelId();
     311             :     static ScModelObj* getImplementation( const com::sun::star::uno::Reference<
     312             :                                     com::sun::star::uno::XInterface> xObj );
     313             : 
     314             :                             /// XTypeProvider
     315             :     virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes()
     316             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     317             :     virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId()
     318             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     319             : 
     320             :                             /// XChangesNotifier
     321             :     virtual void SAL_CALL addChangesListener( const ::com::sun::star::uno::Reference<
     322             :                                     ::com::sun::star::util::XChangesListener >& aListener )
     323             :                                 throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     324             :     virtual void SAL_CALL removeChangesListener( const ::com::sun::star::uno::Reference<
     325             :                                     ::com::sun::star::util::XChangesListener >& aListener )
     326             :                                 throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     327             : 
     328             :     // XOpenCLSelection
     329             :     virtual sal_Bool SAL_CALL isOpenCLEnabled()
     330             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     331             : 
     332             :     virtual void SAL_CALL enableOpenCL(sal_Bool bEnable)
     333             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     334             : 
     335             :     virtual void SAL_CALL enableAutomaticDeviceSelection(sal_Bool bForce)
     336             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     337             : 
     338             :     virtual void SAL_CALL disableAutomaticDeviceSelection()
     339             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     340             : 
     341             :     virtual void SAL_CALL selectOpenCLDevice( sal_Int32 platform, sal_Int32 device )
     342             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     343             : 
     344             :     virtual sal_Int32 SAL_CALL getPlatformID()
     345             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     346             : 
     347             :     virtual sal_Int32 SAL_CALL getDeviceID()
     348             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     349             : 
     350             :     virtual com::sun::star::uno::Sequence< com::sun::star::sheet::opencl::OpenCLPlatform >
     351             :         SAL_CALL getOpenCLPlatforms()
     352             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     353             : };
     354             : 
     355             : 
     356             : class ScDrawPagesObj : public cppu::WeakImplHelper2<
     357             :                                 com::sun::star::drawing::XDrawPages,
     358             :                                 com::sun::star::lang::XServiceInfo>,
     359             :                         public SfxListener
     360             : {
     361             : private:
     362             :     ScDocShell*             pDocShell;
     363             : 
     364             : ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage >
     365             :                             GetObjectByIndex_Impl(sal_Int32 nIndex) const;
     366             : 
     367             : public:
     368             :                             ScDrawPagesObj(ScDocShell* pDocSh);
     369             :     virtual                 ~ScDrawPagesObj();
     370             : 
     371             :     virtual void            Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) SAL_OVERRIDE;
     372             : 
     373             :                             /// XDrawPages
     374             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage > SAL_CALL
     375             :                             insertNewByIndex( sal_Int32 nIndex )
     376             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     377             :     virtual void SAL_CALL   remove( const ::com::sun::star::uno::Reference<
     378             :                                 ::com::sun::star::drawing::XDrawPage >& xPage )
     379             :                                     throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     380             : 
     381             :                             /// XIndexAccess
     382             :     virtual sal_Int32 SAL_CALL getCount() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     383             :     virtual ::com::sun::star::uno::Any SAL_CALL getByIndex( sal_Int32 Index )
     384             :                                 throw(::com::sun::star::lang::IndexOutOfBoundsException,
     385             :                                     ::com::sun::star::lang::WrappedTargetException,
     386             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     387             : 
     388             :                             /// XElementAccess
     389             :     virtual ::com::sun::star::uno::Type SAL_CALL getElementType()
     390             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     391             :     virtual sal_Bool SAL_CALL hasElements() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     392             : 
     393             :                             /// XServiceInfo
     394             :     virtual OUString SAL_CALL getImplementationName()
     395             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     396             :     virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName )
     397             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     398             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames()
     399             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     400             : };
     401             : 
     402             : 
     403             : class ScTableSheetsObj : public cppu::WeakImplHelper5<
     404             :                                 com::sun::star::sheet::XSpreadsheets2,
     405             :                                 com::sun::star::sheet::XCellRangesAccess,
     406             :                                 com::sun::star::container::XEnumerationAccess,
     407             :                                 com::sun::star::container::XIndexAccess,
     408             :                                 com::sun::star::lang::XServiceInfo>,
     409             :                          public SfxListener
     410             : {
     411             : private:
     412             :     ScDocShell*             pDocShell;
     413             : 
     414             :     ScTableSheetObj*        GetObjectByIndex_Impl(sal_Int32 nIndex) const;
     415             :     ScTableSheetObj*        GetObjectByName_Impl(const OUString& aName) const;
     416             : 
     417             : public:
     418             :                             ScTableSheetsObj(ScDocShell* pDocSh);
     419             :     virtual                 ~ScTableSheetsObj();
     420             : 
     421             :     virtual void            Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) SAL_OVERRIDE;
     422             : 
     423             :                             /// XSpreadsheets
     424             :     virtual void SAL_CALL   insertNewByName( const OUString& aName, sal_Int16 nPosition )
     425             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     426             :     virtual void SAL_CALL   moveByName( const OUString& aName, sal_Int16 nDestination )
     427             :                                 throw(::com::sun::star::uno::RuntimeException,
     428             :                                       std::exception) SAL_OVERRIDE;
     429             :     virtual void SAL_CALL   copyByName( const OUString& aName,
     430             :                                 const OUString& aCopy, sal_Int16 nDestination )
     431             :                                     throw(::com::sun::star::uno::RuntimeException,
     432             :                                           std::exception) SAL_OVERRIDE;
     433             : 
     434             :                             /// XSpreadsheets2
     435             :     virtual sal_Int32 SAL_CALL importSheet(
     436             :         const ::com::sun::star::uno::Reference <
     437             :             ::com::sun::star::sheet::XSpreadsheetDocument > & xDocSrc,
     438             :         const OUString& srcName,
     439             :         const sal_Int32 nDestPosition)
     440             :         throw(::com::sun::star::lang::IllegalArgumentException,
     441             :               ::com::sun::star::lang::IndexOutOfBoundsException,
     442             :               ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     443             : 
     444             :                             /// XCellRangesAccess
     445             : 
     446             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XCell >
     447             :         SAL_CALL getCellByPosition( sal_Int32 nColumn, sal_Int32 nRow, sal_Int32 nSheet )
     448             :         throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     449             : 
     450             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XCellRange >
     451             :         SAL_CALL getCellRangeByPosition( sal_Int32 nLeft, sal_Int32 nTop, sal_Int32 nRight, sal_Int32 nBottom, sal_Int32 nSheet )
     452             :         throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     453             : 
     454             :     virtual ::com::sun::star::uno::Sequence < ::com::sun::star::uno::Reference< ::com::sun::star::table::XCellRange > >
     455             :         SAL_CALL getCellRangesByName( const OUString& aRange )
     456             :         throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     457             : 
     458             :                             /// XNameContainer
     459             :     virtual void SAL_CALL   insertByName( const OUString& aName,
     460             :                                 const ::com::sun::star::uno::Any& aElement )
     461             :                                     throw(::com::sun::star::lang::IllegalArgumentException,
     462             :                                         ::com::sun::star::container::ElementExistException,
     463             :                                         ::com::sun::star::lang::WrappedTargetException,
     464             :                                         ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     465             :     virtual void SAL_CALL   removeByName( const OUString& Name )
     466             :                                 throw(::com::sun::star::container::NoSuchElementException,
     467             :                                     ::com::sun::star::lang::WrappedTargetException,
     468             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     469             : 
     470             :                             /// XNameReplace
     471             :     virtual void SAL_CALL   replaceByName( const OUString& aName,
     472             :                                 const ::com::sun::star::uno::Any& aElement )
     473             :                                     throw(::com::sun::star::lang::IllegalArgumentException,
     474             :                                         ::com::sun::star::container::NoSuchElementException,
     475             :                                         ::com::sun::star::lang::WrappedTargetException,
     476             :                                         ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     477             : 
     478             :                             /// XEnumerationAccess
     479             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > SAL_CALL
     480             :                             createEnumeration() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     481             : 
     482             :                             /// XElementAccess
     483             :     virtual ::com::sun::star::uno::Type SAL_CALL getElementType()
     484             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     485             :     virtual sal_Bool SAL_CALL hasElements() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     486             : 
     487             :                             /// XIndexAccess
     488             :     virtual sal_Int32 SAL_CALL getCount() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     489             :     virtual ::com::sun::star::uno::Any SAL_CALL getByIndex( sal_Int32 Index )
     490             :                                 throw(::com::sun::star::lang::IndexOutOfBoundsException,
     491             :                                     ::com::sun::star::lang::WrappedTargetException,
     492             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     493             : 
     494             :                             /// XNameAccess
     495             :     virtual ::com::sun::star::uno::Any SAL_CALL getByName( const OUString& aName )
     496             :                                 throw(::com::sun::star::container::NoSuchElementException,
     497             :                                     ::com::sun::star::lang::WrappedTargetException,
     498             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     499             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getElementNames()
     500             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     501             :     virtual sal_Bool SAL_CALL hasByName( const OUString& aName )
     502             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     503             : 
     504             :                             /// XServiceInfo
     505             :     virtual OUString SAL_CALL getImplementationName()
     506             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     507             :     virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName )
     508             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     509             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames()
     510             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     511             : };
     512             : 
     513             : 
     514             : class ScTableColumnsObj : public cppu::WeakImplHelper5<
     515             :                                 com::sun::star::table::XTableColumns,
     516             :                                 com::sun::star::container::XEnumerationAccess,
     517             :                                 com::sun::star::container::XNameAccess,
     518             :                                 com::sun::star::beans::XPropertySet,
     519             :                                 com::sun::star::lang::XServiceInfo>,
     520             :                           public SfxListener
     521             : {
     522             : private:
     523             :     ScDocShell*             pDocShell;
     524             :     SCTAB                   nTab;
     525             :     SCCOL                   nStartCol;
     526             :     SCCOL                   nEndCol;
     527             : 
     528             :     ScTableColumnObj*       GetObjectByIndex_Impl(sal_Int32 nIndex) const;
     529             :     ScTableColumnObj*       GetObjectByName_Impl(const OUString& aName) const;
     530             : 
     531             : public:
     532             :                             ScTableColumnsObj(ScDocShell* pDocSh, SCTAB nT,
     533             :                                                 SCCOL nSC, SCCOL nEC);
     534             :     virtual                 ~ScTableColumnsObj();
     535             : 
     536             :     virtual void            Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) SAL_OVERRIDE;
     537             : 
     538             :                             /// XTableColumns
     539             :     virtual void SAL_CALL   insertByIndex( sal_Int32 nIndex, sal_Int32 nCount )
     540             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     541             :     virtual void SAL_CALL   removeByIndex( sal_Int32 nIndex, sal_Int32 nCount )
     542             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     543             : 
     544             :                             /// XNameAccess
     545             :     virtual ::com::sun::star::uno::Any SAL_CALL getByName( const OUString& aName )
     546             :                                 throw(::com::sun::star::container::NoSuchElementException,
     547             :                                     ::com::sun::star::lang::WrappedTargetException,
     548             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     549             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getElementNames()
     550             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     551             :     virtual sal_Bool SAL_CALL hasByName( const OUString& aName )
     552             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     553             : 
     554             :                             /// XIndexAccess
     555             :     virtual sal_Int32 SAL_CALL getCount() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     556             :     virtual ::com::sun::star::uno::Any SAL_CALL getByIndex( sal_Int32 Index )
     557             :                                 throw(::com::sun::star::lang::IndexOutOfBoundsException,
     558             :                                     ::com::sun::star::lang::WrappedTargetException,
     559             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     560             : 
     561             :                             /// XEnumerationAccess
     562             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > SAL_CALL
     563             :                             createEnumeration() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     564             : 
     565             :                             /// XElementAccess
     566             :     virtual ::com::sun::star::uno::Type SAL_CALL getElementType()
     567             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     568             :     virtual sal_Bool SAL_CALL hasElements() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     569             : 
     570             :                             /// XPropertySet
     571             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo >
     572             :                             SAL_CALL getPropertySetInfo()
     573             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     574             :     virtual void SAL_CALL   setPropertyValue( const OUString& aPropertyName,
     575             :                                     const ::com::sun::star::uno::Any& aValue )
     576             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     577             :                                     ::com::sun::star::beans::PropertyVetoException,
     578             :                                     ::com::sun::star::lang::IllegalArgumentException,
     579             :                                     ::com::sun::star::lang::WrappedTargetException,
     580             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     581             :     virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue(
     582             :                                     const OUString& PropertyName )
     583             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     584             :                                     ::com::sun::star::lang::WrappedTargetException,
     585             :                                     ::com::sun::star::uno::RuntimeException,
     586             :                                     std::exception) SAL_OVERRIDE;
     587             :     virtual void SAL_CALL   addPropertyChangeListener( const OUString& aPropertyName,
     588             :                                     const ::com::sun::star::uno::Reference<
     589             :                                         ::com::sun::star::beans::XPropertyChangeListener >& xListener )
     590             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     591             :                                     ::com::sun::star::lang::WrappedTargetException,
     592             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     593             :     virtual void SAL_CALL   removePropertyChangeListener( const OUString& aPropertyName,
     594             :                                     const ::com::sun::star::uno::Reference<
     595             :                                         ::com::sun::star::beans::XPropertyChangeListener >& aListener )
     596             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     597             :                                     ::com::sun::star::lang::WrappedTargetException,
     598             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     599             :     virtual void SAL_CALL   addVetoableChangeListener( const OUString& PropertyName,
     600             :                                     const ::com::sun::star::uno::Reference<
     601             :                                         ::com::sun::star::beans::XVetoableChangeListener >& aListener )
     602             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     603             :                                     ::com::sun::star::lang::WrappedTargetException,
     604             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     605             :     virtual void SAL_CALL   removeVetoableChangeListener( const OUString& PropertyName,
     606             :                                     const ::com::sun::star::uno::Reference<
     607             :                                         ::com::sun::star::beans::XVetoableChangeListener >& aListener )
     608             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     609             :                                     ::com::sun::star::lang::WrappedTargetException,
     610             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     611             : 
     612             :                             /// XServiceInfo
     613             :     virtual OUString SAL_CALL getImplementationName()
     614             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     615             :     virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName )
     616             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     617             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames()
     618             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     619             : };
     620             : 
     621             : 
     622             : class ScTableRowsObj : public cppu::WeakImplHelper4<
     623             :                                 com::sun::star::table::XTableRows,
     624             :                                 com::sun::star::container::XEnumerationAccess,
     625             :                                 com::sun::star::beans::XPropertySet,
     626             :                                 com::sun::star::lang::XServiceInfo>,
     627             :                           public SfxListener
     628             : {
     629             : private:
     630             :     ScDocShell*             pDocShell;
     631             :     SCTAB                   nTab;
     632             :     SCROW                   nStartRow;
     633             :     SCROW                   nEndRow;
     634             : 
     635             :     ScTableRowObj*          GetObjectByIndex_Impl(sal_Int32 nIndex) const;
     636             : 
     637             : public:
     638             :                             ScTableRowsObj(ScDocShell* pDocSh, SCTAB nT,
     639             :                                                 SCROW nSR, SCROW nER);
     640             :     virtual                 ~ScTableRowsObj();
     641             : 
     642             :     virtual void            Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) SAL_OVERRIDE;
     643             : 
     644             :                             /// XTableRows
     645             :     virtual void SAL_CALL   insertByIndex( sal_Int32 nIndex, sal_Int32 nCount )
     646             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     647             :     virtual void SAL_CALL   removeByIndex( sal_Int32 nIndex, sal_Int32 nCount )
     648             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     649             : 
     650             :                             /// XIndexAccess
     651             :     virtual sal_Int32 SAL_CALL getCount() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     652             :     virtual ::com::sun::star::uno::Any SAL_CALL getByIndex( sal_Int32 Index )
     653             :                                 throw(::com::sun::star::lang::IndexOutOfBoundsException,
     654             :                                     ::com::sun::star::lang::WrappedTargetException,
     655             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     656             : 
     657             :                             /// XEnumerationAccess
     658             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > SAL_CALL
     659             :                             createEnumeration() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     660             : 
     661             :                             /// XElementAccess
     662             :     virtual ::com::sun::star::uno::Type SAL_CALL getElementType()
     663             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     664             :     virtual sal_Bool SAL_CALL hasElements() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     665             : 
     666             :                             /// XPropertySet
     667             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo >
     668             :                             SAL_CALL getPropertySetInfo()
     669             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     670             :     virtual void SAL_CALL   setPropertyValue( const OUString& aPropertyName,
     671             :                                     const ::com::sun::star::uno::Any& aValue )
     672             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     673             :                                     ::com::sun::star::beans::PropertyVetoException,
     674             :                                     ::com::sun::star::lang::IllegalArgumentException,
     675             :                                     ::com::sun::star::lang::WrappedTargetException,
     676             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     677             :     virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue(
     678             :                                     const OUString& PropertyName )
     679             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     680             :                                     ::com::sun::star::lang::WrappedTargetException,
     681             :                                     ::com::sun::star::uno::RuntimeException,
     682             :                                     std::exception) SAL_OVERRIDE;
     683             :     virtual void SAL_CALL   addPropertyChangeListener( const OUString& aPropertyName,
     684             :                                     const ::com::sun::star::uno::Reference<
     685             :                                         ::com::sun::star::beans::XPropertyChangeListener >& xListener )
     686             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     687             :                                     ::com::sun::star::lang::WrappedTargetException,
     688             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     689             :     virtual void SAL_CALL   removePropertyChangeListener( const OUString& aPropertyName,
     690             :                                     const ::com::sun::star::uno::Reference<
     691             :                                         ::com::sun::star::beans::XPropertyChangeListener >& aListener )
     692             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     693             :                                     ::com::sun::star::lang::WrappedTargetException,
     694             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     695             :     virtual void SAL_CALL   addVetoableChangeListener( const OUString& PropertyName,
     696             :                                     const ::com::sun::star::uno::Reference<
     697             :                                         ::com::sun::star::beans::XVetoableChangeListener >& aListener )
     698             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     699             :                                     ::com::sun::star::lang::WrappedTargetException,
     700             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     701             :     virtual void SAL_CALL   removeVetoableChangeListener( const OUString& PropertyName,
     702             :                                     const ::com::sun::star::uno::Reference<
     703             :                                         ::com::sun::star::beans::XVetoableChangeListener >& aListener )
     704             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     705             :                                     ::com::sun::star::lang::WrappedTargetException,
     706             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     707             : 
     708             :                             /// XServiceInfo
     709             :     virtual OUString SAL_CALL getImplementationName()
     710             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     711             :     virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName )
     712             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     713             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames()
     714             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     715             : };
     716             : 
     717             : 
     718             : class ScSpreadsheetSettingsObj : public cppu::WeakImplHelper2<
     719             :                                     com::sun::star::beans::XPropertySet,
     720             :                                     com::sun::star::lang::XServiceInfo>,
     721             :                                  public SfxListener
     722             : {
     723             : private:
     724             :     ScDocShell*             pDocShell;
     725             : 
     726             : public:
     727             :     virtual                 ~ScSpreadsheetSettingsObj();
     728             : 
     729             :     virtual void            Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) SAL_OVERRIDE;
     730             : 
     731             :                             /// XPropertySet
     732             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo >
     733             :                             SAL_CALL getPropertySetInfo()
     734             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     735             :     virtual void SAL_CALL   setPropertyValue( const OUString& aPropertyName,
     736             :                                     const ::com::sun::star::uno::Any& aValue )
     737             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     738             :                                     ::com::sun::star::beans::PropertyVetoException,
     739             :                                     ::com::sun::star::lang::IllegalArgumentException,
     740             :                                     ::com::sun::star::lang::WrappedTargetException,
     741             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     742             :     virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue(
     743             :                                     const OUString& PropertyName )
     744             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     745             :                                     ::com::sun::star::lang::WrappedTargetException,
     746             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     747             :     virtual void SAL_CALL   addPropertyChangeListener( const OUString& aPropertyName,
     748             :                                     const ::com::sun::star::uno::Reference<
     749             :                                         ::com::sun::star::beans::XPropertyChangeListener >& xListener )
     750             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     751             :                                     ::com::sun::star::lang::WrappedTargetException,
     752             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     753             :     virtual void SAL_CALL   removePropertyChangeListener( const OUString& aPropertyName,
     754             :                                     const ::com::sun::star::uno::Reference<
     755             :                                         ::com::sun::star::beans::XPropertyChangeListener >& aListener )
     756             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     757             :                                     ::com::sun::star::lang::WrappedTargetException,
     758             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     759             :     virtual void SAL_CALL   addVetoableChangeListener( const OUString& PropertyName,
     760             :                                     const ::com::sun::star::uno::Reference<
     761             :                                         ::com::sun::star::beans::XVetoableChangeListener >& aListener )
     762             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     763             :                                     ::com::sun::star::lang::WrappedTargetException,
     764             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     765             :     virtual void SAL_CALL   removeVetoableChangeListener( const OUString& PropertyName,
     766             :                                     const ::com::sun::star::uno::Reference<
     767             :                                         ::com::sun::star::beans::XVetoableChangeListener >& aListener )
     768             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     769             :                                     ::com::sun::star::lang::WrappedTargetException,
     770             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     771             : 
     772             :                             /// XServiceInfo
     773             :     virtual OUString SAL_CALL getImplementationName()
     774             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     775             :     virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName )
     776             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     777             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames()
     778             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     779             : };
     780             : 
     781             : 
     782             : class ScAnnotationsObj : public cppu::WeakImplHelper3<
     783             :                                 com::sun::star::sheet::XSheetAnnotations,
     784             :                                 com::sun::star::container::XEnumerationAccess,
     785             :                                 com::sun::star::lang::XServiceInfo>,
     786             :                           public SfxListener
     787             : {
     788             : private:
     789             :     ScDocShell*             pDocShell;
     790             :     SCTAB                   nTab;           ///< Collection belongs to the sheet
     791             : 
     792             :     bool                    GetAddressByIndex_Impl( sal_Int32 nIndex, ScAddress& rPos ) const;
     793             :     ScAnnotationObj*        GetObjectByIndex_Impl( sal_Int32 nIndex ) const;
     794             : 
     795             : public:
     796             :                             ScAnnotationsObj(ScDocShell* pDocSh, SCTAB nT);
     797             :     virtual                 ~ScAnnotationsObj();
     798             : 
     799             :     virtual void            Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) SAL_OVERRIDE;
     800             : 
     801             :                             /// XSheetAnnotations
     802             :     virtual void SAL_CALL   insertNew( const ::com::sun::star::table::CellAddress& aPosition,
     803             :                                 const OUString& aText )
     804             :                                     throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     805             :     virtual void SAL_CALL   removeByIndex( sal_Int32 nIndex )
     806             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     807             : 
     808             :                             /// XIndexAccess
     809             :     virtual sal_Int32 SAL_CALL getCount()
     810             :                                 throw(::com::sun::star::uno::RuntimeException,
     811             :                                       std::exception) SAL_OVERRIDE;
     812             :     virtual ::com::sun::star::uno::Any SAL_CALL getByIndex( sal_Int32 Index )
     813             :                                 throw(::com::sun::star::lang::IndexOutOfBoundsException,
     814             :                                     ::com::sun::star::lang::WrappedTargetException,
     815             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     816             : 
     817             :                             /// XEnumerationAccess
     818             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > SAL_CALL
     819             :                             createEnumeration() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     820             : 
     821             :                             /// XElementAccess
     822             :     virtual ::com::sun::star::uno::Type SAL_CALL getElementType()
     823             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     824             :     virtual sal_Bool SAL_CALL hasElements() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     825             : 
     826             :                             /// XServiceInfo
     827             :     virtual OUString SAL_CALL getImplementationName()
     828             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     829             :     virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName )
     830             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     831             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames()
     832             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     833             : };
     834             : 
     835             : 
     836             : class ScScenariosObj : public cppu::WeakImplHelper4<
     837             :                                 com::sun::star::sheet::XScenarios,
     838             :                                 com::sun::star::container::XEnumerationAccess,
     839             :                                 com::sun::star::container::XIndexAccess,
     840             :                                 com::sun::star::lang::XServiceInfo>,
     841             :                           public SfxListener
     842             : {
     843             : private:
     844             :     ScDocShell*             pDocShell;
     845             :     SCTAB                   nTab;
     846             : 
     847             :     bool                    GetScenarioIndex_Impl( const OUString& rName, SCTAB& rIndex );
     848             :     ScTableSheetObj*        GetObjectByIndex_Impl(sal_Int32 nIndex);
     849             :     ScTableSheetObj*        GetObjectByName_Impl(const OUString& aName);
     850             : 
     851             : public:
     852             :                             ScScenariosObj(ScDocShell* pDocSh, SCTAB nT);
     853             :     virtual                 ~ScScenariosObj();
     854             : 
     855             :     virtual void            Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) SAL_OVERRIDE;
     856             : 
     857             :                             /// XScenarios
     858             :     virtual void SAL_CALL   addNewByName( const OUString& aName,
     859             :                                 const ::com::sun::star::uno::Sequence<
     860             :                                     ::com::sun::star::table::CellRangeAddress >& aRanges,
     861             :                                 const OUString& aComment )
     862             :                                     throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     863             :     virtual void SAL_CALL   removeByName( const OUString& aName )
     864             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     865             : 
     866             :                             /// XNameAccess
     867             :     virtual ::com::sun::star::uno::Any SAL_CALL getByName( const OUString& aName )
     868             :                                 throw(::com::sun::star::container::NoSuchElementException,
     869             :                                     ::com::sun::star::lang::WrappedTargetException,
     870             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     871             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getElementNames()
     872             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     873             :     virtual sal_Bool SAL_CALL hasByName( const OUString& aName )
     874             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     875             : 
     876             :                             /// XIndexAccess
     877             :     virtual sal_Int32 SAL_CALL getCount() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     878             :     virtual ::com::sun::star::uno::Any SAL_CALL getByIndex( sal_Int32 Index )
     879             :                                 throw(::com::sun::star::lang::IndexOutOfBoundsException,
     880             :                                     ::com::sun::star::lang::WrappedTargetException,
     881             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     882             : 
     883             :                             /// XEnumerationAccess
     884             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > SAL_CALL
     885             :                             createEnumeration() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     886             : 
     887             :                             /// XElementAccess
     888             :     virtual ::com::sun::star::uno::Type SAL_CALL getElementType()
     889             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     890             :     virtual sal_Bool SAL_CALL hasElements() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     891             : 
     892             :                             /// XServiceInfo
     893             :     virtual OUString SAL_CALL getImplementationName()
     894             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     895             :     virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName )
     896             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     897             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames()
     898             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     899             : };
     900             : 
     901             : 
     902             : #endif
     903             : 
     904             : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.10