/***************************************************************************
- * 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>
-enum SERVICETYPE { FREESOUND = 0, OPENCLIPART = 1 };
-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);
+
+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 slotStartSearch(int page = 0);
void slotShowResults(KJob* job);
void slotParseResults(KJob* job);
- void slotUpdateCurrentSound();
- void slotPlaySound();
- void slotForcePlaySound(bool play);
- void slotPreviewStatusChanged(QProcess::ProcessState state);
- void slotSaveSound();
- void slotOpenUrl(const QString &url);
- void slotChangeService();
- void slotOnline();
- void slotOffline();
- void slotNextPage();
- void slotPreviousPage();
-
+
private:
- QString m_folder;
- QString m_currentPreview;
- QString m_currentUrl;
- int m_currentId;
+ QMap <QString, QString> m_metaInfo;
QProcess *m_previewProcess;
- SERVICETYPE m_service;
- void parseLicense(const QString &);
-
+
signals:
- void addClip(KUrl, const QString &);
+ void addClip(const KUrl &, const QString &);
};