diff options
Diffstat (limited to 'src/widgets/accessible')
-rw-r--r-- | src/widgets/accessible/accessible.pri | 2 | ||||
-rw-r--r-- | src/widgets/accessible/complexwidgets.cpp | 24 | ||||
-rw-r--r-- | src/widgets/accessible/complexwidgets_p.h | 1 | ||||
-rw-r--r-- | src/widgets/accessible/itemviews.cpp | 28 | ||||
-rw-r--r-- | src/widgets/accessible/itemviews_p.h | 7 | ||||
-rw-r--r-- | src/widgets/accessible/qaccessiblemenu_p.h | 1 | ||||
-rw-r--r-- | src/widgets/accessible/qaccessiblewidget.cpp | 2 | ||||
-rw-r--r-- | src/widgets/accessible/qaccessiblewidget.h | 1 | ||||
-rw-r--r-- | src/widgets/accessible/qaccessiblewidgetfactory.cpp | 4 | ||||
-rw-r--r-- | src/widgets/accessible/qaccessiblewidgetfactory_p.h | 1 | ||||
-rw-r--r-- | src/widgets/accessible/qaccessiblewidgets.cpp | 2 | ||||
-rw-r--r-- | src/widgets/accessible/qaccessiblewidgets_p.h | 1 | ||||
-rw-r--r-- | src/widgets/accessible/rangecontrols_p.h | 1 | ||||
-rw-r--r-- | src/widgets/accessible/simplewidgets.cpp | 6 | ||||
-rw-r--r-- | src/widgets/accessible/simplewidgets_p.h | 1 | ||||
-rw-r--r-- | src/widgets/accessible/widgets.pro | 2 |
16 files changed, 68 insertions, 16 deletions
diff --git a/src/widgets/accessible/accessible.pri b/src/widgets/accessible/accessible.pri index ac8205b1e3..e63ae28d30 100644 --- a/src/widgets/accessible/accessible.pri +++ b/src/widgets/accessible/accessible.pri @@ -1,6 +1,6 @@ # Qt accessibility module -contains(QT_CONFIG, accessibility) { +qtConfig(accessibility) { HEADERS += \ accessible/qaccessiblewidget.h \ accessible/qaccessiblewidgetfactory_p.h \ diff --git a/src/widgets/accessible/complexwidgets.cpp b/src/widgets/accessible/complexwidgets.cpp index 8faa73b68b..463019dbd0 100644 --- a/src/widgets/accessible/complexwidgets.cpp +++ b/src/widgets/accessible/complexwidgets.cpp @@ -120,19 +120,26 @@ public: { if (!isValid()) return QString(); + QString str; switch (t) { case QAccessible::Name: - return qt_accStripAmp(m_parent->tabText(m_index)); + str = m_parent->accessibleTabName(m_index); + if (str.isEmpty()) + str = qt_accStripAmp(m_parent->tabText(m_index)); + break; case QAccessible::Accelerator: - return qt_accHotKey(m_parent->tabText(m_index)); + str = qt_accHotKey(m_parent->tabText(m_index)); + break; case QAccessible::Description: - return m_parent->tabToolTip(m_index); + str = m_parent->tabToolTip(m_index); + break; case QAccessible::Help: - return m_parent->tabWhatsThis(m_index); + str = m_parent->tabWhatsThis(m_index); + break; default: break; } - return QString(); + return str; } void setText(QAccessible::Text, const QString &) Q_DECL_OVERRIDE {} @@ -237,7 +244,12 @@ int QAccessibleTabBar::childCount() const QString QAccessibleTabBar::text(QAccessible::Text t) const { if (t == QAccessible::Name) { - return qt_accStripAmp(tabBar()->tabText(tabBar()->currentIndex())); + const QTabBar *tBar = tabBar(); + int idx = tBar->currentIndex(); + QString str = tBar->accessibleTabName(idx); + if (str.isEmpty()) + str = qt_accStripAmp(tBar->tabText(idx)); + return str; } else if (t == QAccessible::Accelerator) { return qt_accHotKey(tabBar()->tabText(tabBar()->currentIndex())); } diff --git a/src/widgets/accessible/complexwidgets_p.h b/src/widgets/accessible/complexwidgets_p.h index 44549086ba..d43b06f4a4 100644 --- a/src/widgets/accessible/complexwidgets_p.h +++ b/src/widgets/accessible/complexwidgets_p.h @@ -51,6 +51,7 @@ // We mean it. // +#include <QtWidgets/private/qtwidgetsglobal_p.h> #include <QtCore/qpointer.h> #include <QtWidgets/qaccessiblewidget.h> #include <QtWidgets/qabstractitemview.h> diff --git a/src/widgets/accessible/itemviews.cpp b/src/widgets/accessible/itemviews.cpp index ebe8efc79e..796d13487b 100644 --- a/src/widgets/accessible/itemviews.cpp +++ b/src/widgets/accessible/itemviews.cpp @@ -81,13 +81,22 @@ QAccessibleTable::QAccessibleTable(QWidget *w) { Q_ASSERT(view()); +#ifndef QT_NO_TABLEVIEW if (qobject_cast<const QTableView*>(view())) { m_role = QAccessible::Table; - } else if (qobject_cast<const QTreeView*>(view())) { + } else +#endif +#ifndef QT_NO_TREEVIEW + if (qobject_cast<const QTreeView*>(view())) { m_role = QAccessible::Tree; - } else if (qobject_cast<const QListView*>(view())) { + } else +#endif +#ifndef QT_NO_LISTVIEW + if (qobject_cast<const QListView*>(view())) { m_role = QAccessible::List; - } else { + } else +#endif + { // is this our best guess? m_role = QAccessible::Table; } @@ -512,7 +521,7 @@ QAccessibleInterface *QAccessibleTable::child(int logicalIndex) const if (!iface) { QModelIndex index = view()->model()->index(row, column, view()->rootIndex()); if (Q_UNLIKELY(!index.isValid())) { - qWarning() << "QAccessibleTable::child: Invalid index at: " << row << column; + qWarning("QAccessibleTable::child: Invalid index at: %d %d", row, column); return 0; } iface = new QAccessibleTableCell(view(), index, cellRole()); @@ -664,6 +673,8 @@ void QAccessibleTable::modelChange(QAccessibleTableModelChangeEvent *event) } } +#ifndef QT_NO_TREEVIEW + // TREE VIEW QModelIndex QAccessibleTree::indexFromLogical(int row, int column) const @@ -714,7 +725,6 @@ int QAccessibleTree::childCount() const return (treeView->d_func()->viewItems.count() + hHeader)* view()->model()->columnCount(); } - QAccessibleInterface *QAccessibleTree::child(int logicalIndex) const { if (logicalIndex < 0 || !view()->model() || !view()->model()->columnCount()) @@ -783,7 +793,7 @@ QAccessibleInterface *QAccessibleTree::cellAt(int row, int column) const { QModelIndex index = indexFromLogical(row, column); if (Q_UNLIKELY(!index.isValid())) { - qWarning() << "Requested invalid tree cell: " << row << column; + qWarning("Requested invalid tree cell: %d %d", row, column); return 0; } const QTreeView *treeView = qobject_cast<const QTreeView*>(view()); @@ -836,6 +846,8 @@ bool QAccessibleTree::selectRow(int row) return true; } +#endif // QT_NO_TREEVIEW + // TABLE CELL QAccessibleTableCell::QAccessibleTableCell(QAbstractItemView *view_, const QModelIndex &index_, QAccessible::Role role_) @@ -912,12 +924,14 @@ int QAccessibleTableCell::columnIndex() const int QAccessibleTableCell::rowIndex() const { +#ifndef QT_NO_TREEVIEW if (role() == QAccessible::TreeItem) { const QTreeView *treeView = qobject_cast<const QTreeView*>(view); Q_ASSERT(treeView); int row = treeView->d_func()->viewIndex(m_index); return row; } +#endif return m_index.row(); } @@ -1046,6 +1060,7 @@ QAccessible::State QAccessibleTableCell::state() const if (view->selectionMode() == QAbstractItemView::ExtendedSelection) st.extSelectable = true; } +#ifndef QT_NO_TREEVIEW if (m_role == QAccessible::TreeItem) { const QTreeView *treeView = qobject_cast<const QTreeView*>(view); if (treeView->model()->hasChildren(m_index)) @@ -1053,6 +1068,7 @@ QAccessible::State QAccessibleTableCell::state() const if (treeView->isExpanded(m_index)) st.expanded = true; } +#endif return st; } diff --git a/src/widgets/accessible/itemviews_p.h b/src/widgets/accessible/itemviews_p.h index 95a0032139..5b73444c67 100644 --- a/src/widgets/accessible/itemviews_p.h +++ b/src/widgets/accessible/itemviews_p.h @@ -51,6 +51,7 @@ // We mean it. // +#include <QtWidgets/private/qtwidgetsglobal_p.h> #include "QtCore/qpointer.h" #include <QtGui/qaccessible.h> #include <QtWidgets/qaccessiblewidget.h> @@ -144,6 +145,7 @@ private: QAccessible::Role m_role; }; +#ifndef QT_NO_TREEVIEW class QAccessibleTree :public QAccessibleTable { public: @@ -171,6 +173,7 @@ private: inline int logicalIndex(const QModelIndex &index) const; }; +#endif class QAccessibleTableCell: public QAccessibleInterface, public QAccessibleTableCellInterface, public QAccessibleActionInterface { @@ -220,7 +223,9 @@ private: void unselectCell(); friend class QAccessibleTable; +#ifndef QT_NO_TREEVIEW friend class QAccessibleTree; +#endif }; @@ -254,7 +259,9 @@ private: Qt::Orientation orientation; friend class QAccessibleTable; +#ifndef QT_NO_TREEVIEW friend class QAccessibleTree; +#endif }; // This is the corner button on the top left of a table. diff --git a/src/widgets/accessible/qaccessiblemenu_p.h b/src/widgets/accessible/qaccessiblemenu_p.h index 5a5a4a3222..52afeb5a04 100644 --- a/src/widgets/accessible/qaccessiblemenu_p.h +++ b/src/widgets/accessible/qaccessiblemenu_p.h @@ -51,6 +51,7 @@ // We mean it. // +#include <QtWidgets/private/qtwidgetsglobal_p.h> #include <QtWidgets/qaccessiblewidget.h> #include <QtCore/qpointer.h> diff --git a/src/widgets/accessible/qaccessiblewidget.cpp b/src/widgets/accessible/qaccessiblewidget.cpp index 5096c1ff37..840a990799 100644 --- a/src/widgets/accessible/qaccessiblewidget.cpp +++ b/src/widgets/accessible/qaccessiblewidget.cpp @@ -142,9 +142,11 @@ QString qt_accStripAmp(const QString &text) QString qt_accHotKey(const QString &text) { +#ifndef QT_NO_SHORTCUT int ampIndex = qt_accAmpIndex(text); if (ampIndex != -1) return QKeySequence(Qt::ALT).toString(QKeySequence::NativeText) + text.at(ampIndex + 1); +#endif return QString(); } diff --git a/src/widgets/accessible/qaccessiblewidget.h b/src/widgets/accessible/qaccessiblewidget.h index ebba30b2d5..e09c3ff489 100644 --- a/src/widgets/accessible/qaccessiblewidget.h +++ b/src/widgets/accessible/qaccessiblewidget.h @@ -40,6 +40,7 @@ #ifndef QACCESSIBLEWIDGET_H #define QACCESSIBLEWIDGET_H +#include <QtWidgets/qtwidgetsglobal.h> #include <QtGui/qaccessibleobject.h> QT_BEGIN_NAMESPACE diff --git a/src/widgets/accessible/qaccessiblewidgetfactory.cpp b/src/widgets/accessible/qaccessiblewidgetfactory.cpp index 3bfef49965..dfc8c84836 100644 --- a/src/widgets/accessible/qaccessiblewidgetfactory.cpp +++ b/src/widgets/accessible/qaccessiblewidgetfactory.cpp @@ -139,9 +139,11 @@ QAccessibleInterface *qAccessibleFactory(const QString &classname, QObject *obje } else if (classname == QLatin1String("QMenu")) { iface = new QAccessibleMenu(widget); #endif -#ifndef QT_NO_ITEMVIEWS +#ifndef QT_NO_TREEVIEW } else if (classname == QLatin1String("QTreeView")) { iface = new QAccessibleTree(widget); +#endif // QT_NO_TREEVIEW +#ifndef QT_NO_ITEMVIEWS } else if (classname == QLatin1String("QTableView") || classname == QLatin1String("QListView")) { iface = new QAccessibleTable(widget); // ### This should be cleaned up. We return the parent for the scrollarea to hide it. diff --git a/src/widgets/accessible/qaccessiblewidgetfactory_p.h b/src/widgets/accessible/qaccessiblewidgetfactory_p.h index 2571399060..5da609ddca 100644 --- a/src/widgets/accessible/qaccessiblewidgetfactory_p.h +++ b/src/widgets/accessible/qaccessiblewidgetfactory_p.h @@ -37,6 +37,7 @@ ** ****************************************************************************/ +#include <QtWidgets/private/qtwidgetsglobal_p.h> #include <QtGui/qaccessible.h> #ifndef QACCESSIBLEWIDGETFACTORY_H diff --git a/src/widgets/accessible/qaccessiblewidgets.cpp b/src/widgets/accessible/qaccessiblewidgets.cpp index 95888924fb..b814762168 100644 --- a/src/widgets/accessible/qaccessiblewidgets.cpp +++ b/src/widgets/accessible/qaccessiblewidgets.cpp @@ -830,7 +830,7 @@ QString QAccessibleTextWidget::attributes(int offset, int *startOffset, int *end family = family.replace('=', QLatin1String("\\=")); family = family.replace(';', QLatin1String("\\;")); family = family.replace('\"', QLatin1String("\\\"")); - attrs["font-family"] = QString::fromLatin1("\"%1\"").arg(family); + attrs["font-family"] = QLatin1Char('"') + family + QLatin1Char('"'); } int fontSize = int(charFormatFont.pointSize()); diff --git a/src/widgets/accessible/qaccessiblewidgets_p.h b/src/widgets/accessible/qaccessiblewidgets_p.h index 986f2b2789..052958d4c7 100644 --- a/src/widgets/accessible/qaccessiblewidgets_p.h +++ b/src/widgets/accessible/qaccessiblewidgets_p.h @@ -51,6 +51,7 @@ // We mean it. // +#include <QtWidgets/private/qtwidgetsglobal_p.h> #include <QtWidgets/qaccessiblewidget.h> #ifndef QT_NO_ACCESSIBILITY diff --git a/src/widgets/accessible/rangecontrols_p.h b/src/widgets/accessible/rangecontrols_p.h index cd351fbb3c..28f613462d 100644 --- a/src/widgets/accessible/rangecontrols_p.h +++ b/src/widgets/accessible/rangecontrols_p.h @@ -51,6 +51,7 @@ // We mean it. // +#include <QtWidgets/private/qtwidgetsglobal_p.h> #include <QtWidgets/qaccessiblewidget.h> QT_BEGIN_NAMESPACE diff --git a/src/widgets/accessible/simplewidgets.cpp b/src/widgets/accessible/simplewidgets.cpp index 51e8f72907..e6fda103fb 100644 --- a/src/widgets/accessible/simplewidgets.cpp +++ b/src/widgets/accessible/simplewidgets.cpp @@ -404,8 +404,10 @@ QAccessible::Role QAccessibleDisplay::role() const } else if (qobject_cast<QProgressBar*>(object())) { return QAccessible::ProgressBar; #endif +#ifndef QT_NO_STATUSBAR } else if (qobject_cast<QStatusBar*>(object())) { return QAccessible::StatusBar; +#endif } return QAccessibleWidget::role(); } @@ -428,8 +430,10 @@ QString QAccessibleDisplay::text(QAccessible::Text t) const str = doc.toPlainText(); } #endif +#ifndef QT_NO_SHORTCUT if (label->buddy()) str = qt_accStripAmp(str); +#endif #ifndef QT_NO_LCDNUMBER } else if (qobject_cast<QLCDNumber*>(object())) { QLCDNumber *l = qobject_cast<QLCDNumber*>(object()); @@ -438,8 +442,10 @@ QString QAccessibleDisplay::text(QAccessible::Text t) const else str = QString::number(l->intValue()); #endif +#ifndef QT_NO_STATUSBAR } else if (qobject_cast<QStatusBar*>(object())) { return qobject_cast<QStatusBar*>(object())->currentMessage(); +#endif } } break; diff --git a/src/widgets/accessible/simplewidgets_p.h b/src/widgets/accessible/simplewidgets_p.h index ec9cc893a5..8bd0af8261 100644 --- a/src/widgets/accessible/simplewidgets_p.h +++ b/src/widgets/accessible/simplewidgets_p.h @@ -51,6 +51,7 @@ // We mean it. // +#include <QtWidgets/private/qtwidgetsglobal_p.h> #include <QtCore/qcoreapplication.h> #include <QtWidgets/qaccessiblewidget.h> diff --git a/src/widgets/accessible/widgets.pro b/src/widgets/accessible/widgets.pro index da8607c637..d04d0da3cc 100644 --- a/src/widgets/accessible/widgets.pro +++ b/src/widgets/accessible/widgets.pro @@ -2,7 +2,7 @@ TARGET = qtaccessiblewidgets QT += core-private gui-private widgets-private -QTDIR_build:REQUIRES += "contains(QT_CONFIG, accessibility)" +QTDIR_build:REQUIRES += "qtConfig(accessibility)" SOURCES += main.cpp \ simplewidgets.cpp \ |