rendered paste body#ifndef RADARPROCESSOR_H
#define RADARPROCESSOR_H
#include <qthread.h>
#include <qstring.h>
#include <qmovie.h>
#include <qcanvas.h>
#include <qobject.h>
/**
@author ringwraith <anthony@subnetters.com>
*/
class radarProcessor : public QObject, public QThread
{
Q_OBJECT
public:
QCanvasPixmapArray *radarMap;
void run();
bool processingDone;
radarProcessor(QObject *parent = 0, const char *name = 0);
~radarProcessor();
public slots:
void scaleFrame();
void doneFrames(int status);
private:
QMovie *radarMovie;
QString basePath;
};
#endif
#include "radarprocessor.h"
#include <qdir.h>
#include <qimage.h>
void radarProcessor::doneFrames(int status) {
if (status == QMovie::EndOfLoop) {
radarMovie->pause();
processingDone = true;
}
}
void radarProcessor::scaleFrame() {
QImage pm;
pm = radarMovie->frameImage();
pm = pm.smoothScale(1024,768);
QCanvasPixmap *pix;
pix= new QCanvasPixmap(pm);
radarMap->setImage(radarMovie->frameNumber(),pix);
}
void radarProcessor::run() {
QDir dir;
basePath = dir.homeDirPath() + "/.kforecaststar/";
radarMovie = new QMovie (basePath+"reports/NatLoop.gif");
radarMovie->connectUpdate(this,SLOT(scaleFrame()));
radarMovie->connectStatus(this,SLOT(doneFrames(int)));
radarMap = new QCanvasPixmapArray("aldalskjdlsajdlj129087012ujejlknlsdnasd");
}
radarProcessor::radarProcessor(QObject *parent , const char *name )
: QObject(parent,name)
{
}
radarProcessor::~radarProcessor()
{
}