diff --git a/src/libtomahawk/resolvers/ScriptLinkGeneratorPlugin.cpp b/src/libtomahawk/resolvers/ScriptLinkGeneratorPlugin.cpp index c9dda5d30..70d1ca14f 100644 --- a/src/libtomahawk/resolvers/ScriptLinkGeneratorPlugin.cpp +++ b/src/libtomahawk/resolvers/ScriptLinkGeneratorPlugin.cpp @@ -25,7 +25,9 @@ using namespace Tomahawk; ScriptLinkGeneratorPlugin::ScriptLinkGeneratorPlugin( ScriptObject* scriptObject ) - : Utils::LinkGeneratorPlugin() + : QObject( scriptObject ) + , ScriptPlugin( scriptObject ) + , Utils::LinkGeneratorPlugin() , d_ptr( new ScriptLinkGeneratorPluginPrivate( this, scriptObject ) ) { } @@ -39,35 +41,29 @@ ScriptLinkGeneratorPlugin::~ScriptLinkGeneratorPlugin() ScriptJob* ScriptLinkGeneratorPlugin::openLink( const QString& title, const QString& artist, const QString& album ) const { - Q_D( const ScriptLinkGeneratorPlugin ); - QVariantMap arguments; arguments[ "title" ] = QVariant( title ); arguments[ "artist" ] = QVariant( artist ); arguments[ "album" ] = QVariant( album ); - return d->scriptObject->invoke( "generateQueryLink", arguments ); + return scriptObject()->invoke( "generateQueryLink", arguments ); } ScriptJob* ScriptLinkGeneratorPlugin::openLink( const artist_ptr& artist ) const { - Q_D( const ScriptLinkGeneratorPlugin ); - // TODO: create proper serializer for QObjects QVariantMap arguments; arguments[ "name" ] = QVariant( artist->name() ); - return d->scriptObject->invoke( "generateArtistLink", arguments ); + return scriptObject()->invoke( "generateArtistLink", arguments ); } ScriptJob* ScriptLinkGeneratorPlugin::openLink( const album_ptr& album ) const { - Q_D( const ScriptLinkGeneratorPlugin ); - // TODO: create proper serializer for QObjects QVariantMap arguments; arguments[ "name" ] = QVariant( album->name() ); @@ -76,7 +72,7 @@ ScriptLinkGeneratorPlugin::openLink( const album_ptr& album ) const artist[ "name" ] = album->artist()->name(); arguments[ "artist" ] = artist; - return d->scriptObject->invoke( "generateAlbumLink", arguments ); + return scriptObject()->invoke( "generateAlbumLink", arguments ); } diff --git a/src/libtomahawk/resolvers/ScriptLinkGeneratorPlugin.h b/src/libtomahawk/resolvers/ScriptLinkGeneratorPlugin.h index 076c4550e..ac713bb78 100644 --- a/src/libtomahawk/resolvers/ScriptLinkGeneratorPlugin.h +++ b/src/libtomahawk/resolvers/ScriptLinkGeneratorPlugin.h @@ -19,10 +19,12 @@ #ifndef TOMAHAWK_SCRIPTLINKGENERATORPLUGIN_H #define TOMAHAWK_SCRIPTLINKGENERATORPLUGIN_H +#include "../resolvers/ScriptPlugin.h" #include "../utils/LinkGeneratorPlugin.h" -#include "DllMacro.h" +#include +#include "DllMacro.h" namespace Tomahawk { @@ -30,7 +32,7 @@ namespace Tomahawk class ScriptObject; class ScriptLinkGeneratorPluginPrivate; -class DLLEXPORT ScriptLinkGeneratorPlugin : QObject, public Utils::LinkGeneratorPlugin +class DLLEXPORT ScriptLinkGeneratorPlugin : public QObject, public ScriptPlugin, public Utils::LinkGeneratorPlugin { Q_OBJECT