/***************************************************************************
- * Copyright (C) 2008 by Jean-Baptiste Mardelle (jb@kdenlive.org) *
- * Copyright (C) 2011 by Marco Gittler (marco@gitma.de) *
+ * Copyright (C) 2011 by Jean-Baptiste Mardelle (jb@kdenlive.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 *
#define FREESOUND_H
-#include "ui_freesound_ui.h"
+#include "abstractservice.h"
-#include <QDialog>
#include <QProcess>
#include <kio/jobclasses.h>
-
-class FreeSound : public QDialog, public Ui::FreeSound_UI
+class FreeSound : public AbstractService
{
Q_OBJECT
public:
- FreeSound(const QString & folder, QWidget * parent = 0);
+ explicit FreeSound(QListWidget *listWidget, QObject * parent = 0);
~FreeSound();
+ QString getExtension(QListWidgetItem *item);
+ QString getDefaultDownloadName(QListWidgetItem *item);
-private slots:
- void slotStartSearch();
- void slotDataIsHere(KIO::Job *,const QByteArray & data );
- void slotShowResults();
- void slotUpdateCurrentSound();
- void slotPlaySound();
- void slotPreviewStatusChanged(QProcess::ProcessState state);
- void slotSaveSound();
- void slotOpenUrl(const QString &url);
+public slots:
+ void slotStartSearch(const QString& searchText, int page = 0);
+ OnlineItemInfo displayItemDetails(QListWidgetItem *item);
+ bool startItemPreview(QListWidgetItem *item);
+ void stopItemPreview(QListWidgetItem *item);
+private slots:
+ void slotShowResults(KJob* job);
+ void slotParseResults(KJob* job);
+
private:
- QString m_folder;
- QByteArray m_result;
- QVariant m_data;
- QString m_currentPreview;
- QString m_currentUrl;
+ QMap <QString, QString> m_metaInfo;
QProcess *m_previewProcess;
-
+
signals:
- void addClip(KUrl, const QString &);
+ void addClip(const KUrl &, const QString &);
};