/*
  This file was generated by the Html5 Application wizard of Qt Creator.
  Html5ApplicationViewer is a convenience class containing mobile device specific
  code such as screen orientation handling.
  It is recommended not to modify this file, since newer versions of Qt Creator
  may offer an updated version of it.
*/

#ifndef WEBTOUCHPHYSICSINTERFACE_H
#define WEBTOUCHPHYSICSINTERFACE_H

#include <QObject>
#include <QPointF>
#include <QRectF>

class QWebFrame;

class WebTouchPhysicsInterface : public QObject
{
    Q_OBJECT

public:
    WebTouchPhysicsInterface(QObject *parent = 0);
    virtual ~WebTouchPhysicsInterface();
    static WebTouchPhysicsInterface* getSingleton();

    virtual bool inMotion() = 0;
    virtual void stop() = 0;
    virtual void start(const QPointF &pressPoint, const QWebFrame *frame) = 0;
    virtual bool move(const QPointF &pressPoint) = 0;
    virtual bool release(const QPointF &pressPoint) = 0;

signals:
    void positionChanged(const QPointF &point, const QPoint &startPressPoint);

public slots:
    virtual void setRange(const QRectF &range) = 0;

private:
    static WebTouchPhysicsInterface* s_instance;
};

#endif // WEBTOUCHPHYSICSINTERFACE_H
