Port to cpp bindings
This commit is contained in:
parent
0f06c83484
commit
70da726f52
20 changed files with 333 additions and 331 deletions
|
@ -1,7 +1,7 @@
|
|||
#ifndef __XMMS_HANDLER_H__
|
||||
#define __XMMS_HANDLER_H__
|
||||
|
||||
#include "xmmsclient_promoe.h"
|
||||
#include <xmmsclient/xmmsclient++.h>
|
||||
|
||||
#include "XmmsQT4.h"
|
||||
|
||||
|
@ -9,64 +9,61 @@
|
|||
#include <QHash>
|
||||
#include <QTimer>
|
||||
|
||||
class XMMSHandler : public QObject, public sigc::trackable {
|
||||
class XMMSHandler : public QObject {
|
||||
Q_OBJECT
|
||||
public:
|
||||
static XMMSHandler *getInstance (void);
|
||||
static XMMSHandler &getInstance ();
|
||||
~XMMSHandler ();
|
||||
|
||||
bool connect (const char *path);
|
||||
|
||||
void playback_playtime (XMMSResultValue<uint> *res);
|
||||
void playback_current_id (XMMSResultValue<uint> *res);
|
||||
void medialib_info (XMMSResultDict *res);
|
||||
void playlist_changed (XMMSResultDict *res);
|
||||
void playback_status (XMMSResultValue<uint> *res);
|
||||
void playlist_list (XMMSResultValueList<uint> *res);
|
||||
void medialib_entry_changed (XMMSResultValue<uint> *res);
|
||||
void medialib_select (XMMSResultDictList *res);
|
||||
void volume_changed (XMMSResult *res);
|
||||
void volume_get (XMMSResultDict *res);
|
||||
bool playback_playtime (const unsigned int &time);
|
||||
bool playlist_list (const Xmms::List< unsigned int > &playlist);
|
||||
bool playback_current_id (const unsigned int &id);
|
||||
bool medialib_info (const Xmms::PropDict &propdict);
|
||||
bool medialib_entry_changed (const unsigned int &id);
|
||||
bool playback_status (const Xmms::Playback::Status &status);
|
||||
bool volume_changed (const Xmms::Dict &levels);
|
||||
bool playlist_changed (const Xmms::Dict &list);
|
||||
|
||||
void requestMediainfo (uint id);
|
||||
void requestPlaylistList (void);
|
||||
void requestPlaylistList ();
|
||||
void requestTrackChange (int pos);
|
||||
void playlistAddURL (const QString& url);
|
||||
void playlistRemove (uint pos);
|
||||
void playlistMove (uint pos, uint newpos);
|
||||
|
||||
void playlistAddURL (QString);
|
||||
void playlistRemove (uint pos) { delete m_xmmsc->playlist_remove (pos); }
|
||||
void playlistMove (uint pos, uint newpos) { delete m_xmmsc->playlist_move (pos, newpos); }
|
||||
/*
|
||||
void medialib_select (XMMSResultDictList *res);
|
||||
|
||||
|
||||
*/
|
||||
/*
|
||||
uint medialibQuery (QString);
|
||||
void medialibQueryAdd (QString q) { delete m_xmmsc->medialib_add_to_playlist (q.toUtf8 ()); }
|
||||
*/
|
||||
void volumeGet (void);
|
||||
|
||||
void volumeSet (uint volume);
|
||||
void volumeGet ();
|
||||
|
||||
//const XMMSClient *getXMMS () { return m_xmmsc; }
|
||||
|
||||
const XMMSClient *getXMMS () { return m_xmmsc; }
|
||||
|
||||
void updateSettings (void) { emit settingsSaved (); }
|
||||
void updateSettings () { emit settingsSaved (); }
|
||||
|
||||
public slots:
|
||||
void setPlaytime (uint pos);
|
||||
void restartPlaytime (void);
|
||||
void restartPlaytime ();
|
||||
|
||||
void playlistClear () { delete m_xmmsc->playlist_clear (); }
|
||||
void play () { delete m_xmmsc->playback_start (); }
|
||||
void stop () { delete m_xmmsc->playback_stop (); }
|
||||
void pause () { delete m_xmmsc->playback_pause (); }
|
||||
void next () {
|
||||
delete m_xmmsc->playlist_set_next_rel (1);
|
||||
delete m_xmmsc->playback_tickle ();
|
||||
}
|
||||
void prev () {
|
||||
delete m_xmmsc->playlist_set_next_rel (-1);
|
||||
delete m_xmmsc->playback_tickle ();
|
||||
}
|
||||
void playlistClear ();
|
||||
void play ();
|
||||
void stop ();
|
||||
void pause ();
|
||||
void next ();
|
||||
void prev ();
|
||||
|
||||
signals:
|
||||
void settingsSaved (void);
|
||||
void playbackStatusChanged (uint status);
|
||||
void settingsSaved ();
|
||||
void playbackStatusChanged (Xmms::Playback::Status status);
|
||||
void playtimeChanged (uint time);
|
||||
void mediainfoChanged (uint, const QHash<QString, QString> &);
|
||||
void currentSong (const QHash<QString, QString> &);
|
||||
|
@ -79,16 +76,23 @@ class XMMSHandler : public QObject, public sigc::trackable {
|
|||
void getVolume (uint);
|
||||
|
||||
private:
|
||||
XMMSResultValue<uint> *m_playtime;
|
||||
Xmms::Client m_client;
|
||||
|
||||
QTimer m_playtime_timer;
|
||||
|
||||
XMMSHandler (void);
|
||||
QHash<QString, QString> PropDictToQHash (XMMSResultDict *res);
|
||||
QHash<QString, QString> DictToQHash (XMMSResultDict *res);
|
||||
XMMSHandler ();
|
||||
void DictToQHash (const std::string &key,
|
||||
const Xmms::Dict::Variant &value,
|
||||
QHash<QString, QString> &hash);
|
||||
void PropDictToQHash (const std::string &key,
|
||||
const Xmms::Dict::Variant &value,
|
||||
const std::string &source,
|
||||
QHash<QString, QString> &hash);
|
||||
|
||||
bool volume_get (const Xmms::Dict &levels);
|
||||
bool volume_error (const std::string &error);
|
||||
|
||||
XmmsQT4 *m_qt4;
|
||||
XMMSClient *m_xmmsc;
|
||||
static XMMSHandler *singleton;
|
||||
int m_currentid;
|
||||
bool m_masterchan;
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue