1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#include "qaccessiblebridge.h"
5
6#if QT_CONFIG(accessibility)
7
8QT_BEGIN_NAMESPACE
9
10/*!
11 \class QAccessibleBridge
12 \brief The QAccessibleBridge class is the base class for
13 accessibility back-ends.
14 \internal
15
16 \ingroup accessibility
17 \inmodule QtWidgets
18
19 Qt supports Microsoft Active Accessibility (MSAA), \macos
20 Accessibility, and the Unix/X11 AT-SPI standard. By subclassing
21 QAccessibleBridge, you can support other backends than the
22 predefined ones.
23
24 Currently, custom bridges are only supported on Unix. We might
25 add support for them on other platforms as well if there is
26 enough demand.
27
28 \sa QAccessible, QAccessibleBridgePlugin
29*/
30
31/*!
32 \fn QAccessibleBridge::~QAccessibleBridge()
33
34 Destroys the accessibility bridge object.
35*/
36
37/*!
38 \fn void QAccessibleBridge::setRootObject(QAccessibleInterface *object)
39
40 This function is called by Qt at application startup to set the
41 root accessible object of the application to \a object. All other
42 accessible objects in the application can be reached by the
43 client using object navigation.
44*/
45
46/*!
47 \fn void QAccessibleBridge::notifyAccessibilityUpdate(QAccessibleEvent *event)
48
49 This function is called by Qt to notify the bridge about a change
50 in the accessibility information. The \a event specifies the interface,
51 object, reason and child element that has changed.
52
53 \sa QAccessible::updateAccessibility()
54*/
55
56/*!
57 \class QAccessibleBridgePlugin
58 \brief The QAccessibleBridgePlugin class provides an abstract
59 base for accessibility bridge plugins.
60 \internal
61
62 \ingroup plugins
63 \ingroup accessibility
64 \inmodule QtWidgets
65
66 Writing an accessibility bridge plugin is achieved by subclassing
67 this base class, reimplementing the pure virtual function create(),
68 and exporting the class with the Q_PLUGIN_METADATA() macro.
69
70 \sa QAccessibleBridge, QAccessiblePlugin, {How to Create Qt Plugins}
71*/
72
73/*!
74 Constructs an accessibility bridge plugin with the given \a
75 parent. This is invoked automatically by the plugin loader.
76*/
77QAccessibleBridgePlugin::QAccessibleBridgePlugin(QObject *parent)
78 : QObject(parent)
79{
80
81}
82
83/*!
84 Destroys the accessibility bridge plugin.
85
86 You never have to call this explicitly. Qt destroys a plugin
87 automatically when it is no longer used.
88*/
89QAccessibleBridgePlugin::~QAccessibleBridgePlugin()
90{
91
92}
93
94/*!
95 \fn QAccessibleBridge *QAccessibleBridgePlugin::create(const QString &key)
96
97 Creates and returns the QAccessibleBridge object corresponding to
98 the given \a key. Keys are case sensitive.
99
100 \sa keys()
101*/
102
103QT_END_NAMESPACE
104
105#include "moc_qaccessiblebridge.cpp"
106
107#endif // QT_CONFIG(accessibility)
108

source code of qtbase/src/gui/accessible/qaccessiblebridge.cpp