LCOV - code coverage report
Current view: top level - sc/inc - viewuno.hxx (source / functions) Hit Total Coverage
Test: commit c8344322a7af75b84dd3ca8f78b05543a976dfd5 Lines: 1 1 100.0 %
Date: 2015-06-13 12:38:46 Functions: 1 1 100.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 INCLUDED_SC_INC_VIEWUNO_HXX
      21             : #define INCLUDED_SC_INC_VIEWUNO_HXX
      22             : 
      23             : #include <sfx2/sfxbasecontroller.hxx>
      24             : #include <svl/itemprop.hxx>
      25             : #include <com/sun/star/view/XFormLayerAccess.hpp>
      26             : #include <com/sun/star/view/XSelectionChangeListener.hpp>
      27             : #include <com/sun/star/view/XSelectionSupplier.hpp>
      28             : #include <com/sun/star/sheet/XCellRangeReferrer.hpp>
      29             : #include <com/sun/star/sheet/XViewSplitable.hpp>
      30             : #include <com/sun/star/sheet/XViewFreezable.hpp>
      31             : #include <com/sun/star/sheet/XSelectedSheetsSupplier.hpp>
      32             : #include <com/sun/star/sheet/XSpreadsheetView.hpp>
      33             : #include <com/sun/star/sheet/XEnhancedMouseClickBroadcaster.hpp>
      34             : #include <com/sun/star/sheet/XActivationBroadcaster.hpp>
      35             : #include <com/sun/star/sheet/XViewPane.hpp>
      36             : #include <com/sun/star/sheet/XRangeSelection.hpp>
      37             : #include <com/sun/star/lang/XServiceInfo.hpp>
      38             : #include <com/sun/star/container/XEnumerationAccess.hpp>
      39             : #include <com/sun/star/beans/XPropertySet.hpp>
      40             : #include <com/sun/star/lang/XUnoTunnel.hpp>
      41             : #include <com/sun/star/datatransfer/XTransferableSupplier.hpp>
      42             : 
      43             : #include "address.hxx"
      44             : #include <boost/ptr_container/ptr_vector.hpp>
      45             : 
      46             : class ScTabViewShell;
      47             : class ScPreviewShell;
      48             : 
      49             : #define SC_VIEWPANE_ACTIVE  0xFFFF
      50             : 
      51             : //  ScViewPaneBase not derived from OWeakObject
      52             : //  to avoid duplicate OWeakObject in ScTabViewObj
      53             : 
      54             : class ScViewPaneBase : public com::sun::star::sheet::XViewPane,
      55             :                        public com::sun::star::sheet::XCellRangeReferrer,
      56             :                        public com::sun::star::view::XFormLayerAccess,
      57             :                        public com::sun::star::lang::XServiceInfo,
      58             :                        public com::sun::star::lang::XTypeProvider,
      59             :                        public SfxListener
      60             : {
      61             : private:
      62             :     ScTabViewShell*         pViewShell;
      63             :     sal_uInt16                  nPane;          // ScSplitPos oder SC_VIEWPANE_ACTIVE
      64             : 
      65             : protected:
      66             :     ::com::sun::star::awt::Rectangle GetVisArea() const;
      67             : 
      68             : public:
      69             :                             ScViewPaneBase(ScTabViewShell* pViewSh, sal_uInt16 nP);
      70             :     virtual                 ~ScViewPaneBase();
      71             : 
      72       10400 :     ScTabViewShell*         GetViewShell() const    { return pViewShell; }
      73             : 
      74             :     virtual ::com::sun::star::uno::Any SAL_CALL queryInterface(
      75             :                                 const ::com::sun::star::uno::Type & rType )
      76             :                                     throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
      77             : 
      78             :     virtual void            Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) SAL_OVERRIDE;
      79             : 
      80             :                             // XViewPane
      81             :     virtual sal_Int32 SAL_CALL getFirstVisibleColumn() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
      82             :     virtual void SAL_CALL   setFirstVisibleColumn( sal_Int32 nFirstVisibleColumn )
      83             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
      84             :     virtual sal_Int32 SAL_CALL getFirstVisibleRow() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
      85             :     virtual void SAL_CALL   setFirstVisibleRow( sal_Int32 nFirstVisibleRow )
      86             :                                 throw(::com::sun::star::uno::RuntimeException,
      87             :                                       std::exception) SAL_OVERRIDE;
      88             :     virtual ::com::sun::star::table::CellRangeAddress SAL_CALL getVisibleRange()
      89             :                                 throw(::com::sun::star::uno::RuntimeException,
      90             :                                       std::exception) SAL_OVERRIDE;
      91             : 
      92             :                             // XCellRangeReferrer
      93             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XCellRange > SAL_CALL
      94             :                             getReferredCells() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
      95             : 
      96             :                             // XFormLayerAccess
      97             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > SAL_CALL
      98             :                             getFormController( const ::com::sun::star::uno::Reference<
      99             :                                 ::com::sun::star::form::XForm >& Form )
     100             :                                     throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     101             :     virtual sal_Bool SAL_CALL
     102             :                             isFormDesignMode(  )
     103             :                                 throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     104             :     virtual void SAL_CALL   setFormDesignMode( sal_Bool DesignMode )
     105             :                                 throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     106             : 
     107             :                             // XControlAccess
     108             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl > SAL_CALL
     109             :                             getControl( const ::com::sun::star::uno::Reference<
     110             :                                 ::com::sun::star::awt::XControlModel >& xModel )
     111             :                                     throw(::com::sun::star::container::NoSuchElementException,
     112             :                                         ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     113             : 
     114             :                             // XServiceInfo
     115             :     virtual OUString SAL_CALL getImplementationName()
     116             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     117             :     virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName )
     118             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     119             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames()
     120             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     121             : 
     122             :                             // XTypeProvider
     123             :     virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes()
     124             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     125             :     virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId()
     126             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     127             : };
     128             : 
     129             : //  ScViewPaneObj for direct use (including OWeakObject)
     130             : 
     131             : class ScViewPaneObj : public ScViewPaneBase, public cppu::OWeakObject
     132             : {
     133             : public:
     134             :                             ScViewPaneObj(ScTabViewShell* pViewSh, sal_uInt16 nP);
     135             :     virtual                 ~ScViewPaneObj();
     136             : 
     137             :     virtual ::com::sun::star::uno::Any SAL_CALL queryInterface(
     138             :                                 const ::com::sun::star::uno::Type & rType )
     139             :                                     throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     140             :     virtual void SAL_CALL   acquire() throw() SAL_OVERRIDE;
     141             :     virtual void SAL_CALL   release() throw() SAL_OVERRIDE;
     142             : };
     143             : 
     144             : //  OWeakObject is base of SfxBaseController -> use ScViewPaneBase
     145             : 
     146             : class ScTabViewObj : public ScViewPaneBase,
     147             :                      public SfxBaseController,
     148             :                      public com::sun::star::sheet::XSpreadsheetView,
     149             :                      public com::sun::star::sheet::XEnhancedMouseClickBroadcaster,
     150             :                      public com::sun::star::sheet::XActivationBroadcaster,
     151             :                      public com::sun::star::container::XEnumerationAccess,
     152             :                      public com::sun::star::container::XIndexAccess,
     153             :                      public com::sun::star::view::XSelectionSupplier,
     154             :                      public com::sun::star::beans::XPropertySet,
     155             :                      public com::sun::star::sheet::XViewSplitable,
     156             :                      public com::sun::star::sheet::XViewFreezable,
     157             :                      public com::sun::star::sheet::XRangeSelection,
     158             :                      public com::sun::star::lang::XUnoTunnel,
     159             :                      public com::sun::star::datatransfer::XTransferableSupplier,
     160             :                      public com::sun::star::sheet::XSelectedSheetsSupplier
     161             : {
     162             : private:
     163             :     typedef ::com::sun::star::uno::Reference<
     164             :             ::com::sun::star::sheet::XRangeSelectionListener > XRangeSelectionListenerUnoRef;
     165             :     typedef boost::ptr_vector<XRangeSelectionListenerUnoRef> XRangeSelectionListenerVector;
     166             : 
     167             :     typedef ::com::sun::star::uno::Reference<
     168             :             ::com::sun::star::sheet::XRangeSelectionChangeListener > XRangeSelectionChangeListenerUnoRef;
     169             :     typedef boost::ptr_vector<XRangeSelectionChangeListenerUnoRef> XRangeSelectionChangeListenerVector;
     170             : 
     171             :     typedef ::com::sun::star::uno::Reference<
     172             :             ::com::sun::star::view::XSelectionChangeListener > XSelectionChangeListenerUnoRef;
     173             :     typedef boost::ptr_vector<XSelectionChangeListenerUnoRef> XSelectionChangeListenerVector;
     174             : 
     175             :     typedef ::com::sun::star::uno::Reference<
     176             :             ::com::sun::star::beans::XPropertyChangeListener > XViewPropertyChangeListenerUnoRef;
     177             :     typedef boost::ptr_vector<XViewPropertyChangeListenerUnoRef> XViewPropertyChangeListenerVector;
     178             : 
     179             :     typedef ::com::sun::star::uno::Reference<
     180             :             ::com::sun::star::awt::XEnhancedMouseClickHandler > XMouseClickHandlerUnoRef;
     181             :     typedef boost::ptr_vector<XMouseClickHandlerUnoRef> XMouseClickHandlerVector;
     182             : 
     183             :     typedef ::com::sun::star::uno::Reference<
     184             :             ::com::sun::star::sheet::XActivationEventListener > XActivationEventListenerUnoRef;
     185             :     typedef boost::ptr_vector<XActivationEventListenerUnoRef> XActivationEventListenerVector;
     186             : 
     187             :     SfxItemPropertySet                      aPropSet;
     188             :     XSelectionChangeListenerVector          aSelectionChgListeners;
     189             :     XRangeSelectionListenerVector           aRangeSelListeners;
     190             :     XRangeSelectionChangeListenerVector     aRangeChgListeners;
     191             :     XViewPropertyChangeListenerVector       aPropertyChgListeners;
     192             :     XMouseClickHandlerVector                aMouseClickHandlers;
     193             :     XActivationEventListenerVector          aActivationListeners;
     194             :     SCTAB                                   nPreviousTab;
     195             :     bool                                    bDrawSelModeSet;
     196             :     bool                                    bFilteredRangeSelection;
     197             : 
     198             :     ScViewPaneObj*          GetObjectByIndex_Impl(sal_uInt16 nIndex) const;
     199             :     sal_Int16                   GetZoom() const;
     200             :     void                    SetZoom(sal_Int16 Zoom);
     201             :     sal_Int16                   GetZoomType() const;
     202             :     void                    SetZoomType(sal_Int16 ZoomType);
     203             : 
     204             :     com::sun::star::uno::Reference< com::sun::star::uno::XInterface > GetClickedObject(const Point& rPoint) const;
     205             :     void                    EndMouseListening();
     206             :     void                    EndActivationListening();
     207             :     bool                    mbLeftMousePressed;
     208             :     bool                    mbPendingSelectionChanged;
     209             :     ScTabViewObj(); // disabled
     210             : public:
     211             :                             ScTabViewObj(ScTabViewShell* pViewSh);
     212             :     virtual                 ~ScTabViewObj();
     213             : 
     214             :     virtual ::com::sun::star::uno::Any SAL_CALL queryInterface(
     215             :                                 const ::com::sun::star::uno::Type & rType )
     216             :                                     throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     217             :     virtual void SAL_CALL   acquire() throw() SAL_OVERRIDE;
     218             :     virtual void SAL_CALL   release() throw() SAL_OVERRIDE;
     219             : 
     220             :     void                    SelectionChanged();
     221             :     void                    VisAreaChanged();
     222             :     // bSameTabButMoved = true if the same sheet as before is activated, used after moving/copying/inserting/deleting a sheet
     223             :     void                    SheetChanged( bool bSameTabButMoved = false );
     224             :     bool                    IsMouseListening() const;
     225             :     bool                    MousePressed( const ::com::sun::star::awt::MouseEvent& e ) throw (::com::sun::star::uno::RuntimeException);
     226             :     bool                    MouseReleased( const ::com::sun::star::awt::MouseEvent& e ) throw (::com::sun::star::uno::RuntimeException);
     227             : 
     228             :     void                    RangeSelDone( const OUString& rText );
     229             :     void                    RangeSelAborted( const OUString& rText );
     230             :     void                    RangeSelChanged( const OUString& rText );
     231             : 
     232             :                             // XSelectionSupplier
     233             :     virtual sal_Bool SAL_CALL select( const ::com::sun::star::uno::Any& aSelection )
     234             :                                 throw(::com::sun::star::lang::IllegalArgumentException,
     235             :                                       ::com::sun::star::uno::RuntimeException,
     236             :                                       std::exception) SAL_OVERRIDE;
     237             :     virtual ::com::sun::star::uno::Any SAL_CALL getSelection()
     238             :                                 throw(::com::sun::star::uno::RuntimeException,
     239             :                                       std::exception) SAL_OVERRIDE;
     240             :     virtual void SAL_CALL   addSelectionChangeListener( const ::com::sun::star::uno::Reference<
     241             :                                 ::com::sun::star::view::XSelectionChangeListener >& xListener )
     242             :                                     throw (::com::sun::star::uno::RuntimeException,
     243             :                                            std::exception) SAL_OVERRIDE;
     244             :     virtual void SAL_CALL   removeSelectionChangeListener( const ::com::sun::star::uno::Reference<
     245             :                                 ::com::sun::star::view::XSelectionChangeListener >& xListener )
     246             :                                     throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     247             : 
     248             :     //! XPrintable?
     249             : 
     250             :                             // XPropertySet
     251             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo >
     252             :                             SAL_CALL getPropertySetInfo()
     253             :                                 throw(::com::sun::star::uno::RuntimeException,
     254             :                                       std::exception) SAL_OVERRIDE;
     255             :     virtual void SAL_CALL   setPropertyValue( const OUString& aPropertyName,
     256             :                                     const ::com::sun::star::uno::Any& aValue )
     257             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     258             :                                     ::com::sun::star::beans::PropertyVetoException,
     259             :                                     ::com::sun::star::lang::IllegalArgumentException,
     260             :                                     ::com::sun::star::lang::WrappedTargetException,
     261             :                                     ::com::sun::star::uno::RuntimeException,
     262             :                                     std::exception) SAL_OVERRIDE;
     263             :     virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue(
     264             :                                     const OUString& PropertyName )
     265             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     266             :                                     ::com::sun::star::lang::WrappedTargetException,
     267             :                                     ::com::sun::star::uno::RuntimeException,
     268             :                                     std::exception) SAL_OVERRIDE;
     269             :     virtual void SAL_CALL   addPropertyChangeListener( const OUString& aPropertyName,
     270             :                                     const ::com::sun::star::uno::Reference<
     271             :                                         ::com::sun::star::beans::XPropertyChangeListener >& xListener )
     272             :                                 throw (::com::sun::star::beans::UnknownPropertyException,
     273             :                                        ::com::sun::star::lang::WrappedTargetException,
     274             :                                        ::com::sun::star::uno::RuntimeException,
     275             :                                        std::exception) SAL_OVERRIDE;
     276             :     virtual void SAL_CALL   removePropertyChangeListener( const OUString& aPropertyName,
     277             :                                     const ::com::sun::star::uno::Reference<
     278             :                                         ::com::sun::star::beans::XPropertyChangeListener >& 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             :     virtual void SAL_CALL   addVetoableChangeListener( const OUString& PropertyName,
     283             :                                     const ::com::sun::star::uno::Reference<
     284             :                                         ::com::sun::star::beans::XVetoableChangeListener >& aListener )
     285             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     286             :                                     ::com::sun::star::lang::WrappedTargetException,
     287             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     288             :     virtual void SAL_CALL   removeVetoableChangeListener( const OUString& PropertyName,
     289             :                                     const ::com::sun::star::uno::Reference<
     290             :                                         ::com::sun::star::beans::XVetoableChangeListener >& aListener )
     291             :                                 throw(::com::sun::star::beans::UnknownPropertyException,
     292             :                                     ::com::sun::star::lang::WrappedTargetException,
     293             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     294             : 
     295             :                             // XEnumerationAccess
     296             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > SAL_CALL
     297             :                             createEnumeration() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     298             : 
     299             :                             // XIndexAccess
     300             :     virtual sal_Int32 SAL_CALL getCount() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     301             :     virtual ::com::sun::star::uno::Any SAL_CALL getByIndex( sal_Int32 Index )
     302             :                                 throw(::com::sun::star::lang::IndexOutOfBoundsException,
     303             :                                     ::com::sun::star::lang::WrappedTargetException,
     304             :                                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     305             : 
     306             :                             // XElementAccess
     307             :     virtual ::com::sun::star::uno::Type SAL_CALL getElementType()
     308             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     309             :     virtual sal_Bool SAL_CALL hasElements() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     310             : 
     311             :                             // XSpreadsheetView
     312             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::sheet::XSpreadsheet > SAL_CALL
     313             :                             getActiveSheet() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     314             :     virtual void SAL_CALL   setActiveSheet( const ::com::sun::star::uno::Reference<
     315             :                                 ::com::sun::star::sheet::XSpreadsheet >& xActiveSheet )
     316             :                                     throw(::com::sun::star::uno::RuntimeException,
     317             :                                           std::exception) SAL_OVERRIDE;
     318             : 
     319             :                             //XEnhancedMouseClickBroadcaster
     320             : 
     321             :     virtual void SAL_CALL addEnhancedMouseClickHandler( const ::com::sun::star::uno::Reference<
     322             :                                 ::com::sun::star::awt::XEnhancedMouseClickHandler >& aListener )
     323             :                                     throw (::com::sun::star::uno::RuntimeException,
     324             :                                            std::exception) SAL_OVERRIDE;
     325             :     virtual void SAL_CALL removeEnhancedMouseClickHandler( const ::com::sun::star::uno::Reference<
     326             :                                 ::com::sun::star::awt::XEnhancedMouseClickHandler >& aListener )
     327             :                                     throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     328             : 
     329             :                             //XActivationBroadcaster
     330             : 
     331             :     virtual void SAL_CALL addActivationEventListener( const ::com::sun::star::uno::Reference<
     332             :                                 ::com::sun::star::sheet::XActivationEventListener >& aListener )
     333             :                                     throw (::com::sun::star::uno::RuntimeException,
     334             :                                            std::exception) SAL_OVERRIDE;
     335             :     virtual void SAL_CALL removeActivationEventListener( const ::com::sun::star::uno::Reference<
     336             :                                 ::com::sun::star::sheet::XActivationEventListener >& aListener )
     337             :                                     throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     338             : 
     339             :                             // XViewSplitable
     340             :     virtual sal_Bool SAL_CALL getIsWindowSplit() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     341             :     virtual sal_Int32 SAL_CALL getSplitHorizontal() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     342             :     virtual sal_Int32 SAL_CALL getSplitVertical() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     343             :     virtual sal_Int32 SAL_CALL getSplitColumn()
     344             :         throw(::com::sun::star::uno::RuntimeException,
     345             :               std::exception) SAL_OVERRIDE;
     346             :     virtual sal_Int32 SAL_CALL getSplitRow()
     347             :         throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     348             :     virtual void SAL_CALL   splitAtPosition( sal_Int32 nPixelX, sal_Int32 nPixelY )
     349             :                                 throw(::com::sun::star::uno::RuntimeException,
     350             :                                       std::exception) SAL_OVERRIDE;
     351             : 
     352             :                             // XViewFreezable
     353             :     virtual sal_Bool SAL_CALL hasFrozenPanes() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     354             :     virtual void SAL_CALL   freezeAtPosition( sal_Int32 nColumns, sal_Int32 nRows )
     355             :                                 throw(::com::sun::star::uno::RuntimeException,
     356             :                                       std::exception) SAL_OVERRIDE;
     357             : 
     358             :                             // XRangeSelection
     359             :     virtual void SAL_CALL   startRangeSelection( const ::com::sun::star::uno::Sequence<
     360             :                                 ::com::sun::star::beans::PropertyValue >& aArguments )
     361             :                                     throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     362             :     virtual void SAL_CALL   abortRangeSelection() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     363             :     virtual void SAL_CALL   addRangeSelectionListener( const ::com::sun::star::uno::Reference<
     364             :                                 ::com::sun::star::sheet::XRangeSelectionListener >& aListener )
     365             :                                     throw (::com::sun::star::uno::RuntimeException,
     366             :                                            std::exception) SAL_OVERRIDE;
     367             :     virtual void SAL_CALL   removeRangeSelectionListener( const ::com::sun::star::uno::Reference<
     368             :                                 ::com::sun::star::sheet::XRangeSelectionListener >& aListener )
     369             :                                     throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     370             :     virtual void SAL_CALL   addRangeSelectionChangeListener( const ::com::sun::star::uno::Reference<
     371             :                                 ::com::sun::star::sheet::XRangeSelectionChangeListener >& aListener )
     372             :                                     throw (::com::sun::star::uno::RuntimeException,
     373             :                                            std::exception) SAL_OVERRIDE;
     374             :     virtual void SAL_CALL   removeRangeSelectionChangeListener( const ::com::sun::star::uno::Reference<
     375             :                                 ::com::sun::star::sheet::XRangeSelectionChangeListener >& aListener )
     376             :                                     throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     377             : 
     378             :                             // XServiceInfo
     379             :     virtual OUString SAL_CALL getImplementationName()
     380             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     381             :     virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName )
     382             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     383             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames()
     384             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     385             : 
     386             :                             // XUnoTunnel
     387             :     virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence<
     388             :                                     sal_Int8 >& aIdentifier )
     389             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     390             : 
     391             :     static const css::uno::Sequence<sal_Int8>& getUnoTunnelId();
     392             :     static ScTabViewObj* getImplementation(const css::uno::Reference<css::uno::XInterface>& rObj);
     393             : 
     394             :                             // XTypeProvider
     395             :     virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes()
     396             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     397             :     virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId()
     398             :                                 throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     399             : 
     400             :     // XTransferableSupplier
     401             :     virtual ::com::sun::star::uno::Reference< ::com::sun::star::datatransfer::XTransferable > SAL_CALL getTransferable()
     402             :                                 throw (::com::sun::star::uno::RuntimeException,
     403             :                                        std::exception) SAL_OVERRIDE;
     404             :     virtual void SAL_CALL insertTransferable( const ::com::sun::star::uno::Reference< ::com::sun::star::datatransfer::XTransferable >& xTrans )
     405             :                                 throw(::com::sun::star::datatransfer::UnsupportedFlavorException,
     406             :                                       ::com::sun::star::uno::RuntimeException,
     407             :                                       std::exception) SAL_OVERRIDE;
     408             : 
     409             :     // XSelectedSheetsSupplier
     410             :     virtual ::com::sun::star::uno::Sequence<sal_Int32> SAL_CALL getSelectedSheets()
     411             :         throw(::com::sun::star::uno::RuntimeException,
     412             :               std::exception) SAL_OVERRIDE;
     413             : };
     414             : 
     415             : class ScPreviewObj : public SfxBaseController,
     416             :                      public SfxListener,
     417             :                      public com::sun::star::sheet::XSelectedSheetsSupplier
     418             : {
     419             :     ScPreviewShell* mpViewShell;
     420             : public:
     421             :     ScPreviewObj(ScPreviewShell* pViewSh);
     422             :     virtual ~ScPreviewObj();
     423             : 
     424             :     virtual ::com::sun::star::uno::Any SAL_CALL queryInterface(
     425             :         const ::com::sun::star::uno::Type & rType)
     426             :             throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     427             : 
     428             :     virtual void SAL_CALL acquire() throw() SAL_OVERRIDE;
     429             :     virtual void SAL_CALL release() throw() SAL_OVERRIDE;
     430             : 
     431             :     virtual void Notify(SfxBroadcaster&, const SfxHint& rHint) SAL_OVERRIDE;
     432             : 
     433             :     // XSelectedSheetsSupplier
     434             :     virtual ::com::sun::star::uno::Sequence<sal_Int32> SAL_CALL getSelectedSheets()
     435             :         throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     436             : };
     437             : 
     438             : #endif
     439             : 
     440             : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.11