From d59dcda0520db358dade0e3487018a1da8d27f80 Mon Sep 17 00:00:00 2001 From: Alejandro Wainzinger Date: Tue, 9 Aug 2011 11:07:46 -0700 Subject: [PATCH] Add MprisPluginPlayerAdaptor skeleton. --- src/libtomahawk/CMakeLists.txt | 2 + .../infoplugins/unix/mprisplugin.cpp | 183 ++++++++++++++-- .../infosystem/infoplugins/unix/mprisplugin.h | 107 ++++++++-- .../unix/mprispluginplayeradaptor.cpp | 197 ++++++++++++++++++ .../unix/mprispluginplayeradaptor.h | 138 ++++++++++++ .../unix/mprispluginplayeradaptor.xml | 41 ++++ .../unix/mprispluginrootadaptor.cpp | 144 +++++-------- .../infoplugins/unix/mprispluginrootadaptor.h | 105 +++++----- .../unix/mprispluginrootadaptor.xml | 14 ++ 9 files changed, 761 insertions(+), 170 deletions(-) create mode 100644 src/libtomahawk/infosystem/infoplugins/unix/mprispluginplayeradaptor.cpp create mode 100644 src/libtomahawk/infosystem/infoplugins/unix/mprispluginplayeradaptor.h create mode 100644 src/libtomahawk/infosystem/infoplugins/unix/mprispluginplayeradaptor.xml create mode 100644 src/libtomahawk/infosystem/infoplugins/unix/mprispluginrootadaptor.xml diff --git a/src/libtomahawk/CMakeLists.txt b/src/libtomahawk/CMakeLists.txt index 3c42d2c06..702c51ef0 100644 --- a/src/libtomahawk/CMakeLists.txt +++ b/src/libtomahawk/CMakeLists.txt @@ -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 ) diff --git a/src/libtomahawk/infosystem/infoplugins/unix/mprisplugin.cpp b/src/libtomahawk/infosystem/infoplugins/unix/mprisplugin.cpp index 52903c614..3a0039b15 100644 --- a/src/libtomahawk/infosystem/infoplugins/unix/mprisplugin.cpp +++ b/src/libtomahawk/infosystem/infoplugins/unix/mprisplugin.cpp @@ -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; + return false; } bool -MprisPlugin::canRaise() +MprisPlugin::canRaise() const { + qDebug() << Q_FUNC_INFO; return false; } bool -MprisPlugin::hasTrackList() +MprisPlugin::hasTrackList() const { + qDebug() << Q_FUNC_INFO; return false; } + QString -MprisPlugin::identity() +MprisPlugin::identity() const { - return QString("Tomahawk Music Player"); + return QString("Tomahawk"); } QString -MprisPlugin::desktopEntry() +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() { } diff --git a/src/libtomahawk/infosystem/infoplugins/unix/mprisplugin.h b/src/libtomahawk/infosystem/infoplugins/unix/mprisplugin.h index 7d2885271..3168856d2 100644 --- a/src/libtomahawk/infosystem/infoplugins/unix/mprisplugin.h +++ b/src/libtomahawk/infosystem/infoplugins/unix/mprisplugin.h @@ -23,6 +23,7 @@ #include #include +#include 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(); + + Q_PROPERTY(bool CanQuit READ canQuit) + bool canQuit() const; - void raise(); - void quit(); + Q_PROPERTY(bool CanRaise READ canRaise) + bool canRaise() const; - // org.mpris.MediaPlayer2.player - // TODO: player methods/properties + 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 diff --git a/src/libtomahawk/infosystem/infoplugins/unix/mprispluginplayeradaptor.cpp b/src/libtomahawk/infosystem/infoplugins/unix/mprispluginplayeradaptor.cpp new file mode 100644 index 000000000..46f22cf2f --- /dev/null +++ b/src/libtomahawk/infosystem/infoplugins/unix/mprispluginplayeradaptor.cpp @@ -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 +#include +#include +#include +#include +#include +#include + +/* + * 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"); +} + diff --git a/src/libtomahawk/infosystem/infoplugins/unix/mprispluginplayeradaptor.h b/src/libtomahawk/infosystem/infoplugins/unix/mprispluginplayeradaptor.h new file mode 100644 index 000000000..9445af3b6 --- /dev/null +++ b/src/libtomahawk/infosystem/infoplugins/unix/mprispluginplayeradaptor.h @@ -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 +#include +class QByteArray; +template class QList; +template 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", "" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \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 diff --git a/src/libtomahawk/infosystem/infoplugins/unix/mprispluginplayeradaptor.xml b/src/libtomahawk/infosystem/infoplugins/unix/mprispluginplayeradaptor.xml new file mode 100644 index 000000000..8d060ae8c --- /dev/null +++ b/src/libtomahawk/infosystem/infoplugins/unix/mprispluginplayeradaptor.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/libtomahawk/infosystem/infoplugins/unix/mprispluginrootadaptor.cpp b/src/libtomahawk/infosystem/infoplugins/unix/mprispluginrootadaptor.cpp index c1ceaf019..0307ca836 100644 --- a/src/libtomahawk/infosystem/infoplugins/unix/mprispluginrootadaptor.cpp +++ b/src/libtomahawk/infosystem/infoplugins/unix/mprispluginrootadaptor.cpp @@ -1,130 +1,92 @@ -/* === This file is part of Tomahawk Player - === +/* + * This file was generated by qdbusxml2cpp version 0.7 + * Command line was: qdbusxml2cpp -a mprispluginrootadaptor -c MprisPluginRootAdaptor mprispluginrootadaptor.xml * - * Copyright 2010-2011, Christian Muehlhaeuser + * 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 . + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. */ #include "mprispluginrootadaptor.h" +#include +#include +#include +#include +#include +#include +#include -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"); -} diff --git a/src/libtomahawk/infosystem/infoplugins/unix/mprispluginrootadaptor.h b/src/libtomahawk/infosystem/infoplugins/unix/mprispluginrootadaptor.h index d0bc8ed72..ac4895bc4 100644 --- a/src/libtomahawk/infosystem/infoplugins/unix/mprispluginrootadaptor.h +++ b/src/libtomahawk/infosystem/infoplugins/unix/mprispluginrootadaptor.h @@ -1,73 +1,76 @@ -/* === This file is part of Tomahawk Player - === +/* + * This file was generated by qdbusxml2cpp version 0.7 + * Command line was: qdbusxml2cpp -a mprispluginrootadaptor -c MprisPluginRootAdaptor mprispluginrootadaptor.xml * - * Copyright 2010-2011, Christian Muehlhaeuser + * 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 . + * 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 #include +class QByteArray; +template class QList; +template class QMap; +class QString; +class QStringList; +class QVariant; -#include - +/* + * 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", "" - " \n" - " \n" - " \n" - " \n" - " \n" - " \n" - " \n" - " \n" - " \n" - " \n" - " \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 ) - - +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" + "") 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 diff --git a/src/libtomahawk/infosystem/infoplugins/unix/mprispluginrootadaptor.xml b/src/libtomahawk/infosystem/infoplugins/unix/mprispluginrootadaptor.xml new file mode 100644 index 000000000..50ee35e24 --- /dev/null +++ b/src/libtomahawk/infosystem/infoplugins/unix/mprispluginrootadaptor.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + +