update dev300-m58
[ooovba.git] / framework / source / inc / accelerators / moduleacceleratorconfiguration.hxx
blobe57ef45ad1bf7bf634b005de1d275f09cad00df8
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: moduleacceleratorconfiguration.hxx,v $
10 * $Revision: 1.4.300.4 $
12 * This file is part of OpenOffice.org.
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.
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).
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.
29 ************************************************************************/
31 #ifndef __FRAMEWORK_ACCELERATORS_MODULEACCELERATORCONFIGURATION_HXX_
32 #define __FRAMEWORK_ACCELERATORS_MODULEACCELERATORCONFIGURATION_HXX_
34 //__________________________________________
35 // own includes
37 #include <accelerators/acceleratorconfiguration.hxx>
38 #include <accelerators/presethandler.hxx>
40 #ifndef __FRAMEWORK_MACROS_XINTERFACE_HXX_
41 #include <macros/interface.hxx>
42 #endif
43 #include <macros/xtypeprovider.hxx>
44 #include <macros/xserviceinfo.hxx>
46 //__________________________________________
47 // interface includes
48 #include <com/sun/star/lang/XInitialization.hpp>
50 //__________________________________________
51 // other includes
53 //__________________________________________
54 // definition
56 namespace framework
59 //__________________________________________
60 /**
61 implements a read/write access to a module
62 dependend accelerator configuration.
64 class ModuleAcceleratorConfiguration : public XCUBasedAcceleratorConfiguration
65 , public css::lang::XServiceInfo
66 , public css::lang::XInitialization
68 //______________________________________
69 // member
71 private:
73 //----------------------------------
74 /** identify the application module, where this accelerator
75 configuration cache should work on. */
76 ::rtl::OUString m_sModule;
77 ::rtl::OUString m_sLocale;
79 //______________________________________
80 // interface
82 public:
84 //----------------------------------
85 /** initialize this instance and fill the internal cache.
87 @param xSMGR
88 reference to an uno service manager, which is used internaly.
90 ModuleAcceleratorConfiguration(const css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR);
92 //----------------------------------
93 /** TODO */
94 virtual ~ModuleAcceleratorConfiguration();
96 // XInterface, XTypeProvider, XServiceInfo
97 FWK_DECLARE_XINTERFACE
98 FWK_DECLARE_XTYPEPROVIDER
99 DECLARE_XSERVICEINFO
101 // XInitialization
102 virtual void SAL_CALL initialize(const css::uno::Sequence< css::uno::Any >& lArguments)
103 throw(css::uno::Exception ,
104 css::uno::RuntimeException);
106 //______________________________________
107 // helper
109 private:
111 //----------------------------------
112 /** read all data into the cache. */
113 void impl_ts_fillCache();
116 } // namespace framework
118 #endif // __FRAMEWORK_ACCELERATORS_MODULEACCELERATORCONFIGURATION_HXX_