mirror of
https://bitbucket.org/smil3y/kde-extraapps.git
synced 2025-02-24 10:52:53 +00:00

KIO::PreviewJob was made for this kind of things, it also does not involve loading the file (which may play a sound even if the widget is not visible), seeking, pausing and then grabbing a QWidget snapshot. the only requirement is for ffmpegthumbs thumbnailer to be installed Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
39 lines
1.2 KiB
C++
39 lines
1.2 KiB
C++
/***************************************************************************
|
|
* Copyright (C) 2012 by Tobias Koening <tokoe@kde.org> *
|
|
* *
|
|
* This program is free software; you can redistribute it and/or modify *
|
|
* it under the terms of the GNU General Public License as published by *
|
|
* the Free Software Foundation; either version 2 of the License, or *
|
|
* (at your option) any later version. *
|
|
***************************************************************************/
|
|
|
|
#ifndef SNAPSHOTTAKER_H
|
|
#define SNAPSHOTTAKER_H
|
|
|
|
#include <KUrl>
|
|
#include <KIO/PreviewJob>
|
|
|
|
#include <QObject>
|
|
#include <QPixmap>
|
|
|
|
class SnapshotTaker : public QObject
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
SnapshotTaker( const KUrl &url, QObject *parent, const QSize &size );
|
|
~SnapshotTaker();
|
|
|
|
Q_SIGNALS:
|
|
void finished( const QImage &image );
|
|
|
|
private Q_SLOTS:
|
|
void slotPreview(const KFileItem& item, const QPixmap &preview);
|
|
void slotFailed(const KFileItem& item);
|
|
|
|
private:
|
|
KIO::PreviewJob *m_job;
|
|
QStringList m_plugins;
|
|
};
|
|
|
|
#endif // SNAPSHOTTAKER_H
|