masterfix DEV300: #i10000# build fix
[LibreOffice.git] / extensions / source / propctrlr / defaulthelpprovider.hxx
blob151fcc872099d447aa58119efccbcb387467af60
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * This file is part of OpenOffice.org.
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org. If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
26 ************************************************************************/
28 #ifndef EXTENSIONS_DEFAULTHELPPROVIDER_HXX
29 #define EXTENSIONS_DEFAULTHELPPROVIDER_HXX
31 /** === begin UNO includes === **/
32 #include <com/sun/star/inspection/XPropertyControlObserver.hpp>
33 #include <com/sun/star/lang/XInitialization.hpp>
34 #include <com/sun/star/inspection/XObjectInspectorUI.hpp>
35 /** === end UNO includes === **/
37 #include <cppuhelper/implbase2.hxx>
38 #include <comphelper/componentcontext.hxx>
40 class Window;
42 //........................................................................
43 namespace pcr
45 //........................................................................
47 //====================================================================
48 //= DefaultHelpProvider
49 //====================================================================
50 typedef ::cppu::WeakImplHelper2 < ::com::sun::star::inspection::XPropertyControlObserver
51 , ::com::sun::star::lang::XInitialization
52 > DefaultHelpProvider_Base;
53 class DefaultHelpProvider : public DefaultHelpProvider_Base
55 private:
56 ::comphelper::ComponentContext m_aContext;
57 bool m_bConstructed;
58 ::com::sun::star::uno::Reference< ::com::sun::star::inspection::XObjectInspectorUI >
59 m_xInspectorUI;
61 public:
62 DefaultHelpProvider( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& _rxContext );
64 // XServiceInfo - static versions
65 static ::rtl::OUString getImplementationName_static( ) throw(::com::sun::star::uno::RuntimeException);
66 static ::com::sun::star::uno::Sequence< ::rtl::OUString > getSupportedServiceNames_static( ) throw(::com::sun::star::uno::RuntimeException);
67 static ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL
68 Create(const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >&);
70 protected:
71 ~DefaultHelpProvider();
73 // XPropertyControlObserver
74 virtual void SAL_CALL focusGained( const ::com::sun::star::uno::Reference< ::com::sun::star::inspection::XPropertyControl >& Control ) throw (::com::sun::star::uno::RuntimeException);
75 virtual void SAL_CALL valueChanged( const ::com::sun::star::uno::Reference< ::com::sun::star::inspection::XPropertyControl >& Control ) throw (::com::sun::star::uno::RuntimeException);
77 // XInitialization
78 virtual void SAL_CALL initialize( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments ) throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
80 protected:
81 // Service constructors
82 void create( const ::com::sun::star::uno::Reference< ::com::sun::star::inspection::XObjectInspectorUI >& _rxUI );
84 private:
85 Window* impl_getVclControlWindow_nothrow( const ::com::sun::star::uno::Reference< ::com::sun::star::inspection::XPropertyControl >& _rxControl );
86 ::rtl::OUString impl_getHelpText_nothrow( const ::com::sun::star::uno::Reference< ::com::sun::star::inspection::XPropertyControl >& _rxControl );
89 //........................................................................
90 } // namespace pcr
91 //........................................................................
93 #endif // EXTENSIONS_DEFAULTHELPPROVIDER_HXX