1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
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 INCLUDED_EDITENG_ACCESSIBLECOMPONENTBASE_HXX
21 #define INCLUDED_EDITENG_ACCESSIBLECOMPONENTBASE_HXX
23 #include <com/sun/star/accessibility/XAccessibleExtendedComponent.hpp>
24 #include <editeng/editengdllapi.h>
26 namespace com::sun::star::accessibility
31 namespace accessibility
34 This base class provides (will provide) a base implementation of the
35 XAccessibleComponent and the
36 XAccessibleExtendedComponent for all shapes. For
37 more detailed documentation about the methods refer to the interface
38 descriptions of XAccessible,
39 XAccessibleContext, <type>XInterface</type>,
40 XServiceInfo, and <type>XTypeProvider</type>.
42 class EDITENG_DLLPUBLIC AccessibleComponentBase
43 : public css::accessibility::XAccessibleExtendedComponent
46 //===== internal ========================================================
47 AccessibleComponentBase();
48 virtual ~AccessibleComponentBase();
50 //===== XAccessibleComponent ================================================
52 /** The default implementation uses the result of
53 <member>getBounds</member> to determine whether the given point lies
56 virtual sal_Bool SAL_CALL
containsPoint(const css::awt::Point
& aPoint
) override
;
58 /** The default implementation returns an empty reference.
60 virtual css::uno::Reference
<css::accessibility::XAccessible
>
61 SAL_CALL
getAccessibleAtPoint(const css::awt::Point
& aPoint
) override
;
63 /** The default implementation returns an empty rectangle.
65 virtual css::awt::Rectangle SAL_CALL
getBounds() override
;
67 /** The default implementation uses the result of
68 <member>getBounds</member> to determine the location.
70 virtual css::awt::Point SAL_CALL
getLocation() override
;
72 /** The default implementation returns an empty position, i.e. the
73 * result of the default constructor of css::awt::Point.
75 virtual css::awt::Point SAL_CALL
getLocationOnScreen() override
;
77 /** The default implementation uses the result of
78 <member>getBounds</member> to determine the size.
80 virtual css::awt::Size SAL_CALL
getSize() override
;
82 /** The default implementation does nothing.
84 virtual void SAL_CALL
grabFocus() override
;
86 /** Returns black as the default foreground color.
88 virtual sal_Int32 SAL_CALL
getForeground() override
;
90 /** Returns white as the default background color.
92 virtual sal_Int32 SAL_CALL
getBackground() override
;
94 //===== XAccessibleExtendedComponent ====================================
95 virtual css::uno::Reference
<css::awt::XFont
> SAL_CALL
getFont() override
;
96 virtual OUString SAL_CALL
getTitledBorderText() override
;
97 virtual OUString SAL_CALL
getToolTipText() override
;
99 //===== XTypeProvider ===================================================
101 /// @throws css::uno::RuntimeException
102 virtual css::uno::Sequence
<css::uno::Type
> SAL_CALL
getTypes();
105 } // end of namespace accessibility
109 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */