xref: /trunk/main/sc/inc/eventuno.hxx (revision cdf0e10c)
1 /*************************************************************************
2  *
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * Copyright 2008 by Sun Microsystems, Inc.
6  *
7  * OpenOffice.org - a multi-platform office productivity suite
8  *
9  * $RCSfile: sheetdata.hxx,v $
10  * $Revision: 1.16.32.2 $
11  *
12  * This file is part of OpenOffice.org.
13  *
14  * OpenOffice.org is free software: you can redistribute it and/or modify
15  * it under the terms of the GNU Lesser General Public License version 3
16  * only, as published by the Free Software Foundation.
17  *
18  * OpenOffice.org is distributed in the hope that it will be useful,
19  * but WITHOUT ANY WARRANTY; without even the implied warranty of
20  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
21  * GNU Lesser General Public License version 3 for more details
22  * (a copy is included in the LICENSE file that accompanied this code).
23  *
24  * You should have received a copy of the GNU Lesser General Public License
25  * version 3 along with OpenOffice.org.  If not, see
26  * <http://www.openoffice.org/license.html>
27  * for a copy of the LGPLv3 License.
28  *
29  ************************************************************************/
30 
31 #ifndef SC_EVENTUNO_HXX
32 #define SC_EVENTUNO_HXX
33 
34 #include <com/sun/star/lang/XServiceInfo.hpp>
35 #include <com/sun/star/container/XNameReplace.hpp>
36 #include <cppuhelper/implbase2.hxx>
37 #include <svl/lstner.hxx>
38 
39 #include "global.hxx"
40 
41 class ScDocShell;
42 
43 class ScSheetEventsObj : public cppu::WeakImplHelper2<
44                                         com::sun::star::container::XNameReplace,
45                                         com::sun::star::lang::XServiceInfo>,
46                                     public SfxListener
47 {
48 private:
49     ScDocShell*             mpDocShell;
50     SCTAB                   mnTab;
51 
52 public:
53                             ScSheetEventsObj(ScDocShell* pDocSh, SCTAB nT);
54     virtual                 ~ScSheetEventsObj();
55 
56     virtual void            Notify( SfxBroadcaster& rBC, const SfxHint& rHint );
57 
58                             // XNameReplace
59     virtual void SAL_CALL   replaceByName( const ::rtl::OUString& aName,
60                                 const ::com::sun::star::uno::Any& aElement )
61                                     throw(::com::sun::star::lang::IllegalArgumentException,
62                                         ::com::sun::star::container::NoSuchElementException,
63                                         ::com::sun::star::lang::WrappedTargetException,
64                                         ::com::sun::star::uno::RuntimeException);
65 
66                             // XNameAccess
67     virtual ::com::sun::star::uno::Any SAL_CALL getByName( const ::rtl::OUString& aName )
68                                 throw(::com::sun::star::container::NoSuchElementException,
69                                     ::com::sun::star::lang::WrappedTargetException,
70                                     ::com::sun::star::uno::RuntimeException);
71     virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getElementNames()
72                                 throw(::com::sun::star::uno::RuntimeException);
73     virtual sal_Bool SAL_CALL hasByName( const ::rtl::OUString& aName )
74                                 throw(::com::sun::star::uno::RuntimeException);
75 
76                             // XElementAccess
77     virtual ::com::sun::star::uno::Type SAL_CALL getElementType()
78                                 throw(::com::sun::star::uno::RuntimeException);
79     virtual sal_Bool SAL_CALL hasElements() throw(::com::sun::star::uno::RuntimeException);
80 
81                             // XServiceInfo
82     virtual ::rtl::OUString SAL_CALL getImplementationName()
83                                 throw(::com::sun::star::uno::RuntimeException);
84     virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName )
85                                 throw(::com::sun::star::uno::RuntimeException);
86     virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames()
87                                 throw(::com::sun::star::uno::RuntimeException);
88 };
89 
90 #endif
91 
92