Добрый день! Пытаюсь разобраться с QAccesible, а именно мне нужно реализовать поддержку VoiceOver на мак.
навоял, что то но завести не удалось
#ifndef ACCESSIBLE_H
#define ACCESSIBLE_H
#include <QAccessibleWidget>
#include <QRect>
#include <QWidget>
class AccessiblePushButton : public QAccessibleWidget
{
public:
AccessiblePushButton(QWidget *widget, Role role = Client,
const QString & name = QString()) : QAccessibleWidget(widget, role, name){}
int childCount() const{ return 0; }
QRect rect(int child) const
{
return widget()->rect();
}
QString text(Text text, int child) const
{
switch (text)
{
case Value:
return "Hello";
case Name:
return "QPushButton";
case Description:
return "This id pushbutton";
case Help:
return "Help for pushbutton";
default:
break;
}
return QAccessibleWidget::text(text, child);
}
Role role(int child) const{ return QAccessible::PushButton; }
};
#endif
#include <QtGui/QApplication>
#include <QPushButton>
#include <QAccessibleInterface>
#include "WidgetInterface.h"
QAccessibleInterface *clockFactory(const QString &classname, QObject *object)
{
QAccessibleInterface *interface = 0;
if (classname == "QPushButton")
interface = new AccessiblePushButton(static_cast<QWidget *>(object));
return interface;
}
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QAccessible::installFactory(clockFactory);
QPushButton pb("Hello");
pb.show();
return a.exec();
}
не завелось...
примеров в гугле нет практически
если у кого то есть какой рабочий пример под мак - буду сильно благодарен если поделитесь))
заранее спасибо!