From f751aa501cba58aa94fbc7b33d07a9605b61ee8f Mon Sep 17 00:00:00 2001 From: Dominik Schmidt Date: Tue, 9 Dec 2014 00:05:49 +0100 Subject: [PATCH] Use ScriptPlugin base class in ScriptLinkGeneratorPlugin --- .../resolvers/ScriptLinkGeneratorPlugin.cpp | 16 ++++++---------- .../resolvers/ScriptLinkGeneratorPlugin.h | 6 ++++-- 2 files changed, 10 insertions(+), 12 deletions(-) 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