Compile.
Change-Id: I3c490eb2ce9bd655f4808b232663a530baec5990 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
This commit is contained in:
parent
f99c1b5f1c
commit
06ff72e02d
@ -4,11 +4,6 @@ INCLUDEPATH += $$PWD
|
|||||||
# DEFINES += ACCESSIBILITYINSPECTOR_NO_UITOOLS
|
# DEFINES += ACCESSIBILITYINSPECTOR_NO_UITOOLS
|
||||||
# CONFIG += uitools
|
# CONFIG += uitools
|
||||||
|
|
||||||
mac {
|
|
||||||
# for text-to-speach
|
|
||||||
LIBS += -framework AppKit
|
|
||||||
}
|
|
||||||
|
|
||||||
HEADERS += \
|
HEADERS += \
|
||||||
$$PWD/screenreader.h \
|
$$PWD/screenreader.h \
|
||||||
$$PWD/optionswidget.h \
|
$$PWD/optionswidget.h \
|
||||||
@ -20,6 +15,5 @@ SOURCES += \
|
|||||||
$$PWD/screenreader.cpp \
|
$$PWD/screenreader.cpp \
|
||||||
$$PWD/accessibilityinspector.cpp
|
$$PWD/accessibilityinspector.cpp
|
||||||
|
|
||||||
OBJECTIVE_SOURCES += $$PWD/screenreader_mac.mm
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -116,9 +116,8 @@ void AccessibilitySceneManager::handleUpdate(QObject *object, QAccessible::Event
|
|||||||
|
|
||||||
updateItem(item, interface);
|
updateItem(item, interface);
|
||||||
for (int i = 0; i < interface->childCount(); ++i) {
|
for (int i = 0; i < interface->childCount(); ++i) {
|
||||||
QAccessibleInterface *child = 0;
|
QAccessibleInterface *child = interface->child(i);
|
||||||
int ret = interface->navigate(QAccessible::Child, i + 1, &child);
|
if (child) {
|
||||||
if (ret == 0 && child) {
|
|
||||||
updateItem(m_graphicsItems.value(child->object()), child);
|
updateItem(m_graphicsItems.value(child->object()), child);
|
||||||
delete child;
|
delete child;
|
||||||
}
|
}
|
||||||
@ -143,8 +142,8 @@ void AccessibilitySceneManager::handleUpdate(QObject *object, QAccessible::Event
|
|||||||
qDebug() << "ObjectCreated ScrollingStart" << object;
|
qDebug() << "ObjectCreated ScrollingStart" << object;
|
||||||
QAccessibleInterface *child = 0;
|
QAccessibleInterface *child = 0;
|
||||||
for (int i = 0; i < interface->childCount(); ++i) {
|
for (int i = 0; i < interface->childCount(); ++i) {
|
||||||
int ret = interface->navigate(QAccessible::Child, i + 1, &child);
|
QAccessibleInterface *child = interface->child(i);
|
||||||
if (ret == 0 && child) {
|
if (child) {
|
||||||
m_animatedObjects.insert(child->object());
|
m_animatedObjects.insert(child->object());
|
||||||
delete child;
|
delete child;
|
||||||
}
|
}
|
||||||
@ -243,7 +242,7 @@ void AccessibilitySceneManager::updateItemFlags(QGraphicsRectItem *item, QAccess
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (m_optionsWidget->hideOffscreenItems()) {
|
if (m_optionsWidget->hideOffscreenItems()) {
|
||||||
if (interface->state() & QAccessible::Offscreen) {
|
if (interface->state().offscreen) {
|
||||||
shouldShow = false;
|
shouldShow = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -398,7 +397,7 @@ void AccessibilitySceneManager::addGraphicsItems(AccessibilitySceneManager::Tree
|
|||||||
else
|
else
|
||||||
graphicsItem->setBrush(QColor(Qt::white));
|
graphicsItem->setBrush(QColor(Qt::white));
|
||||||
|
|
||||||
if (item.state & QAccessible::Invisible) {
|
if (item.state.offscreen) {
|
||||||
QPen linePen;
|
QPen linePen;
|
||||||
linePen.setStyle(Qt::DashLine);
|
linePen.setStyle(Qt::DashLine);
|
||||||
graphicsItem->setPen(linePen);
|
graphicsItem->setPen(linePen);
|
||||||
@ -470,7 +469,7 @@ bool AccessibilitySceneManager::isHidden(QAccessibleInterface *interface)
|
|||||||
QAccessibleInterface *current = interface;
|
QAccessibleInterface *current = interface;
|
||||||
while (current) {
|
while (current) {
|
||||||
|
|
||||||
if (current->state() & QAccessible::Invisible) {
|
if (current->state().invisible) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -44,10 +44,6 @@
|
|||||||
#include "accessibilityscenemanager.h"
|
#include "accessibilityscenemanager.h"
|
||||||
#include <QtGui>
|
#include <QtGui>
|
||||||
|
|
||||||
#ifdef Q_OS_MAC
|
|
||||||
#include <private/qt_mac_p.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
ScreenReader::ScreenReader(QObject *parent) :
|
ScreenReader::ScreenReader(QObject *parent) :
|
||||||
QObject(parent)
|
QObject(parent)
|
||||||
{
|
{
|
||||||
@ -128,12 +124,6 @@ void ScreenReader::activate()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef Q_OS_MAC
|
|
||||||
|
|
||||||
// screenreader.mm
|
|
||||||
|
|
||||||
#else
|
|
||||||
|
|
||||||
void ScreenReader::speak(const QString &text, const QString &/*voice*/)
|
void ScreenReader::speak(const QString &text, const QString &/*voice*/)
|
||||||
{
|
{
|
||||||
QFile f("festivalspeachhack");
|
QFile f("festivalspeachhack");
|
||||||
@ -145,5 +135,4 @@ void ScreenReader::speak(const QString &text, const QString &/*voice*/)
|
|||||||
process->start("/usr/bin/festival", QStringList() << "--tts" << "festivalspeachhack");
|
process->start("/usr/bin/festival", QStringList() << "--tts" << "festivalspeachhack");
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
@ -50,8 +50,8 @@
|
|||||||
/*
|
/*
|
||||||
A Simple screen reader for touch-based user interfaces.
|
A Simple screen reader for touch-based user interfaces.
|
||||||
|
|
||||||
Requires a text-to-speach backend. Currently implemented on
|
Requires a text-to-speach backend. Currently implemented
|
||||||
Mac OS X and using festival on unix.
|
using festival on unix.
|
||||||
*/
|
*/
|
||||||
class OptionsWidget;
|
class OptionsWidget;
|
||||||
class ScreenReader : public QObject
|
class ScreenReader : public QObject
|
||||||
|
@ -1,60 +0,0 @@
|
|||||||
/****************************************************************************
|
|
||||||
**
|
|
||||||
** Copyright (C) 2012 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$
|
|
||||||
**
|
|
||||||
****************************************************************************/
|
|
||||||
|
|
||||||
#include "screenreader.h"
|
|
||||||
#include <QtCore>
|
|
||||||
#include <private/qt_mac_p.h>
|
|
||||||
|
|
||||||
void ScreenReader::speak(const QString &text, const QString &voice)
|
|
||||||
{
|
|
||||||
QString voiceBase = "com.apple.speech.synthesis.voice.";
|
|
||||||
if (voice.isEmpty())
|
|
||||||
voiceBase += "Vici";
|
|
||||||
else
|
|
||||||
voiceBase += voice;
|
|
||||||
|
|
||||||
CFStringRef cfVoice = QCFString::toCFStringRef(voiceBase);
|
|
||||||
NSSpeechSynthesizer *synth = [[NSSpeechSynthesizer alloc] initWithVoice:(NSString *)cfVoice];
|
|
||||||
CFStringRef cfText = QCFString::toCFStringRef(text);
|
|
||||||
[synth startSpeakingString: (NSString *)cfText];
|
|
||||||
CFRelease(cfText);
|
|
||||||
CFRelease(cfVoice);
|
|
||||||
}
|
|
Loading…
x
Reference in New Issue
Block a user