1/*
2 * Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies)
3 *
4 *  This library is free software; you can redistribute it and/or
5 *  modify it under the terms of the GNU Lesser General Public
6 *  License as published by the Free Software Foundation; either
7 *  version 2 of the License, or (at your option) any later version.
8 *
9 *  This library is distributed in the hope that it will be useful,
10 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
11 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12 *  Lesser General Public License for more details.
13 *
14 *  You should have received a copy of the GNU Lesser General Public
15 *  License along with this library; if not, write to the Free Software
16 *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17 *
18 */
19
20#ifndef widget_h
21#define widget_h
22
23#include <QImage>
24#include <QPixmap>
25#include <QWidget>
26#include "qwebview.h"
27
28typedef QWebView WebView;
29
30QT_BEGIN_NAMESPACE
31namespace Ui {
32class Widget;
33}
34QT_END_NAMESPACE
35
36class Widget : public QWidget {
37    Q_OBJECT
38    Q_PROPERTY(QPixmap pixmap READ pixmap WRITE setPixmap)
39    Q_PROPERTY(QImage image READ image WRITE setImage)
40
41public:
42    Widget(QWidget* parent = 0);
43    ~Widget();
44    void setPixmap(const QPixmap&);
45    QPixmap pixmap() const;
46    void setImage(const QImage&);
47    QImage image() const;
48
49private slots:
50    void refreshJS();
51
52public slots:
53    void completeTest();
54    void start();
55    void compare(const QVariant& a, const QVariant& b);
56    void imageSlot(const QImage&);
57    void pixmapSlot(const QPixmap&);
58    void randomSlot(const QPixmap&);
59
60signals:
61    void testComplete();
62    void imageSignal(const QImage&);
63    void pixmapSignal(const QPixmap&);
64
65protected:
66    void changeEvent(QEvent* e);
67
68private:
69    Ui::Widget* ui;
70};
71
72#endif // widget_h
73