aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/General/dbuscontrol/dbusadaptor.cpp
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2008-03-18 14:12:04 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2008-03-18 14:12:04 +0000
commit95e35ef7c6517cfce52ecefa29eba972055eeaa6 (patch)
tree1501df613692a2b64dfc6c720c0079e426343fbd /src/plugins/General/dbuscontrol/dbusadaptor.cpp
parentadc59ac93bf343c88eb664fdb4004fbd7823805c (diff)
downloadqmmp-95e35ef7c6517cfce52ecefa29eba972055eeaa6.tar.gz
qmmp-95e35ef7c6517cfce52ecefa29eba972055eeaa6.tar.bz2
qmmp-95e35ef7c6517cfce52ecefa29eba972055eeaa6.zip
dbus plugin: some new functions
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@280 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/General/dbuscontrol/dbusadaptor.cpp')
-rw-r--r--src/plugins/General/dbuscontrol/dbusadaptor.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/plugins/General/dbuscontrol/dbusadaptor.cpp b/src/plugins/General/dbuscontrol/dbusadaptor.cpp
index 7b02caa5d..cdc31a55d 100644
--- a/src/plugins/General/dbuscontrol/dbusadaptor.cpp
+++ b/src/plugins/General/dbuscontrol/dbusadaptor.cpp
@@ -29,6 +29,8 @@ DBUSAdaptor::DBUSAdaptor(Control *ctrl, QObject *parent)
m_control = ctrl;
setAutoRelaySignals(TRUE);
connect(parent, SIGNAL(stateChanged()), SLOT (processState()));
+ connect(parent, SIGNAL(volumeChanged()), SLOT (processVolume()));
+ connect(parent, SIGNAL(timeChanged()), SLOT (processTime()));
}
DBUSAdaptor::~DBUSAdaptor()
@@ -119,6 +121,11 @@ bool DBUSAdaptor::isStopped()
return qobject_cast<DBUSControl *>(parent())->state() == General::Stopped;
}
+int DBUSAdaptor::elapsedTime()
+{
+ return qobject_cast<DBUSControl *>(parent())->elapsedTime();
+}
+
void DBUSAdaptor::play()
{
QMetaObject::invokeMethod(m_control, "play");
@@ -154,6 +161,13 @@ void DBUSAdaptor::exit()
QMetaObject::invokeMethod(m_control, "exit");
}
+void DBUSAdaptor::seek(int time)
+{
+ if ((time < 0) || (time > length()))
+ return;
+ QMetaObject::invokeMethod(m_control, "seek", Q_ARG(int, time));
+}
+
void DBUSAdaptor::processState()
{
uint state = qobject_cast<DBUSControl *>(parent())->state();
@@ -165,3 +179,12 @@ void DBUSAdaptor::processState()
emit paused();
}
+void DBUSAdaptor::processVolume()
+{
+ emit volumeChanged(volume(), balance());
+}
+
+void DBUSAdaptor::processTime()
+{
+ emit timeChanged(elapsedTime());
+}