// Copyright (C) 2016 Alex Trotsenko // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause #include "movieprovider.h" #include #include #include MovieProvider::MovieProvider(QObject *parent) : Provider(parent) { movie = new QMovie(this); movie->setCacheMode(QMovie::CacheAll); movie->setFileName(QLatin1String("animation.gif")); connect(movie, &QMovie::frameChanged, this, &MovieProvider::frameChanged); movie->start(); } void MovieProvider::frameChanged() { QByteArray buf; QDataStream ds(&buf, QIODevice::WriteOnly); ds << movie->currentImage(); emit writeDatagram(0, buf); }