**
****************************************************************************/
-#ifndef QMLOSTPLUGIN_H
-#define QMLOSTPLUGIN_H
+#ifndef ETCPROVIDER_H
+#define ETCPROVIDER_H
-#include <QtWidgets/QStylePlugin>
-#include <QtQml/private/qqmldebugserverconnection_p.h>
+#include <qopengl.h>
+#include <QQuickImageProvider>
+#include <QtQuick/QSGTexture>
-QT_BEGIN_NAMESPACE
+class EtcProvider : public QQuickImageProvider
+{
+public:
+ EtcProvider()
+ : QQuickImageProvider(QQuickImageProvider::Texture)
+ {}
-class QQmlDebugServer;
-class QmlOstPluginPrivate;
+ QQuickTextureFactory *requestTexture(const QString &id, QSize *size, const QSize &requestedSize);
+};
-class QmlOstPlugin : public QObject, public QQmlDebugServerConnection
+class EtcTexture : public QSGTexture
{
Q_OBJECT
+ Q_PLUGIN_METADATA(IID "org.qt-project.Qml.QmlOstPlugin")
- Q_DECLARE_PRIVATE(QmlOstPlugin)
- Q_DISABLE_COPY(QmlOstPlugin)
- Q_INTERFACES(QQmlDebugServerConnection)
-
-
public:
- QmlOstPlugin();
- ~QmlOstPlugin();
+ EtcTexture();
+ ~EtcTexture();
- void setServer(QQmlDebugServer *server);
- void setPort(int port, bool bock, const QString &hostaddress);
+ void bind();
- bool isConnected() const;
- void send(const QByteArray &message);
- void disconnect();
- bool waitForMessage();
+ QSize textureSize() const { return m_size; }
+ int textureId() const { return m_texture_id; }
-private Q_SLOTS:
- void readyRead();
+ bool hasAlphaChannel() const { return false; }
+ bool hasMipmaps() const { return false; }
-private:
- QmlOstPluginPrivate *d_ptr;
+ QByteArray m_data;
+ QSize m_size;
+ QSize m_paddedSize;
+ GLuint m_texture_id;
};
-QT_END_NAMESPACE
-
-#endif // QMLOSTPLUGIN_H
+#endif // ETCPROVIDER_H
// flick then press while it is still moving
// flicking == false, moving == true;
- flick(window, QPoint(20,190), QPoint(20, 50), 200);
+ flick(window.data(), QPoint(20,190), QPoint(20, 50), 200);
QVERIFY(flickable->verticalVelocity() > 0.0);
- QVERIFY(flickable->isFlicking());
+ QTRY_VERIFY(flickable->isFlicking());
QVERIFY(flickable->isFlickingVertically());
QVERIFY(!flickable->isFlickingHorizontally());
QVERIFY(flickable->isMoving());