diff options
author | Morten Sorvig <morten.sorvig@nokia.com> | 2011-10-11 11:04:59 +0200 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2011-10-19 03:04:40 +0200 |
commit | 946805f07f9f8270d60df58f07bd8836b76d7258 (patch) | |
tree | c9b6901a509d456d0d71784034640f6f1063b32f /tools/accessibilityinspector/screenreader.h | |
parent | d884f24fe1b86bbd71d62584d5cf1381355efe0d (diff) |
Cocoa: Add initial accessibility implementation.
See qcocoaaccessiblity.h for details.
For now only the first level of the hierarchy is
made accessible.
Also add tools/accessibilityinspector which is an
utility for inspecting and debugging the Qt
accessibility tree.
Change-Id: Iff520bec26b3761feb0c2e00471feb379daaa735
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Diffstat (limited to 'tools/accessibilityinspector/screenreader.h')
-rw-r--r-- | tools/accessibilityinspector/screenreader.h | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/tools/accessibilityinspector/screenreader.h b/tools/accessibilityinspector/screenreader.h new file mode 100644 index 0000000000..b3ba91d284 --- /dev/null +++ b/tools/accessibilityinspector/screenreader.h @@ -0,0 +1,84 @@ +/**************************************************************************** + ** + ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + ** All rights reserved. + ** Contact: Nokia Corporation (qt-info@nokia.com) + ** + ** This file is part of the tools applications of the Qt Toolkit. + ** + ** $QT_BEGIN_LICENSE:LGPL$ + ** GNU Lesser General Public License Usage + ** This file may be used under the terms of the GNU Lesser General Public + ** License version 2.1 as published by the Free Software Foundation and + ** appearing in the file LICENSE.LGPL included in the packaging of this + ** file. Please review the following information to ensure the GNU Lesser + ** General Public License version 2.1 requirements will be met: + ** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. + ** + ** In addition, as a special exception, Nokia gives you certain additional + ** rights. These rights are described in the Nokia Qt LGPL Exception + ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. + ** + ** GNU General Public License Usage + ** Alternatively, this file may be used under the terms of the GNU General + ** Public License version 3.0 as published by the Free Software Foundation + ** and appearing in the file LICENSE.GPL included in the packaging of this + ** file. Please review the following information to ensure the GNU General + ** Public License version 3.0 requirements will be met: + ** http://www.gnu.org/copyleft/gpl.html. + ** + ** Other Usage + ** Alternatively, this file may be used in accordance with the terms and + ** conditions contained in a signed written agreement between you and Nokia. + ** + ** + ** + ** + ** + ** $QT_END_LICENSE$ + ** + ****************************************************************************/ + + +#ifndef SCREENREADER_H +#define SCREENREADER_H + +#include <QObject> +#include <QAccessible> +#include <QAccessibleBridge> + +/* + A Simple screen reader for touch-based user interfaces. + + Requires a text-to-speach backend. Currently implemented on + Mac OS X and using festival on unix. +*/ +class OptionsWidget; +class ScreenReader : public QObject +{ + Q_OBJECT +public: + explicit ScreenReader(QObject *parent = 0); + ~ScreenReader(); + + void setRootObject(QObject *rootObject); + void setOptionsWidget(OptionsWidget *optionsWidget); +public slots: + void touchPoint(const QPoint &point); + void activate(); +protected slots: + void processTouchPoint(); +signals: + void selected(QObject *object); + +protected: + void speak(const QString &text, const QString &voice = QString()); +private: + QAccessibleInterface *m_selectedInterface; + QAccessibleInterface *m_rootInterface; + OptionsWidget *m_optionsWidget; + QPoint m_currentTouchPoint; + bool m_activateCalled; +}; + +#endif // SCREENREADER_H |