⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qtestaccessible.h

📁 qt-x11-opensource-src-4.1.4.tar.gz源码
💻 H
字号:
/******************************************************************************** Copyright (C) 1992-2006 Trolltech ASA. All rights reserved.**** This file is part of the tools applications of the Qt Toolkit.**** This file may be used under the terms of the GNU General Public** License version 2.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 GNU** General Public Licensing requirements will be met:** http://www.trolltech.com/products/qt/opensource.html**** If you are unsure which license is appropriate for your use, please** review the following information:** http://www.trolltech.com/products/qt/licensing.html or contact the** sales department at sales@trolltech.com.**** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.******************************************************************************/#ifndef QTESTACCESSIBLE_H#define QTESTACCESSIBLE_H#if 0// inform syncqt#pragma qt_no_master_include#endif#ifndef QT_NO_ACCESSIBILITY#define QTEST_ACCESSIBILITY#define QVERIFY_EVENT(object, child, event) \    QVERIFY(QTestAccessibility::verifyEvent(object, child, (int)event))#include <QtCore/qlist.h>#include <QtGui/qaccessible.h>#include <QtGui/qapplication.h>QT_BEGIN_HEADERclass QObject;struct QTestAccessibilityEvent{    QTestAccessibilityEvent(QObject* o = 0, int c = 0, int e = 0)        : object(o), child(c), event(e) {}    bool operator==(const QTestAccessibilityEvent &o) const    {        return o.object == object && o.child == child && o.event == event;    }    QObject* object;    int child;    int event;};typedef QList<QTestAccessibilityEvent> EventList;class QTestAccessibility{public:    static void initialize()    {        if (!instance()) {            instance() = new QTestAccessibility;            qAddPostRoutine(cleanup);        }    }    static void cleanup()    {        delete instance();        instance() = 0;    }    static void clearEvents() { eventList().clear(); }    static EventList events() { return eventList(); }    static bool verifyEvent(const QTestAccessibilityEvent& ev)    {        if (eventList().isEmpty())            return FALSE;        return eventList().takeFirst() == ev;    }    static bool verifyEvent(QObject *o, int c, int e)    {        return verifyEvent(QTestAccessibilityEvent(o, c, e));    }private:    QTestAccessibility()    {        QAccessible::installUpdateHandler(updateHandler);        QAccessible::installRootObjectHandler(rootObjectHandler);    }    ~QTestAccessibility()    {        QAccessible::installUpdateHandler(0);        QAccessible::installRootObjectHandler(0);    }    static void rootObjectHandler(QObject *object)    {        //    qDebug("rootObjectHandler called %p", object);        if (object) {            QApplication* app = qobject_cast<QApplication*>(object);            if ( !app )                qWarning("QTEST_ACCESSIBILITY: root Object is not a QApplication!");        } else {            qWarning("QTEST_ACCESSIBILITY: root Object called with 0 pointer");        }    }    static void updateHandler(QObject *o, int c, QAccessible::Event e)    {        //    qDebug("updateHandler called: %p %d %d", o, c, (int)e);        eventList().append(QTestAccessibilityEvent(o, c, (int)e));    }    static EventList &eventList()    {        static EventList list;        return list;    }    static QTestAccessibility *&instance()    {        static QTestAccessibility *ta = 0;        return ta;    }};#endifQT_END_HEADER#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -