Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
qwindowsuiatextprovider.h
Go to the documentation of this file.
1// Copyright (C) 2017 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#ifndef QWINDOWSUIATEXTPROVIDER_H
5#define QWINDOWSUIATEXTPROVIDER_H
6
7#include <QtGui/qtguiglobal.h>
8#if QT_CONFIG(accessibility)
9
12
14
15namespace QtPrivate {
16
17template <>
18struct QComObjectTraits<ITextProvider2>
19{
20 static constexpr bool isGuidOf(REFIID riid) noexcept
21 {
22 return QComObjectTraits<ITextProvider2, ITextProvider>::isGuidOf(riid);
23 }
24};
25
26} // namespace QtPrivate
27
28// Implements the Text control pattern provider. Used for text controls.
29class QWindowsUiaTextProvider : public QWindowsUiaBaseProvider, public QComObject<ITextProvider2>
30{
31 Q_DISABLE_COPY_MOVE(QWindowsUiaTextProvider)
32public:
33 explicit QWindowsUiaTextProvider(QAccessible::Id id);
34 ~QWindowsUiaTextProvider();
35
36 // ITextProvider
37 HRESULT STDMETHODCALLTYPE GetSelection(SAFEARRAY **pRetVal) override;
38 HRESULT STDMETHODCALLTYPE GetVisibleRanges(SAFEARRAY **pRetVal) override;
39 HRESULT STDMETHODCALLTYPE RangeFromChild(IRawElementProviderSimple *childElement, ITextRangeProvider **pRetVal) override;
40 HRESULT STDMETHODCALLTYPE RangeFromPoint(UiaPoint point, ITextRangeProvider **pRetVal) override;
41 HRESULT STDMETHODCALLTYPE get_DocumentRange(ITextRangeProvider **pRetVal) override;
42 HRESULT STDMETHODCALLTYPE get_SupportedTextSelection(SupportedTextSelection *pRetVal) override;
43
44 // ITextProvider2
45 HRESULT STDMETHODCALLTYPE RangeFromAnnotation(IRawElementProviderSimple *annotationElement, ITextRangeProvider **pRetVal) override;
46 HRESULT STDMETHODCALLTYPE GetCaretRange(BOOL *isActive, ITextRangeProvider **pRetVal) override;
47};
48
50
51#endif // QT_CONFIG(accessibility)
52
53#endif // QWINDOWSUIATEXTPROVIDER_H
bool isActive
Combined button and popup list for selecting options.
\macro QT_NO_KEYWORDS >
IUIViewSettingsInterop __RPC__in REFIID riid
long HRESULT