diff options
author | Paul Olav Tvete <paul.tvete@nokia.com> | 2009-11-19 08:58:03 (GMT) |
---|---|---|
committer | Paul Olav Tvete <paul.tvete@nokia.com> | 2009-11-19 08:58:03 (GMT) |
commit | 879e2ea7d15510ec5f94d6d7a005b157b115f69f (patch) | |
tree | 73aedd0bffe7ab39387229a9417aa50cecbbf0aa /src/gui/accessible | |
parent | 8fc2eec5b3282665f76f1e0313a03608bf4e7bc1 (diff) | |
parent | 80cd617b05ad3e647c87dc063d40cde0617344ca (diff) | |
download | Qt-879e2ea7d15510ec5f94d6d7a005b157b115f69f.zip Qt-879e2ea7d15510ec5f94d6d7a005b157b115f69f.tar.gz Qt-879e2ea7d15510ec5f94d6d7a005b157b115f69f.tar.bz2 |
Merge remote branch 'origin/4.6' into lighthouse
Conflicts:
configure
src/plugins/graphicssystems/graphicssystems.pro
Diffstat (limited to 'src/gui/accessible')
-rw-r--r-- | src/gui/accessible/qaccessible.cpp | 10 | ||||
-rw-r--r-- | src/gui/accessible/qaccessible.h | 12 | ||||
-rw-r--r-- | src/gui/accessible/qaccessible2.cpp | 24 | ||||
-rw-r--r-- | src/gui/accessible/qaccessible2.h | 29 | ||||
-rw-r--r-- | src/gui/accessible/qaccessible_mac.mm | 5 |
5 files changed, 74 insertions, 6 deletions
diff --git a/src/gui/accessible/qaccessible.cpp b/src/gui/accessible/qaccessible.cpp index a527ee7..a11ebea 100644 --- a/src/gui/accessible/qaccessible.cpp +++ b/src/gui/accessible/qaccessible.cpp @@ -984,6 +984,16 @@ const QAccessibleInterface *other, int otherChild) const */ /*! + \fn QAccessibleActionInterface *QAccessibleInterface::actionInterface() + \internal +*/ + +/*! + \fn QAccessibleImageInterface *QAccessibleInterface::imageInterface() + \internal +*/ + +/*! \class QAccessibleEvent \brief The QAccessibleEvent class is used to query addition accessibility information about complex widgets. diff --git a/src/gui/accessible/qaccessible.h b/src/gui/accessible/qaccessible.h index 96fe91c..c493054 100644 --- a/src/gui/accessible/qaccessible.h +++ b/src/gui/accessible/qaccessible.h @@ -310,7 +310,9 @@ namespace QAccessible2 TextInterface, EditableTextInterface, ValueInterface, - TableInterface + TableInterface, + ActionInterface, + ImageInterface }; } @@ -319,6 +321,8 @@ class QAccessibleTextInterface; class QAccessibleEditableTextInterface; class QAccessibleValueInterface; class QAccessibleTableInterface; +class QAccessibleActionInterface; +class QAccessibleImageInterface; class Q_GUI_EXPORT QAccessibleInterface : public QAccessible { @@ -376,6 +380,12 @@ public: inline QAccessibleTableInterface *tableInterface() { return reinterpret_cast<QAccessibleTableInterface *>(cast_helper(QAccessible2::TableInterface)); } + inline QAccessibleActionInterface *actionInterface() + { return reinterpret_cast<QAccessibleActionInterface *>(cast_helper(QAccessible2::ActionInterface)); } + + inline QAccessibleImageInterface *imageInterface() + { return reinterpret_cast<QAccessibleImageInterface *>(cast_helper(QAccessible2::ImageInterface)); } + private: QAccessible2Interface *cast_helper(QAccessible2::InterfaceType); }; diff --git a/src/gui/accessible/qaccessible2.cpp b/src/gui/accessible/qaccessible2.cpp index f731962..b878cf1 100644 --- a/src/gui/accessible/qaccessible2.cpp +++ b/src/gui/accessible/qaccessible2.cpp @@ -108,6 +108,30 @@ QT_BEGIN_NAMESPACE \link http://www.linux-foundation.org/en/Accessibility/IAccessible2 IAccessible2 Specification \endlink */ +/*! + \class QAccessibleActionInterface + \ingroup accessibility + \internal + \preliminary + + \brief The QAccessibleActionInterface class implements support for + the IAccessibleAction interface. + + \link http://www.linux-foundation.org/en/Accessibility/IAccessible2 IAccessible2 Specification \endlink +*/ + +/*! + \class QAccessibleImageInterface + \ingroup accessibility + \internal + \preliminary + + \brief The QAccessibleImageInterface class implements support for + the IAccessibleImage interface. + + \link http://www.linux-foundation.org/en/Accessibility/IAccessible2 IAccessible2 Specification \endlink +*/ + QAccessibleSimpleEditableTextInterface::QAccessibleSimpleEditableTextInterface( QAccessibleInterface *accessibleInterface) : iface(accessibleInterface) diff --git a/src/gui/accessible/qaccessible2.h b/src/gui/accessible/qaccessible2.h index 3281509..ba12a7c 100644 --- a/src/gui/accessible/qaccessible2.h +++ b/src/gui/accessible/qaccessible2.h @@ -81,6 +81,8 @@ inline QAccessible2Interface *qAccessibleValueCastHelper() { return 0; } inline QAccessible2Interface *qAccessibleTextCastHelper() { return 0; } inline QAccessible2Interface *qAccessibleEditableTextCastHelper() { return 0; } inline QAccessible2Interface *qAccessibleTableCastHelper() { return 0; } +inline QAccessible2Interface *qAccessibleActionCastHelper() { return 0; } +inline QAccessible2Interface *qAccessibleImageCastHelper() { return 0; } #define Q_ACCESSIBLE_OBJECT \ public: \ @@ -95,6 +97,10 @@ inline QAccessible2Interface *qAccessibleTableCastHelper() { return 0; } return qAccessibleValueCastHelper(); \ case QAccessible2::TableInterface: \ return qAccessibleTableCastHelper(); \ + case QAccessible2::ActionInterface: \ + return qAccessibleActionCastHelper(); \ + case QAccessible2::ImageInterface: \ + return qAccessibleImageCastHelper(); \ } \ return 0; \ } \ @@ -208,6 +214,29 @@ public: int *columnSpan, bool *isSelected) = 0; }; +class Q_GUI_EXPORT QAccessibleActionInterface : public QAccessible2Interface +{ +public: + inline QAccessible2Interface *qAccessibleActionCastHelper() { return this; } + + virtual int actionCount() = 0; + virtual void doAction(int actionIndex) = 0; + virtual QString description(int actionIndex) = 0; + virtual QString name(int actionIndex) = 0; + virtual QString localizedName(int actionIndex) = 0; + virtual QStringList keyBindings(int actionIndex) = 0; +}; + +class Q_GUI_EXPORT QAccessibleImageInterface : public QAccessible2Interface +{ +public: + inline QAccessible2Interface *qAccessibleImageCastHelper() { return this; } + + virtual QString imageDescription() = 0; + virtual QSize imageSize() = 0; + virtual QRect imagePosition(QAccessible2::CoordinateType coordType) = 0; +}; + #endif // QT_NO_ACCESSIBILITY QT_END_NAMESPACE diff --git a/src/gui/accessible/qaccessible_mac.mm b/src/gui/accessible/qaccessible_mac.mm index 9575ad8..030c1a9 100644 --- a/src/gui/accessible/qaccessible_mac.mm +++ b/src/gui/accessible/qaccessible_mac.mm @@ -504,11 +504,6 @@ QAElement::QAElement(const QAElement &element) } QAElement::QAElement(HIObjectRef object, int child) - :elementRef( -#ifndef QT_MAC_USE_COCOA - AXUIElementCreateWithHIObjectAndIdentifier(object, child) -#endif -) { #ifndef QT_MAC_USE_COCOA if (object == 0) { |