fdo#74697 Add Bluez 5 support for impress remote.
[LibreOffice.git] / basctl / source / inc / accessibledialogcontrolshape.hxx
blob46761c13228b633b09fbc1a11bef746381c7783e
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
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/.
9 * This file incorporates work covered by the following license notice:
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 .
20 #ifndef BASCTL_ACCESSIBLEDIALOGCONTROLSHAPE_HXX
21 #define BASCTL_ACCESSIBLEDIALOGCONTROLSHAPE_HXX
23 #include <com/sun/star/beans/XPropertySet.hpp>
24 #include <com/sun/star/lang/XServiceInfo.hpp>
25 #include <comphelper/accessiblecomponenthelper.hxx>
26 #include <cppuhelper/implbase3.hxx>
28 class Window;
29 class VCLExternalSolarLock;
31 namespace utl {
32 class AccessibleStateSetHelper;
35 namespace basctl
38 class DlgEdObj;
39 class DialogWindow;
41 // ----------------------------------------------------
42 // class AccessibleDialogControlShape
43 // ----------------------------------------------------
45 typedef ::comphelper::OAccessibleExtendedComponentHelper AccessibleExtendedComponentHelper_BASE;
47 typedef ::cppu::ImplHelper3<
48 ::com::sun::star::accessibility::XAccessible,
49 ::com::sun::star::lang::XServiceInfo,
50 ::com::sun::star::beans::XPropertyChangeListener > AccessibleDialogControlShape_BASE;
52 class AccessibleDialogControlShape : public AccessibleExtendedComponentHelper_BASE,
53 public AccessibleDialogControlShape_BASE
55 friend class AccessibleDialogWindow;
57 private:
58 VCLExternalSolarLock* m_pExternalLock;
59 DialogWindow* m_pDialogWindow;
60 DlgEdObj* m_pDlgEdObj;
61 bool m_bFocused;
62 bool m_bSelected;
64 ::com::sun::star::awt::Rectangle m_aBounds;
65 ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > m_xControlModel;
67 protected:
68 bool IsFocused();
69 bool IsSelected();
71 void SetFocused (bool bFocused);
72 void SetSelected (bool bSelected);
74 ::com::sun::star::awt::Rectangle GetBounds();
75 void SetBounds( const ::com::sun::star::awt::Rectangle& aBounds );
77 Window* GetWindow() const;
79 OUString GetModelStringProperty( const sal_Char* pPropertyName );
81 virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
83 // OCommonAccessibleComponent
84 virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
86 // XComponent
87 virtual void SAL_CALL disposing();
89 public:
90 AccessibleDialogControlShape (DialogWindow*, DlgEdObj*);
91 virtual ~AccessibleDialogControlShape();
93 // XInterface
94 DECLARE_XINTERFACE()
96 // XTypeProvider
97 DECLARE_XTYPEPROVIDER()
99 // XEventListener
100 virtual void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& rSource ) throw (::com::sun::star::uno::RuntimeException);
102 // XPropertyChangeListener
103 virtual void SAL_CALL propertyChange( const ::com::sun::star::beans::PropertyChangeEvent& rEvent ) throw (::com::sun::star::uno::RuntimeException);
105 // XServiceInfo
106 virtual OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
107 virtual sal_Bool SAL_CALL supportsService( const OUString& rServiceName ) throw (::com::sun::star::uno::RuntimeException);
108 virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
110 // XAccessible
111 virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
113 // XAccessibleContext
114 virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
115 virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
116 virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
117 virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
118 virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
119 virtual OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
120 virtual OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
121 virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
122 virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
123 virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
125 // XAccessibleComponent
126 virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
127 virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
128 virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
129 virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
131 // XAccessibleExtendedComponent
132 virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
133 virtual OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
134 virtual OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
137 } // namespace basctl
139 #endif // BASCTL_ACCESSIBLEDIALOGCONTROLSHAPE_HXX
141 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */