Warning, file /include/QtGui/qaccessible.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005 #if 0
0006
0007
0008 #pragma qt_class(QAccessible)
0009 #endif
0010
0011 #ifndef QACCESSIBLE_H
0012 #define QACCESSIBLE_H
0013 #include <QtGui/qtguiglobal.h>
0014
0015 #if QT_CONFIG(accessibility)
0016
0017 #include <QtCore/qcoreapplication.h>
0018 #include <QtCore/qglobal.h>
0019 #include <QtCore/qlist.h>
0020 #include <QtCore/qobject.h>
0021 #include <QtCore/qrect.h>
0022 #include <QtCore/qset.h>
0023 #include <QtCore/qvariant.h>
0024 #include <QtGui/qcolor.h>
0025 #include <QtGui/qevent.h>
0026 #include <QtGui/qaccessible_base.h>
0027
0028 QT_BEGIN_NAMESPACE
0029
0030 class QDebug;
0031 class QAccessibleInterface;
0032 class QAccessibleEvent;
0033 class QWindow;
0034 class QTextCursor;
0035
0036 class QAccessible2Interface;
0037 class QAccessibleTextInterface;
0038 class QAccessibleEditableTextInterface;
0039 class QAccessibleValueInterface;
0040 class QAccessibleActionInterface;
0041 class QAccessibleImageInterface;
0042 class QAccessibleTableInterface;
0043 class QAccessibleTableCellInterface;
0044 class QAccessibleHyperlinkInterface;
0045 class QAccessibleSelectionInterface;
0046 class QAccessibleAttributesInterface;
0047 class QAccessibleTableModelChangeEvent;
0048
0049 class Q_GUI_EXPORT QAccessibleInterface
0050 {
0051 protected:
0052 virtual ~QAccessibleInterface();
0053
0054 public:
0055
0056 virtual bool isValid() const = 0;
0057 virtual QObject *object() const = 0;
0058 virtual QWindow *window() const;
0059
0060
0061 virtual QList<std::pair<QAccessibleInterface *, QAccessible::Relation>>
0062 relations(QAccessible::Relation match = QAccessible::AllRelations) const;
0063 virtual QAccessibleInterface *focusChild() const;
0064
0065 virtual QAccessibleInterface *childAt(int x, int y) const = 0;
0066
0067
0068 virtual QAccessibleInterface *parent() const = 0;
0069 virtual QAccessibleInterface *child(int index) const = 0;
0070 virtual int childCount() const = 0;
0071 virtual int indexOfChild(const QAccessibleInterface *) const = 0;
0072
0073
0074 virtual QString text(QAccessible::Text t) const = 0;
0075 virtual void setText(QAccessible::Text t, const QString &text) = 0;
0076 virtual QRect rect() const = 0;
0077 virtual QAccessible::Role role() const = 0;
0078 virtual QAccessible::State state() const = 0;
0079
0080 virtual QColor foregroundColor() const;
0081 virtual QColor backgroundColor() const;
0082
0083 inline QAccessibleTextInterface *textInterface()
0084 { return reinterpret_cast<QAccessibleTextInterface *>(interface_cast(QAccessible::TextInterface)); }
0085
0086 inline QAccessibleEditableTextInterface *editableTextInterface()
0087 { return reinterpret_cast<QAccessibleEditableTextInterface *>(interface_cast(QAccessible::EditableTextInterface)); }
0088
0089 inline QAccessibleValueInterface *valueInterface()
0090 { return reinterpret_cast<QAccessibleValueInterface *>(interface_cast(QAccessible::ValueInterface)); }
0091
0092 inline QAccessibleActionInterface *actionInterface()
0093 { return reinterpret_cast<QAccessibleActionInterface *>(interface_cast(QAccessible::ActionInterface)); }
0094
0095 inline QAccessibleImageInterface *imageInterface()
0096 { return reinterpret_cast<QAccessibleImageInterface *>(interface_cast(QAccessible::ImageInterface)); }
0097
0098 inline QAccessibleTableInterface *tableInterface()
0099 { return reinterpret_cast<QAccessibleTableInterface *>(interface_cast(QAccessible::TableInterface)); }
0100
0101 inline QAccessibleTableCellInterface *tableCellInterface()
0102 { return reinterpret_cast<QAccessibleTableCellInterface *>(interface_cast(QAccessible::TableCellInterface)); }
0103
0104 inline QAccessibleHyperlinkInterface *hyperlinkInterface()
0105 { return reinterpret_cast<QAccessibleHyperlinkInterface *>(interface_cast(QAccessible::HyperlinkInterface)); }
0106
0107 inline QAccessibleSelectionInterface *selectionInterface()
0108 { return reinterpret_cast<QAccessibleSelectionInterface *>(interface_cast(QAccessible::SelectionInterface)); }
0109
0110 inline QAccessibleAttributesInterface *attributesInterface()
0111 { return reinterpret_cast<QAccessibleAttributesInterface *>(interface_cast(QAccessible::AttributesInterface)); }
0112
0113 virtual void virtual_hook(int id, void *data);
0114
0115 virtual void *interface_cast(QAccessible::InterfaceType)
0116 { return nullptr; }
0117
0118 protected:
0119 friend class QAccessibleCache;
0120 };
0121
0122 class Q_GUI_EXPORT QAccessibleTextInterface
0123 {
0124 public:
0125 virtual ~QAccessibleTextInterface();
0126
0127 virtual void selection(int selectionIndex, int *startOffset, int *endOffset) const = 0;
0128 virtual int selectionCount() const = 0;
0129 virtual void addSelection(int startOffset, int endOffset) = 0;
0130 virtual void removeSelection(int selectionIndex) = 0;
0131 virtual void setSelection(int selectionIndex, int startOffset, int endOffset) = 0;
0132
0133
0134 virtual int cursorPosition() const = 0;
0135 virtual void setCursorPosition(int position) = 0;
0136
0137
0138 virtual QString text(int startOffset, int endOffset) const = 0;
0139 virtual QString textBeforeOffset(int offset, QAccessible::TextBoundaryType boundaryType,
0140 int *startOffset, int *endOffset) const;
0141 virtual QString textAfterOffset(int offset, QAccessible::TextBoundaryType boundaryType,
0142 int *startOffset, int *endOffset) const;
0143 virtual QString textAtOffset(int offset, QAccessible::TextBoundaryType boundaryType,
0144 int *startOffset, int *endOffset) const;
0145 virtual int characterCount() const = 0;
0146
0147
0148 virtual QRect characterRect(int offset) const = 0;
0149 virtual int offsetAtPoint(const QPoint &point) const = 0;
0150
0151 virtual void scrollToSubstring(int startIndex, int endIndex) = 0;
0152 virtual QString attributes(int offset, int *startOffset, int *endOffset) const = 0;
0153 };
0154
0155 class Q_GUI_EXPORT QAccessibleEditableTextInterface
0156 {
0157 public:
0158 virtual ~QAccessibleEditableTextInterface();
0159
0160 virtual void deleteText(int startOffset, int endOffset) = 0;
0161 virtual void insertText(int offset, const QString &text) = 0;
0162 virtual void replaceText(int startOffset, int endOffset, const QString &text) = 0;
0163 };
0164
0165 class Q_GUI_EXPORT QAccessibleValueInterface
0166 {
0167 public:
0168 virtual ~QAccessibleValueInterface();
0169
0170 virtual QVariant currentValue() const = 0;
0171 virtual void setCurrentValue(const QVariant &value) = 0;
0172 virtual QVariant maximumValue() const = 0;
0173 virtual QVariant minimumValue() const = 0;
0174 virtual QVariant minimumStepSize() const = 0;
0175 };
0176
0177 class Q_GUI_EXPORT QAccessibleTableCellInterface
0178 {
0179 public:
0180 virtual ~QAccessibleTableCellInterface();
0181
0182 virtual bool isSelected() const = 0;
0183
0184 virtual QList<QAccessibleInterface*> columnHeaderCells() const = 0;
0185 virtual QList<QAccessibleInterface*> rowHeaderCells() const = 0;
0186 virtual int columnIndex() const = 0;
0187 virtual int rowIndex() const = 0;
0188 virtual int columnExtent() const = 0;
0189 virtual int rowExtent() const = 0;
0190
0191 virtual QAccessibleInterface* table() const = 0;
0192 };
0193
0194 class Q_GUI_EXPORT QAccessibleTableInterface
0195 {
0196 public:
0197 virtual ~QAccessibleTableInterface();
0198
0199 virtual QAccessibleInterface *caption() const = 0;
0200 virtual QAccessibleInterface *summary() const = 0;
0201
0202 virtual QAccessibleInterface *cellAt (int row, int column) const = 0;
0203 virtual int selectedCellCount() const = 0;
0204 virtual QList<QAccessibleInterface*> selectedCells() const = 0;
0205
0206 virtual QString columnDescription(int column) const = 0;
0207 virtual QString rowDescription(int row) const = 0;
0208 virtual int selectedColumnCount() const = 0;
0209 virtual int selectedRowCount() const = 0;
0210 virtual int columnCount() const = 0;
0211 virtual int rowCount() const = 0;
0212 virtual QList<int> selectedColumns() const = 0;
0213 virtual QList<int> selectedRows() const = 0;
0214 virtual bool isColumnSelected(int column) const = 0;
0215 virtual bool isRowSelected(int row) const = 0;
0216 virtual bool selectRow(int row) = 0;
0217 virtual bool selectColumn(int column) = 0;
0218 virtual bool unselectRow(int row) = 0;
0219 virtual bool unselectColumn(int column) = 0;
0220
0221 virtual void modelChange(QAccessibleTableModelChangeEvent *event) = 0;
0222
0223 protected:
0224 friend class QAbstractItemView;
0225 friend class QAbstractItemViewPrivate;
0226 };
0227
0228 class Q_GUI_EXPORT QAccessibleActionInterface
0229 {
0230 Q_DECLARE_TR_FUNCTIONS(QAccessibleActionInterface)
0231 public:
0232 virtual ~QAccessibleActionInterface();
0233
0234 virtual QStringList actionNames() const = 0;
0235 virtual QString localizedActionName(const QString &name) const;
0236 virtual QString localizedActionDescription(const QString &name) const;
0237 virtual void doAction(const QString &actionName) = 0;
0238 virtual QStringList keyBindingsForAction(const QString &actionName) const = 0;
0239
0240 static const QString &pressAction();
0241 static const QString &increaseAction();
0242 static const QString &decreaseAction();
0243 static const QString &showMenuAction();
0244 static const QString &setFocusAction();
0245 static const QString &toggleAction();
0246 static QString scrollLeftAction();
0247 static QString scrollRightAction();
0248 static QString scrollUpAction();
0249 static QString scrollDownAction();
0250 static QString nextPageAction();
0251 static QString previousPageAction();
0252 };
0253
0254 class Q_GUI_EXPORT QAccessibleImageInterface
0255 {
0256 public:
0257 virtual ~QAccessibleImageInterface();
0258
0259 virtual QString imageDescription() const = 0;
0260 virtual QSize imageSize() const = 0;
0261 virtual QPoint imagePosition() const = 0;
0262 };
0263
0264 class Q_GUI_EXPORT QAccessibleHyperlinkInterface
0265 {
0266 public:
0267 virtual ~QAccessibleHyperlinkInterface();
0268
0269 virtual QString anchor() const = 0;
0270 virtual QString anchorTarget() const = 0;
0271 virtual int startIndex() const = 0;
0272 virtual int endIndex() const = 0;
0273 virtual bool isValid() const = 0;
0274 };
0275
0276 class Q_GUI_EXPORT QAccessibleSelectionInterface
0277 {
0278 public:
0279 virtual ~QAccessibleSelectionInterface();
0280
0281 virtual int selectedItemCount() const = 0;
0282 virtual QList<QAccessibleInterface*> selectedItems() const = 0;
0283 virtual QAccessibleInterface* selectedItem(int selectionIndex) const;
0284 virtual bool isSelected(QAccessibleInterface *childItem) const;
0285 virtual bool select(QAccessibleInterface *childItem) = 0;
0286 virtual bool unselect(QAccessibleInterface *childItem) = 0;
0287 virtual bool selectAll() = 0;
0288 virtual bool clear() = 0;
0289 };
0290
0291 class Q_GUI_EXPORT QAccessibleAttributesInterface
0292 {
0293 public:
0294 virtual ~QAccessibleAttributesInterface();
0295 virtual QList<QAccessible::Attribute> attributeKeys() const = 0;
0296 virtual QVariant attributeValue(QAccessible::Attribute key) const = 0;
0297 };
0298
0299
0300 class Q_GUI_EXPORT QAccessibleEvent
0301 {
0302 Q_DISABLE_COPY(QAccessibleEvent)
0303 public:
0304
0305 inline QAccessibleEvent(QObject *obj, QAccessible::Event typ)
0306 : m_type(typ), m_object(obj), m_child(-1)
0307 {
0308 if (m_type != QAccessible::ObjectDestroyed)
0309 Q_ASSERT(obj);
0310
0311
0312 Q_ASSERT(m_type != QAccessible::ValueChanged);
0313 Q_ASSERT(m_type != QAccessible::StateChanged);
0314 Q_ASSERT(m_type != QAccessible::TextCaretMoved);
0315 Q_ASSERT(m_type != QAccessible::TextSelectionChanged);
0316 Q_ASSERT(m_type != QAccessible::TextInserted);
0317 Q_ASSERT(m_type != QAccessible::TextRemoved);
0318 Q_ASSERT(m_type != QAccessible::TextUpdated);
0319 Q_ASSERT(m_type != QAccessible::TableModelChanged);
0320 Q_ASSERT(m_type != QAccessible::Announcement);
0321 }
0322
0323 inline QAccessibleEvent(QAccessibleInterface *iface, QAccessible::Event typ)
0324 : m_type(typ)
0325 {
0326 Q_ASSERT(iface);
0327 Q_ASSERT(m_type != QAccessible::ValueChanged);
0328 Q_ASSERT(m_type != QAccessible::StateChanged);
0329 Q_ASSERT(m_type != QAccessible::TextCaretMoved);
0330 Q_ASSERT(m_type != QAccessible::TextSelectionChanged);
0331 Q_ASSERT(m_type != QAccessible::TextInserted);
0332 Q_ASSERT(m_type != QAccessible::TextRemoved);
0333 Q_ASSERT(m_type != QAccessible::TextUpdated);
0334 Q_ASSERT(m_type != QAccessible::TableModelChanged);
0335 Q_ASSERT(m_type != QAccessible::Announcement);
0336 m_uniqueId = QAccessible::uniqueId(iface);
0337 m_object = iface->object();
0338 }
0339
0340 virtual ~QAccessibleEvent();
0341
0342 QAccessible::Event type() const { return m_type; }
0343 QObject *object() const { return m_object; }
0344 QAccessible::Id uniqueId() const;
0345
0346 void setChild(int chld);
0347 int child() const { return m_child; }
0348
0349 virtual QAccessibleInterface *accessibleInterface() const;
0350
0351 protected:
0352 QAccessible::Event m_type;
0353 QObject *m_object;
0354 union {
0355 int m_child;
0356 QAccessible::Id m_uniqueId;
0357 };
0358
0359 friend class QTestAccessibility;
0360 };
0361
0362 class Q_GUI_EXPORT QAccessibleStateChangeEvent :public QAccessibleEvent
0363 {
0364 public:
0365 inline QAccessibleStateChangeEvent(QObject *obj, QAccessible::State state)
0366 : QAccessibleEvent(obj, QAccessible::InvalidEvent), m_changedStates(state)
0367 {
0368 m_type = QAccessible::StateChanged;
0369 }
0370 inline QAccessibleStateChangeEvent(QAccessibleInterface *iface, QAccessible::State state)
0371 : QAccessibleEvent(iface, QAccessible::InvalidEvent), m_changedStates(state)
0372 {
0373 m_type = QAccessible::StateChanged;
0374 }
0375 ~QAccessibleStateChangeEvent();
0376
0377 QAccessible::State changedStates() const {
0378 return m_changedStates;
0379 }
0380
0381 protected:
0382 QAccessible::State m_changedStates;
0383 };
0384
0385
0386 class Q_GUI_EXPORT QAccessibleTextCursorEvent : public QAccessibleEvent
0387 {
0388 public:
0389 inline QAccessibleTextCursorEvent(QObject *obj, int cursorPos)
0390 : QAccessibleEvent(obj, QAccessible::InvalidEvent)
0391 , m_cursorPosition(cursorPos)
0392 {
0393 m_type = QAccessible::TextCaretMoved;
0394 }
0395 inline QAccessibleTextCursorEvent(QAccessibleInterface *iface, int cursorPos)
0396 : QAccessibleEvent(iface, QAccessible::InvalidEvent)
0397 , m_cursorPosition(cursorPos)
0398 {
0399 m_type = QAccessible::TextCaretMoved;
0400 }
0401
0402 ~QAccessibleTextCursorEvent();
0403
0404 void setCursorPosition(int position) { m_cursorPosition = position; }
0405 int cursorPosition() const { return m_cursorPosition; }
0406
0407 protected:
0408 int m_cursorPosition;
0409 };
0410
0411
0412 class Q_GUI_EXPORT QAccessibleTextSelectionEvent : public QAccessibleTextCursorEvent
0413 {
0414 public:
0415 inline QAccessibleTextSelectionEvent(QObject *obj, int start, int end)
0416 : QAccessibleTextCursorEvent(obj, (start == -1) ? 0 : end)
0417 , m_selectionStart(start), m_selectionEnd(end)
0418 {
0419 m_type = QAccessible::TextSelectionChanged;
0420 }
0421 inline QAccessibleTextSelectionEvent(QAccessibleInterface *iface, int start, int end)
0422 : QAccessibleTextCursorEvent(iface, (start == -1) ? 0 : end)
0423 , m_selectionStart(start), m_selectionEnd(end)
0424 {
0425 m_type = QAccessible::TextSelectionChanged;
0426 }
0427
0428 ~QAccessibleTextSelectionEvent();
0429
0430 void setSelection(int start, int end) {
0431 m_selectionStart = start;
0432 m_selectionEnd = end;
0433 }
0434
0435 int selectionStart() const { return m_selectionStart; }
0436 int selectionEnd() const { return m_selectionEnd; }
0437
0438 protected:
0439 int m_selectionStart;
0440 int m_selectionEnd;
0441 };
0442
0443 class Q_GUI_EXPORT QAccessibleTextInsertEvent : public QAccessibleTextCursorEvent
0444 {
0445 public:
0446 inline QAccessibleTextInsertEvent(QObject *obj, int position, const QString &text)
0447 : QAccessibleTextCursorEvent(obj, position + int(text.size()))
0448 , m_position(position), m_text(text)
0449 {
0450 m_type = QAccessible::TextInserted;
0451 }
0452 inline QAccessibleTextInsertEvent(QAccessibleInterface *iface, int position, const QString &text)
0453 : QAccessibleTextCursorEvent(iface, position + int(text.size()))
0454 , m_position(position), m_text(text)
0455 {
0456 m_type = QAccessible::TextInserted;
0457 }
0458
0459 ~QAccessibleTextInsertEvent();
0460
0461 QString textInserted() const {
0462 return m_text;
0463 }
0464 int changePosition() const {
0465 return m_position;
0466 }
0467
0468 protected:
0469 int m_position;
0470 QString m_text;
0471 };
0472
0473 class Q_GUI_EXPORT QAccessibleTextRemoveEvent : public QAccessibleTextCursorEvent
0474 {
0475 public:
0476 inline QAccessibleTextRemoveEvent(QObject *obj, int position, const QString &text)
0477 : QAccessibleTextCursorEvent(obj, position)
0478 , m_position(position), m_text(text)
0479 {
0480 m_type = QAccessible::TextRemoved;
0481 }
0482 inline QAccessibleTextRemoveEvent(QAccessibleInterface *iface, int position, const QString &text)
0483 : QAccessibleTextCursorEvent(iface, position)
0484 , m_position(position), m_text(text)
0485 {
0486 m_type = QAccessible::TextRemoved;
0487 }
0488
0489 ~QAccessibleTextRemoveEvent();
0490
0491 QString textRemoved() const {
0492 return m_text;
0493 }
0494 int changePosition() const {
0495 return m_position;
0496 }
0497
0498 protected:
0499 int m_position;
0500 QString m_text;
0501 };
0502
0503 class Q_GUI_EXPORT QAccessibleTextUpdateEvent : public QAccessibleTextCursorEvent
0504 {
0505 public:
0506 inline QAccessibleTextUpdateEvent(QObject *obj, int position, const QString &oldText, const QString &text)
0507 : QAccessibleTextCursorEvent(obj, position + int(text.size()))
0508 , m_position(position), m_oldText(oldText), m_text(text)
0509 {
0510 m_type = QAccessible::TextUpdated;
0511 }
0512 inline QAccessibleTextUpdateEvent(QAccessibleInterface *iface, int position, const QString &oldText, const QString &text)
0513 : QAccessibleTextCursorEvent(iface, position + int(text.size()))
0514 , m_position(position), m_oldText(oldText), m_text(text)
0515 {
0516 m_type = QAccessible::TextUpdated;
0517 }
0518
0519 ~QAccessibleTextUpdateEvent();
0520
0521 QString textRemoved() const {
0522 return m_oldText;
0523 }
0524 QString textInserted() const {
0525 return m_text;
0526 }
0527 int changePosition() const {
0528 return m_position;
0529 }
0530
0531 protected:
0532 int m_position;
0533 QString m_oldText;
0534 QString m_text;
0535 };
0536
0537 class Q_GUI_EXPORT QAccessibleValueChangeEvent : public QAccessibleEvent
0538 {
0539 public:
0540 inline QAccessibleValueChangeEvent(QObject *obj, const QVariant &val)
0541 : QAccessibleEvent(obj, QAccessible::InvalidEvent)
0542 , m_value(val)
0543 {
0544 m_type = QAccessible::ValueChanged;
0545 }
0546 inline QAccessibleValueChangeEvent(QAccessibleInterface *iface, const QVariant &val)
0547 : QAccessibleEvent(iface, QAccessible::InvalidEvent)
0548 , m_value(val)
0549 {
0550 m_type = QAccessible::ValueChanged;
0551 }
0552
0553 ~QAccessibleValueChangeEvent();
0554
0555 void setValue(const QVariant & val) { m_value= val; }
0556 QVariant value() const { return m_value; }
0557
0558 protected:
0559 QVariant m_value;
0560 };
0561
0562 class Q_GUI_EXPORT QAccessibleTableModelChangeEvent : public QAccessibleEvent
0563 {
0564 public:
0565 enum ModelChangeType {
0566 ModelReset,
0567 DataChanged,
0568 RowsInserted,
0569 ColumnsInserted,
0570 RowsRemoved,
0571 ColumnsRemoved
0572 };
0573
0574 inline QAccessibleTableModelChangeEvent(QObject *obj, ModelChangeType changeType)
0575 : QAccessibleEvent(obj, QAccessible::InvalidEvent)
0576 , m_modelChangeType(changeType)
0577 , m_firstRow(-1), m_firstColumn(-1), m_lastRow(-1), m_lastColumn(-1)
0578 {
0579 m_type = QAccessible::TableModelChanged;
0580 }
0581 inline QAccessibleTableModelChangeEvent(QAccessibleInterface *iface, ModelChangeType changeType)
0582 : QAccessibleEvent(iface, QAccessible::InvalidEvent)
0583 , m_modelChangeType(changeType)
0584 , m_firstRow(-1), m_firstColumn(-1), m_lastRow(-1), m_lastColumn(-1)
0585 {
0586 m_type = QAccessible::TableModelChanged;
0587 }
0588
0589 ~QAccessibleTableModelChangeEvent();
0590
0591 void setModelChangeType(ModelChangeType changeType) { m_modelChangeType = changeType; }
0592 ModelChangeType modelChangeType() const { return m_modelChangeType; }
0593
0594 void setFirstRow(int row) { m_firstRow = row; }
0595 void setFirstColumn(int col) { m_firstColumn = col; }
0596 void setLastRow(int row) { m_lastRow = row; }
0597 void setLastColumn(int col) { m_lastColumn = col; }
0598 int firstRow() const { return m_firstRow; }
0599 int firstColumn() const { return m_firstColumn; }
0600 int lastRow() const { return m_lastRow; }
0601 int lastColumn() const { return m_lastColumn; }
0602
0603 protected:
0604 ModelChangeType m_modelChangeType;
0605 int m_firstRow;
0606 int m_firstColumn;
0607 int m_lastRow;
0608 int m_lastColumn;
0609 };
0610
0611 class Q_GUI_EXPORT QAccessibleAnnouncementEvent : public QAccessibleEvent
0612 {
0613 public:
0614 explicit QAccessibleAnnouncementEvent(QObject *object, const QString &message)
0615 : QAccessibleEvent(object, QAccessible::InvalidEvent)
0616 , m_message(message)
0617 , m_politeness(QAccessible::AnnouncementPoliteness::Polite)
0618 {
0619 m_type = QAccessible::Announcement;
0620 }
0621
0622 explicit QAccessibleAnnouncementEvent(QAccessibleInterface *iface, const QString &message)
0623 : QAccessibleEvent(iface, QAccessible::InvalidEvent)
0624 , m_message(message)
0625 , m_politeness(QAccessible::AnnouncementPoliteness::Polite)
0626 {
0627 m_type = QAccessible::Announcement;
0628 }
0629
0630 ~QAccessibleAnnouncementEvent() override;
0631
0632 QString message() const { return m_message; }
0633 QAccessible::AnnouncementPoliteness politeness() const { return m_politeness; }
0634 void setPoliteness(QAccessible::AnnouncementPoliteness politeness)
0635 { m_politeness = politeness; }
0636
0637 protected:
0638 QString m_message;
0639 QAccessible::AnnouncementPoliteness m_politeness;
0640 };
0641
0642 #ifndef Q_QDOC
0643 #define QAccessibleInterface_iid "org.qt-project.Qt.QAccessibleInterface"
0644 Q_DECLARE_INTERFACE(QAccessibleInterface, QAccessibleInterface_iid)
0645 #endif
0646
0647 Q_GUI_EXPORT const char *qAccessibleRoleString(QAccessible::Role role);
0648 Q_GUI_EXPORT const char *qAccessibleEventString(QAccessible::Event event);
0649 Q_GUI_EXPORT QString qAccessibleLocalizedActionDescription(const QString &actionName);
0650
0651 #ifndef QT_NO_DEBUG_STREAM
0652 Q_GUI_EXPORT QDebug operator<<(QDebug d, const QAccessibleInterface *iface);
0653 Q_GUI_EXPORT QDebug operator<<(QDebug d, const QAccessibleEvent &ev);
0654 #endif
0655
0656 QT_END_NAMESPACE
0657
0658 #endif
0659 #endif