1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-08-11 16:44:05 +02:00

Add MprisPluginPlayerAdaptor skeleton.

This commit is contained in:
Alejandro Wainzinger
2011-08-09 11:07:46 -07:00
parent c90c0a261d
commit d59dcda052
9 changed files with 761 additions and 170 deletions

View File

@@ -412,12 +412,14 @@ include_directories( . ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR}/.
IF( UNIX AND NOT APPLE )
SET( libSources ${libSources}
infosystem/infoplugins/unix/mprispluginrootadaptor.cpp
infosystem/infoplugins/unix/mprispluginplayeradaptor.cpp
infosystem/infoplugins/unix/mprisplugin.cpp
infosystem/infoplugins/unix/fdonotifyplugin.cpp
infosystem/infoplugins/unix/imageconverter.cpp )
SET( libHeaders ${libHeaders}
infosystem/infoplugins/unix/mprispluginrootadaptor.h
infosystem/infoplugins/unix/mprispluginplayeradaptor.h
infosystem/infoplugins/unix/mprisplugin.h
infosystem/infoplugins/unix/fdonotifyplugin.h )
ENDIF( UNIX AND NOT APPLE )

View File

@@ -27,6 +27,7 @@
#include "mprisplugin.h"
#include "mprispluginrootadaptor.h"
#include "mprispluginplayeradaptor.h"
using namespace Tomahawk::InfoSystem;
@@ -38,6 +39,7 @@ MprisPlugin::MprisPlugin()
m_supportedPushTypes << InfoNowPlaying << InfoNowPaused << InfoNowResumed << InfoNowStopped;
new MprisPluginRootAdaptor( this );
new MprisPluginPlayerAdaptor( this );
QDBusConnection dbus = QDBusConnection::sessionBus();
dbus.registerObject("/org/mpris/MediaPlayer2", this);
dbus.registerService("org.mpris.MediaPlayer2.tomahawk");
@@ -53,54 +55,211 @@ MprisPlugin::~MprisPlugin()
// org.mpris.MediaPlayer2
bool
MprisPlugin::canQuit()
MprisPlugin::canQuit() const
{
qDebug() << Q_FUNC_INFO;
return true;
}
bool
MprisPlugin::canRaise()
{
return false;
}
bool
MprisPlugin::hasTrackList()
MprisPlugin::canRaise() const
{
qDebug() << Q_FUNC_INFO;
return false;
}
QString
MprisPlugin::identity()
bool
MprisPlugin::hasTrackList() const
{
return QString("Tomahawk Music Player");
qDebug() << Q_FUNC_INFO;
return false;
}
QString
MprisPlugin::desktopEntry()
MprisPlugin::identity() const
{
return QString("Tomahawk");
}
QString
MprisPlugin::desktopEntry() const
{
return QString("tomahawk");
}
QStringList
MprisPlugin::supportedUriSchemes()
MprisPlugin::supportedUriSchemes() const
{
return QStringList();
QStringList uriSchemes;
uriSchemes << "tomahawk" << "spotify";
return uriSchemes;
}
QStringList
MprisPlugin::supportedMimeTypes()
MprisPlugin::supportedMimeTypes() const
{
return QStringList();
}
void
MprisPlugin::raise()
MprisPlugin::Raise()
{
}
void
MprisPlugin::quit()
MprisPlugin::Quit()
{
}
// org.mpris.MediaPlayer2.Player
bool
MprisPlugin::canControl() const
{
return false;
}
bool
MprisPlugin::canGoNext() const
{
return false;
}
bool
MprisPlugin::canGoPrevious() const
{
return false;
}
bool
MprisPlugin::canPause() const
{
return false;
}
bool
MprisPlugin::canPlay() const
{
return false;
}
bool
MprisPlugin::canSeek() const
{
return false;
}
QString
MprisPlugin::loopStatus() const
{
return QString("");
}
void
MprisPlugin::setLoopStatus(const QString &value)
{
}
double
MprisPlugin::maximumRate() const
{
return 0.0;
}
QVariantMap
MprisPlugin::metadata() const
{
return QVariantMap();
}
double
MprisPlugin::minimumRate() const
{
return 0.0;
}
QString
MprisPlugin::playbackStatus() const
{
return QString("");
}
qlonglong
MprisPlugin::position() const
{
return 0;
}
double
MprisPlugin::rate() const
{
return 0.0;
}
void
MprisPlugin::setRate( double value )
{
}
bool
MprisPlugin::shuffle() const
{
return false;
}
void
MprisPlugin::setShuffle( bool value )
{
}
double
MprisPlugin::volume() const
{
return 0.0;
}
void
MprisPlugin::Next()
{
}
void
MprisPlugin::OpenUri(const QString &Uri)
{
}
void
MprisPlugin::Pause()
{
}
void
MprisPlugin::Play()
{
}
void
MprisPlugin::PlayPause()
{
}
void
MprisPlugin::Previous()
{
}
void
MprisPlugin::Seek( qlonglong Offset )
{
}
void
MprisPlugin::SetPosition( const QDBusObjectPath &TrackId, qlonglong Position )
{
}
void
MprisPlugin::Stop()
{
}

View File

@@ -23,6 +23,7 @@
#include <QObject>
#include <QVariant>
#include <QtDBus/QtDBus>
namespace Tomahawk {
@@ -36,28 +37,82 @@ public:
MprisPlugin();
virtual ~MprisPlugin();
protected slots:
void getInfo( uint requestId, Tomahawk::InfoSystem::InfoRequestData requestData );
void pushInfo( QString caller, Tomahawk::InfoSystem::InfoType type, QVariant input );
public slots:
// MPRIS DBus Methods
// org.mpris.MediaPlayer2
bool canQuit();
bool canRaise();
bool hasTrackList();
QString identity();
QString desktopEntry();
QStringList supportedUriSchemes();
QStringList supportedMimeTypes();
void raise();
void quit();
Q_PROPERTY(bool CanQuit READ canQuit)
bool canQuit() const;
// org.mpris.MediaPlayer2.player
// TODO: player methods/properties
Q_PROPERTY(bool CanRaise READ canRaise)
bool canRaise() const;
Q_PROPERTY(QString DesktopEntry READ desktopEntry)
QString desktopEntry() const;
Q_PROPERTY(bool HasTrackList READ hasTrackList)
bool hasTrackList() const;
Q_PROPERTY(QString Identity READ identity)
QString identity() const;
Q_PROPERTY(QStringList SupportedMimeTypes READ supportedMimeTypes)
QStringList supportedMimeTypes() const;
Q_PROPERTY(QStringList SupportedUriSchemes READ supportedUriSchemes)
QStringList supportedUriSchemes() const;
// org.mpris.MediaPlayer2.Player
Q_PROPERTY(bool CanControl READ canControl)
bool canControl() const;
Q_PROPERTY(bool CanGoNext READ canGoNext)
bool canGoNext() const;
Q_PROPERTY(bool CanGoPrevious READ canGoPrevious)
bool canGoPrevious() const;
Q_PROPERTY(bool CanPause READ canPause)
bool canPause() const;
Q_PROPERTY(bool CanPlay READ canPlay)
bool canPlay() const;
Q_PROPERTY(bool CanSeek READ canSeek)
bool canSeek() const;
Q_PROPERTY(QString LoopStatus READ loopStatus WRITE setLoopStatus)
QString loopStatus() const;
void setLoopStatus(const QString &value);
Q_PROPERTY(double MaximumRate READ maximumRate)
double maximumRate() const;
Q_PROPERTY(QVariantMap Metadata READ metadata)
QVariantMap metadata() const;
Q_PROPERTY(double MinimumRate READ minimumRate)
double minimumRate() const;
Q_PROPERTY(QString PlaybackStatus READ playbackStatus)
QString playbackStatus() const;
Q_PROPERTY(qlonglong Position READ position)
qlonglong position() const;
Q_PROPERTY(double Rate READ rate WRITE setRate)
double rate() const;
void setRate(double value);
Q_PROPERTY(bool Shuffle READ shuffle WRITE setShuffle)
bool shuffle() const;
void setShuffle(bool value);
Q_PROPERTY(double Volume READ volume)
double volume() const;
public slots:
void namChangedSlot( QNetworkAccessManager* /*nam*/ ) {} // unused
virtual void notInCacheSlot( uint requestId, const Tomahawk::InfoSystem::InfoCriteriaHash criteria, Tomahawk::InfoSystem::InfoRequestData requestData )
@@ -67,6 +122,26 @@ public slots:
Q_UNUSED( requestData );
}
// org.mpris.MediaPlayer2
void Raise();
void Quit();
// org.mpris.MediaPlayer2.Player
void Next();
void OpenUri(const QString &Uri);
void Pause();
void Play();
void PlayPause();
void Previous();
void Seek(qlonglong Offset);
void SetPosition(const QDBusObjectPath &TrackId, qlonglong Position);
void Stop();
protected slots:
void getInfo( uint requestId, Tomahawk::InfoSystem::InfoRequestData requestData );
void pushInfo( QString caller, Tomahawk::InfoSystem::InfoType type, QVariant input );
private:
// Get Info

View File

@@ -0,0 +1,197 @@
/*
* This file was generated by qdbusxml2cpp version 0.7
* Command line was: qdbusxml2cpp -a mprispluginplayeradaptor -c MprisPluginPlayerAdaptor mprispluginplayeradaptor.xml
*
* qdbusxml2cpp is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
*
* This is an auto-generated file.
* Do not edit! All changes made to it will be lost.
*/
#include "mprispluginplayeradaptor.h"
#include <QtCore/QMetaObject>
#include <QtCore/QByteArray>
#include <QtCore/QList>
#include <QtCore/QMap>
#include <QtCore/QString>
#include <QtCore/QStringList>
#include <QtCore/QVariant>
/*
* Implementation of adaptor class MprisPluginPlayerAdaptor
*/
MprisPluginPlayerAdaptor::MprisPluginPlayerAdaptor(QObject *parent)
: QDBusAbstractAdaptor(parent)
{
// constructor
setAutoRelaySignals(true);
}
MprisPluginPlayerAdaptor::~MprisPluginPlayerAdaptor()
{
// destructor
}
bool MprisPluginPlayerAdaptor::canControl() const
{
// get the value of property CanControl
return qvariant_cast< bool >(parent()->property("CanControl"));
}
bool MprisPluginPlayerAdaptor::canGoNext() const
{
// get the value of property CanGoNext
return qvariant_cast< bool >(parent()->property("CanGoNext"));
}
bool MprisPluginPlayerAdaptor::canGoPrevious() const
{
// get the value of property CanGoPrevious
return qvariant_cast< bool >(parent()->property("CanGoPrevious"));
}
bool MprisPluginPlayerAdaptor::canPause() const
{
// get the value of property CanPause
return qvariant_cast< bool >(parent()->property("CanPause"));
}
bool MprisPluginPlayerAdaptor::canPlay() const
{
// get the value of property CanPlay
return qvariant_cast< bool >(parent()->property("CanPlay"));
}
bool MprisPluginPlayerAdaptor::canSeek() const
{
// get the value of property CanSeek
return qvariant_cast< bool >(parent()->property("CanSeek"));
}
QString MprisPluginPlayerAdaptor::loopStatus() const
{
// get the value of property LoopStatus
return qvariant_cast< QString >(parent()->property("LoopStatus"));
}
void MprisPluginPlayerAdaptor::setLoopStatus(const QString &value)
{
// set the value of property LoopStatus
parent()->setProperty("LoopStatus", qVariantFromValue(value));
}
double MprisPluginPlayerAdaptor::maximumRate() const
{
// get the value of property MaximumRate
return qvariant_cast< double >(parent()->property("MaximumRate"));
}
QVariantMap MprisPluginPlayerAdaptor::metadata() const
{
// get the value of property Metadata
return qvariant_cast< QVariantMap >(parent()->property("Metadata"));
}
double MprisPluginPlayerAdaptor::minimumRate() const
{
// get the value of property MinimumRate
return qvariant_cast< double >(parent()->property("MinimumRate"));
}
QString MprisPluginPlayerAdaptor::playbackStatus() const
{
// get the value of property PlaybackStatus
return qvariant_cast< QString >(parent()->property("PlaybackStatus"));
}
qlonglong MprisPluginPlayerAdaptor::position() const
{
// get the value of property Position
return qvariant_cast< qlonglong >(parent()->property("Position"));
}
double MprisPluginPlayerAdaptor::rate() const
{
// get the value of property Rate
return qvariant_cast< double >(parent()->property("Rate"));
}
void MprisPluginPlayerAdaptor::setRate(double value)
{
// set the value of property Rate
parent()->setProperty("Rate", qVariantFromValue(value));
}
bool MprisPluginPlayerAdaptor::shuffle() const
{
// get the value of property Shuffle
return qvariant_cast< bool >(parent()->property("Shuffle"));
}
void MprisPluginPlayerAdaptor::setShuffle(bool value)
{
// set the value of property Shuffle
parent()->setProperty("Shuffle", qVariantFromValue(value));
}
double MprisPluginPlayerAdaptor::volume() const
{
// get the value of property Volume
return qvariant_cast< double >(parent()->property("Volume"));
}
void MprisPluginPlayerAdaptor::Next()
{
// handle method call org.mpris.MediaPlayer2.Player.Next
QMetaObject::invokeMethod(parent(), "Next");
}
void MprisPluginPlayerAdaptor::OpenUri(const QString &Uri)
{
// handle method call org.mpris.MediaPlayer2.Player.OpenUri
QMetaObject::invokeMethod(parent(), "OpenUri", Q_ARG(QString, Uri));
}
void MprisPluginPlayerAdaptor::Pause()
{
// handle method call org.mpris.MediaPlayer2.Player.Pause
QMetaObject::invokeMethod(parent(), "Pause");
}
void MprisPluginPlayerAdaptor::Play()
{
// handle method call org.mpris.MediaPlayer2.Player.Play
QMetaObject::invokeMethod(parent(), "Play");
}
void MprisPluginPlayerAdaptor::PlayPause()
{
// handle method call org.mpris.MediaPlayer2.Player.PlayPause
QMetaObject::invokeMethod(parent(), "PlayPause");
}
void MprisPluginPlayerAdaptor::Previous()
{
// handle method call org.mpris.MediaPlayer2.Player.Previous
QMetaObject::invokeMethod(parent(), "Previous");
}
void MprisPluginPlayerAdaptor::Seek(qlonglong Offset)
{
// handle method call org.mpris.MediaPlayer2.Player.Seek
QMetaObject::invokeMethod(parent(), "Seek", Q_ARG(qlonglong, Offset));
}
void MprisPluginPlayerAdaptor::SetPosition(const QDBusObjectPath &TrackId, qlonglong Position)
{
// handle method call org.mpris.MediaPlayer2.Player.SetPosition
QMetaObject::invokeMethod(parent(), "SetPosition", Q_ARG(QDBusObjectPath, TrackId), Q_ARG(qlonglong, Position));
}
void MprisPluginPlayerAdaptor::Stop()
{
// handle method call org.mpris.MediaPlayer2.Player.Stop
QMetaObject::invokeMethod(parent(), "Stop");
}

View File

@@ -0,0 +1,138 @@
/*
* This file was generated by qdbusxml2cpp version 0.7
* Command line was: qdbusxml2cpp -a mprispluginplayeradaptor -c MprisPluginPlayerAdaptor mprispluginplayeradaptor.xml
*
* qdbusxml2cpp is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
*
* This is an auto-generated file.
* This file may have been hand-edited. Look for HAND-EDIT comments
* before re-generating it.
*/
#ifndef MPRISPLUGINPLAYERADAPTOR_H_1312900500
#define MPRISPLUGINPLAYERADAPTOR_H_1312900500
#include <QtCore/QObject>
#include <QtDBus/QtDBus>
class QByteArray;
template<class T> class QList;
template<class Key, class Value> class QMap;
class QString;
class QStringList;
class QVariant;
/*
* Adaptor class for interface org.mpris.MediaPlayer2.Player
*/
class MprisPluginPlayerAdaptor: public QDBusAbstractAdaptor
{
Q_OBJECT
Q_CLASSINFO("D-Bus Interface", "org.mpris.MediaPlayer2.Player")
Q_CLASSINFO("D-Bus Introspection", ""
" <interface name=\"org.mpris.MediaPlayer2.Player\">\n"
" <method name=\"Next\"/>\n"
" <method name=\"Previous\"/>\n"
" <method name=\"Pause\"/>\n"
" <method name=\"PlayPause\"/>\n"
" <method name=\"Stop\"/>\n"
" <method name=\"Play\"/>\n"
" <method name=\"Seek\">\n"
" <arg type=\"x\" name=\"Offset\"/>\n"
" </method>\n"
" <method name=\"SetPosition\">\n"
" <arg type=\"o\" name=\"TrackId\"/>\n"
" <arg type=\"x\" name=\"Position\"/>\n"
" </method>\n"
" <method name=\"OpenUri\">\n"
" <arg type=\"s\" name=\"Uri\"/>\n"
" </method>\n"
" <signal name=\"Seeked\">\n"
" <arg type=\"x\" name=\"Position\"/>\n"
" </signal>\n"
" <property access=\"read\" type=\"s\" name=\"PlaybackStatus\"/>\n"
" <property access=\"readwrite\" type=\"s\" name=\"LoopStatus\"/>\n"
" <property access=\"readwrite\" type=\"d\" name=\"Rate\"/>\n"
" <property access=\"readwrite\" type=\"b\" name=\"Shuffle\"/>\n"
" <property access=\"read\" type=\"a{sv}\" name=\"Metadata\">\n"
" <annotation value=\"QVariantMap\" name=\"com.trolltech.QtDBus.QtTypeName\"/>\n"
" </property>\n"
" <property access=\"read\" type=\"d\" name=\"Volume\"/>\n"
" <property access=\"read\" type=\"x\" name=\"Position\"/>\n"
" <property access=\"read\" type=\"d\" name=\"MinimumRate\"/>\n"
" <property access=\"read\" type=\"d\" name=\"MaximumRate\"/>\n"
" <property access=\"read\" type=\"b\" name=\"CanGoNext\"/>\n"
" <property access=\"read\" type=\"b\" name=\"CanGoPrevious\"/>\n"
" <property access=\"read\" type=\"b\" name=\"CanPlay\"/>\n"
" <property access=\"read\" type=\"b\" name=\"CanPause\"/>\n"
" <property access=\"read\" type=\"b\" name=\"CanSeek\"/>\n"
" <property access=\"read\" type=\"b\" name=\"CanControl\"/>\n"
" </interface>\n"
"")
public:
MprisPluginPlayerAdaptor(QObject *parent);
virtual ~MprisPluginPlayerAdaptor();
public: // PROPERTIES
Q_PROPERTY(bool CanControl READ canControl)
bool canControl() const;
Q_PROPERTY(bool CanGoNext READ canGoNext)
bool canGoNext() const;
Q_PROPERTY(bool CanGoPrevious READ canGoPrevious)
bool canGoPrevious() const;
Q_PROPERTY(bool CanPause READ canPause)
bool canPause() const;
Q_PROPERTY(bool CanPlay READ canPlay)
bool canPlay() const;
Q_PROPERTY(bool CanSeek READ canSeek)
bool canSeek() const;
Q_PROPERTY(QString LoopStatus READ loopStatus WRITE setLoopStatus)
QString loopStatus() const;
void setLoopStatus(const QString &value);
Q_PROPERTY(double MaximumRate READ maximumRate)
double maximumRate() const;
Q_PROPERTY(QVariantMap Metadata READ metadata)
QVariantMap metadata() const;
Q_PROPERTY(double MinimumRate READ minimumRate)
double minimumRate() const;
Q_PROPERTY(QString PlaybackStatus READ playbackStatus)
QString playbackStatus() const;
Q_PROPERTY(qlonglong Position READ position)
qlonglong position() const;
Q_PROPERTY(double Rate READ rate WRITE setRate)
double rate() const;
void setRate(double value);
Q_PROPERTY(bool Shuffle READ shuffle WRITE setShuffle)
bool shuffle() const;
void setShuffle(bool value);
Q_PROPERTY(double Volume READ volume)
double volume() const;
public Q_SLOTS: // METHODS
void Next();
void OpenUri(const QString &Uri);
void Pause();
void Play();
void PlayPause();
void Previous();
void Seek(qlonglong Offset);
void SetPosition(const QDBusObjectPath &TrackId, qlonglong Position);
void Stop();
Q_SIGNALS: // SIGNALS
void Seeked(qlonglong Position);
};
#endif

View File

@@ -0,0 +1,41 @@
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
<node>
<interface name="org.mpris.MediaPlayer2.Player">
<method name="Next"/>
<method name="Previous"/>
<method name="Pause"/>
<method name="PlayPause"/>
<method name="Stop"/>
<method name="Play"/>
<method name="Seek">
<arg name="Offset" type="x"/>
</method>
<method name="SetPosition">
<arg name="TrackId" type="o"/>
<arg name="Position" type="x"/>
</method>
<method name="OpenUri">
<arg name="Uri" type="s"/>
</method>
<signal name="Seeked">
<arg name="Position" type="x"/>
</signal>
<property name="PlaybackStatus" type="s" access="read"/>
<property name="LoopStatus" type="s" access="readwrite"/>
<property name="Rate" type="d" access="readwrite"/>
<property name="Shuffle" type="b" access="readwrite"/>
<property name="Metadata" type="a{sv}" access="read">
<annotation name="com.trolltech.QtDBus.QtTypeName" value="QVariantMap"/>
</property>
<property name="Volume" type="d" access="read"/>
<property name="Position" type="x" access="read"/>
<property name="MinimumRate" type="d" access="read"/>
<property name="MaximumRate" type="d" access="read"/>
<property name="CanGoNext" type="b" access="read"/>
<property name="CanGoPrevious" type="b" access="read"/>
<property name="CanPlay" type="b" access="read"/>
<property name="CanPause" type="b" access="read"/>
<property name="CanSeek" type="b" access="read"/>
<property name="CanControl" type="b" access="read"/>
</interface>
</node>

View File

@@ -1,130 +1,92 @@
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
/*
* This file was generated by qdbusxml2cpp version 0.7
* Command line was: qdbusxml2cpp -a mprispluginrootadaptor -c MprisPluginRootAdaptor mprispluginrootadaptor.xml
*
* Copyright 2010-2011, Christian Muehlhaeuser <muesli@tomahawk-player.org>
* qdbusxml2cpp is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
*
* Tomahawk 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 3 of the License, or
* (at your option) any later version.
*
* Tomahawk is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Tomahawk. If not, see <http://www.gnu.org/licenses/>.
* This is an auto-generated file.
* Do not edit! All changes made to it will be lost.
*/
#include "mprispluginrootadaptor.h"
#include <QtCore/QMetaObject>
#include <QtCore/QByteArray>
#include <QtCore/QList>
#include <QtCore/QMap>
#include <QtCore/QString>
#include <QtCore/QStringList>
#include <QtCore/QVariant>
MprisPluginRootAdaptor::MprisPluginRootAdaptor( QObject *parent )
: QDBusAbstractAdaptor( parent )
/*
* Implementation of adaptor class MprisPluginRootAdaptor
*/
MprisPluginRootAdaptor::MprisPluginRootAdaptor(QObject *parent)
: QDBusAbstractAdaptor(parent)
{
// constructor
setAutoRelaySignals(true);
}
MprisPluginRootAdaptor::~MprisPluginRootAdaptor()
{
// destructor
}
// Properties
bool MprisPluginRootAdaptor::canQuit() const
{
// get the value of property CanQuit
return qvariant_cast< bool >(parent()->property("CanQuit"));
}
bool
MprisPluginRootAdaptor::canQuit()
bool MprisPluginRootAdaptor::canRaise() const
{
qDebug() << Q_FUNC_INFO;
bool retVal;
QMetaObject::invokeMethod(parent()
, "canQuit"
, Qt::DirectConnection
, Q_RETURN_ARG( bool, retVal ) );
return retVal;
// get the value of property CanRaise
bool ret = qvariant_cast< bool >(parent()->property("CanRaise"));
qDebug() << "ret: " << ret;
return ret;
}
bool
MprisPluginRootAdaptor::canRaise()
QString MprisPluginRootAdaptor::desktopEntry() const
{
qDebug() << Q_FUNC_INFO;
bool retVal;
QMetaObject::invokeMethod(parent()
, "canRaise"
, Qt::DirectConnection
, Q_RETURN_ARG( bool, retVal ) );
return retVal;
// get the value of property DesktopEntry
return qvariant_cast< QString >(parent()->property("DesktopEntry"));
}
bool
MprisPluginRootAdaptor::hasTrackList()
bool MprisPluginRootAdaptor::hasTrackList() const
{
qDebug() << Q_FUNC_INFO;
bool retVal;
QMetaObject::invokeMethod(parent()
, "hasTrackList"
, Qt::DirectConnection
, Q_RETURN_ARG( bool, retVal ) );
return retVal;
// get the value of property HasTrackList
return qvariant_cast< bool >(parent()->property("HasTrackList"));
}
QString
MprisPluginRootAdaptor::identity()
QString MprisPluginRootAdaptor::identity() const
{
qDebug() << Q_FUNC_INFO;
QString retVal;
QMetaObject::invokeMethod(parent()
, "identity"
, Qt::DirectConnection
, Q_RETURN_ARG( QString, retVal ) );
return retVal;
// get the value of property Identity
return qvariant_cast< QString >(parent()->property("Identity"));
}
QString
MprisPluginRootAdaptor::desktopEntry()
QStringList MprisPluginRootAdaptor::supportedMimeTypes() const
{
qDebug() << Q_FUNC_INFO;
QString retVal;
QMetaObject::invokeMethod(parent()
, "desktopEntry"
, Qt::DirectConnection
, Q_RETURN_ARG( QString, retVal ) );
return retVal;
// get the value of property SupportedMimeTypes
return qvariant_cast< QStringList >(parent()->property("SupportedMimeTypes"));
}
QStringList
MprisPluginRootAdaptor::supportedUriSchemes()
QStringList MprisPluginRootAdaptor::supportedUriSchemes() const
{
qDebug() << Q_FUNC_INFO;
QStringList retVal;
QMetaObject::invokeMethod(parent()
, "supportedUriSchemes"
, Qt::DirectConnection
, Q_RETURN_ARG( QStringList, retVal ) );
return retVal;
// get the value of property SupportedUriSchemes
return qvariant_cast< QStringList >(parent()->property("SupportedUriSchemes"));
}
QStringList
MprisPluginRootAdaptor::supportedMimeTypes()
void MprisPluginRootAdaptor::Quit()
{
qDebug() << Q_FUNC_INFO;
QStringList retVal;
QMetaObject::invokeMethod(parent()
, "supportedMimeTypes"
, Qt::DirectConnection
, Q_RETURN_ARG( QStringList, retVal ) );
return retVal;
// handle method call org.mpris.MediaPlayer2.Quit
QMetaObject::invokeMethod(parent(), "Quit");
}
// Methods
void
MprisPluginRootAdaptor::Raise()
void MprisPluginRootAdaptor::Raise()
{
qDebug() << Q_FUNC_INFO;
QMetaObject::invokeMethod(parent(), "raise");
// handle method call org.mpris.MediaPlayer2.Raise
QMetaObject::invokeMethod(parent(), "Raise");
}
void
MprisPluginRootAdaptor::Quit()
{
qDebug() << Q_FUNC_INFO;
QMetaObject::invokeMethod(parent(), "quit");
}

View File

@@ -1,73 +1,76 @@
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
/*
* This file was generated by qdbusxml2cpp version 0.7
* Command line was: qdbusxml2cpp -a mprispluginrootadaptor -c MprisPluginRootAdaptor mprispluginrootadaptor.xml
*
* Copyright 2010-2011, Christian Muehlhaeuser <muesli@tomahawk-player.org>
* qdbusxml2cpp is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
*
* Tomahawk 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 3 of the License, or
* (at your option) any later version.
*
* Tomahawk is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Tomahawk. If not, see <http://www.gnu.org/licenses/>.
* This is an auto-generated file.
* This file may have been hand-edited. Look for HAND-EDIT comments
* before re-generating it.
*/
#ifndef MPRIS_PLUGIN_ROOT_ADAPTOR
#define MPRIS_PLUGIN_ROOT_ADAPTOR
#ifndef MPRISPLUGINROOTADAPTOR_H_1312900930
#define MPRISPLUGINROOTADAPTOR_H_1312900930
#include <QtCore/QObject>
#include <QtDBus/QtDBus>
class QByteArray;
template<class T> class QList;
template<class Key, class Value> class QMap;
class QString;
class QStringList;
class QVariant;
#include <QStringList>
/*
* Adaptor class for interface org.mpris.MediaPlayer2
*/
class MprisPluginRootAdaptor: public QDBusAbstractAdaptor
{
Q_OBJECT
Q_CLASSINFO("D-Bus Interface", "org.mpris.MediaPlayer2")
Q_CLASSINFO("D-Bus Introspection", ""
" <interface name=\"org.mpris.MediaPlayer2\">\n"
" <method name=\"Raise\"/>\n"
" <method name=\"Quit\"/>\n"
" <property name=\"CanQuit\" type=\"b\" access=\"read\"/>\n"
" <property name=\"CanRaise\" type=\"b\" access=\"read\"/>\n"
" <property name=\"HasTrackList\" type=\"b\" access=\"read\"/>\n"
" <property name=\"Identity\" type=\"s\" access=\"read\"/>\n"
" <property name=\"DesktopEntry\" type=\"s\" access=\"read\"/>\n"
" <property name=\"SupportedUriSchemes\" type=\"as\" access=\"read\"/>\n"
" <property name=\"SupportedMimeTypes\" type=\"as\" access=\"read\"/>\n"
" </interface>\n"
" <interface name=\"org.mpris.MediaPlayer2\">\n"
" <method name=\"Raise\"/>\n"
" <method name=\"Quit\"/>\n"
" <property access=\"read\" type=\"b\" name=\"CanQuit\"/>\n"
" <property access=\"read\" type=\"b\" name=\"CanRaise\"/>\n"
" <property access=\"read\" type=\"b\" name=\"HasTrackList\"/>\n"
" <property access=\"read\" type=\"s\" name=\"Identity\"/>\n"
" <property access=\"read\" type=\"s\" name=\"DesktopEntry\"/>\n"
" <property access=\"read\" type=\"as\" name=\"SupportedUriSchemes\"/>\n"
" <property access=\"read\" type=\"as\" name=\"SupportedMimeTypes\"/>\n"
" </interface>\n"
"")
Q_PROPERTY( bool CanQuit READ canQuit )
Q_PROPERTY( bool CanRaise READ canRaise )
Q_PROPERTY( bool HasTrackList READ hasTrackList )
Q_PROPERTY( QString Identity READ identity )
Q_PROPERTY( QString DesktopEntry READ desktopEntry )
Q_PROPERTY( QStringList SupportedUriSchemes READ supportedUriSchemes )
Q_PROPERTY( QStringList SupportedMimeTypes READ supportedMimeTypes )
public:
MprisPluginRootAdaptor( QObject *parent );
MprisPluginRootAdaptor(QObject *parent);
virtual ~MprisPluginRootAdaptor();
bool canQuit();
bool canRaise();
bool hasTrackList();
QString identity();
QString desktopEntry();
QStringList supportedUriSchemes();
QStringList supportedMimeTypes();
public: // PROPERTIES
Q_PROPERTY(bool CanQuit READ canQuit)
bool canQuit() const;
Q_PROPERTY(bool CanRaise READ canRaise)
bool canRaise() const;
public slots:
Q_NOREPLY void Raise();
Q_NOREPLY void Quit();
Q_PROPERTY(QString DesktopEntry READ desktopEntry)
QString desktopEntry() const;
Q_PROPERTY(bool HasTrackList READ hasTrackList)
bool hasTrackList() const;
Q_PROPERTY(QString Identity READ identity)
QString identity() const;
Q_PROPERTY(QStringList SupportedMimeTypes READ supportedMimeTypes)
QStringList supportedMimeTypes() const;
Q_PROPERTY(QStringList SupportedUriSchemes READ supportedUriSchemes)
QStringList supportedUriSchemes() const;
public Q_SLOTS: // METHODS
void Quit();
void Raise();
Q_SIGNALS: // SIGNALS
};
#endif

View File

@@ -0,0 +1,14 @@
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
<node>
<interface name="org.mpris.MediaPlayer2">
<method name="Raise"/>
<method name="Quit"/>
<property name="CanQuit" type="b" access="read"/>
<property name="CanRaise" type="b" access="read"/>
<property name="HasTrackList" type="b" access="read"/>
<property name="Identity" type="s" access="read"/>
<property name="DesktopEntry" type="s" access="read"/>
<property name="SupportedUriSchemes" type="as" access="read"/>
<property name="SupportedMimeTypes" type="as" access="read"/>
</interface>
</node>