diff --git a/src/headlesscheck.h b/src/headlesscheck.h index 05f55f4ce..4088eac66 100644 --- a/src/headlesscheck.h +++ b/src/headlesscheck.h @@ -22,7 +22,7 @@ #ifdef ENABLE_HEADLESS #define TOMAHAWK_APPLICATION QCoreApplication -#include <QApplication> +#include <QCoreApplication> #else diff --git a/src/libtomahawk/CMakeLists.txt b/src/libtomahawk/CMakeLists.txt index 2bde15e72..4bcaff785 100644 --- a/src/libtomahawk/CMakeLists.txt +++ b/src/libtomahawk/CMakeLists.txt @@ -12,9 +12,166 @@ add_definitions( ${QT_DEFINITIONS} ) add_definitions( -DQT_SHARED ) add_definitions( -DDLLEXPORT_PRO ) +set( libGuiSources + contextmenu.cpp + dropjob.cpp + globalactionmanager.cpp + viewpage.cpp + viewmanager.cpp + + context/ContextPage.cpp + context/ContextWidget.cpp + context/pages/TopTracksContext.cpp + context/pages/RelatedArtistsContext.cpp + context/pages/WikipediaContext.cpp + context/pages/WebContext.cpp + + jobview/JobStatusView.cpp + jobview/JobStatusModel.cpp + jobview/JobStatusDelegate.cpp + jobview/PipelineStatusItem.cpp + jobview/TransferStatusItem.cpp + jobview/LatchedStatusItem.cpp + + infobar/infobar.cpp + + infosystem/infosystemcache.cpp + infosystem/infosystem.cpp + infosystem/infosystemworker.cpp + infosystem/infoplugins/generic/echonestplugin.cpp + infosystem/infoplugins/generic/lastfmplugin.cpp + infosystem/infoplugins/generic/chartsplugin.cpp + infosystem/infoplugins/generic/spotifyPlugin.cpp + infosystem/infoplugins/generic/hypemPlugin.cpp + infosystem/infoplugins/generic/musixmatchplugin.cpp + infosystem/infoplugins/generic/musicbrainzPlugin.cpp + infosystem/infoplugins/generic/RoviPlugin.cpp + + playlist/treemodel.cpp + playlist/treeproxymodel.cpp + playlist/treeheader.cpp + playlist/treeitemdelegate.cpp + playlist/collectionproxymodel.cpp + playlist/collectionflatmodel.cpp + playlist/collectionview.cpp + playlist/playlistmodel.cpp + playlist/playlistproxymodel.cpp + playlist/playlistview.cpp + playlist/playlistitemdelegate.cpp + playlist/queueproxymodel.cpp + playlist/queueview.cpp + playlist/trackmodel.cpp + playlist/trackmodelitem.cpp + playlist/trackproxymodel.cpp + playlist/trackview.cpp + playlist/trackheader.cpp + playlist/treemodelitem.cpp + playlist/albumitem.cpp + playlist/albummodel.cpp + playlist/albumproxymodel.cpp + playlist/albumitemdelegate.cpp + playlist/albumview.cpp + playlist/artistview.cpp + playlist/customplaylistview.cpp + playlist/ViewHeader.cpp + playlist/PlaylistUpdaterInterface.cpp + playlist/XspfUpdater.cpp + + playlist/dynamic/DynamicPlaylist.cpp + playlist/dynamic/DynamicControl.cpp + playlist/dynamic/GeneratorFactory.cpp + playlist/dynamic/GeneratorInterface.cpp + playlist/dynamic/DynamicView.cpp + playlist/dynamic/DynamicModel.cpp + playlist/dynamic/DynamicPlaylistRevision.cpp + playlist/dynamic/echonest/EchonestGenerator.cpp + playlist/dynamic/echonest/EchonestControl.cpp + playlist/dynamic/echonest/EchonestSteerer.cpp + playlist/dynamic/widgets/DynamicWidget.cpp + playlist/dynamic/widgets/DynamicControlWrapper.cpp + playlist/dynamic/widgets/DynamicControlList.cpp + playlist/dynamic/widgets/ReadOrWriteWidget.cpp + playlist/dynamic/widgets/MiscControlWidgets.cpp + playlist/dynamic/widgets/CollapsibleControls.cpp + playlist/dynamic/widgets/DynamicSetupWidget.cpp + playlist/dynamic/widgets/LoadingSpinner.cpp + playlist/dynamic/database/DatabaseControl.cpp + playlist/dynamic/database/DatabaseGenerator.cpp + + playlist/topbar/topbar.cpp + playlist/topbar/clearbutton.cpp + playlist/topbar/searchlineedit.cpp + playlist/topbar/lineedit.cpp + playlist/topbar/searchbutton.cpp + + sip/SipModel.cpp + + utils/widgetdragfilter.cpp + utils/xspfloader.cpp + utils/xspfgenerator.cpp + utils/jspfloader.cpp + utils/spotifyparser.cpp + utils/itunesparser.cpp + utils/rdioparser.cpp + utils/shortenedlinkparser.cpp + utils/stylehelper.cpp + utils/dropjobnotifier.cpp + utils/proxystyle.cpp + + widgets/checkdirtree.cpp + widgets/querylabel.cpp + widgets/imagebutton.cpp + widgets/animatedsplitter.cpp + widgets/elidedlabel.cpp + widgets/newplaylistwidget.cpp + widgets/searchwidget.cpp + widgets/SeekSlider.cpp + widgets/playlisttypeselectordlg.cpp + widgets/welcomewidget.cpp + widgets/whatshotwidget.cpp + widgets/RecentlyPlayedPlaylistsModel.cpp + widgets/RecentPlaylistsModel.cpp + widgets/OverlayButton.cpp + widgets/overlaywidget.cpp + widgets/HeaderLabel.cpp + widgets/HeaderWidget.cpp + widgets/combobox.cpp + widgets/ToggleButton.cpp + widgets/SocialPlaylistWidget.cpp + widgets/infowidgets/sourceinfowidget.cpp + widgets/infowidgets/ArtistInfoWidget.cpp + widgets/infowidgets/AlbumInfoWidget.cpp + widgets/Breadcrumb.cpp + widgets/BreadcrumbButton.cpp +) + set( libGuiHeaders + contextmenu.h + dropjob.h viewpage.h viewmanager.h + globalactionmanager.h + + context/ContextPage.h + context/ContextWidget.h + context/pages/TopTracksContext.h + context/pages/RelatedArtistsContext.h + context/pages/WikipediaContext.h + context/pages/WebContext.h + + infobar/infobar.h + + infosystem/infosystem.h + infosystem/infosystemworker.h + infosystem/infosystemcache.h + infosystem/infoplugins/generic/echonestplugin.h + infosystem/infoplugins/generic/lastfmplugin.h + infosystem/infoplugins/generic/chartsplugin.h + infosystem/infoplugins/generic/spotifyPlugin.h + infosystem/infoplugins/generic/hypemPlugin.h + infosystem/infoplugins/generic/musixmatchplugin.h + infosystem/infoplugins/generic/musicbrainzPlugin.h + infosystem/infoplugins/generic/RoviPlugin.h playlist/topbar/topbar.h playlist/topbar/clearbutton.h @@ -22,17 +179,106 @@ set( libGuiHeaders playlist/topbar/lineedit.h playlist/topbar/lineedit_p.h playlist/topbar/searchbutton.h -) -set( libGuiSources - viewpage.cpp - viewmanager.cpp + playlist/treemodel.h + playlist/treeproxymodel.h + playlist/treeheader.h + playlist/treeitemdelegate.h + playlist/collectionproxymodel.h + playlist/collectionflatmodel.h + playlist/collectionview.h + playlist/playlistmodel.h + playlist/playlistproxymodel.h + playlist/playlistview.h + playlist/playlistitemdelegate.h + playlist/queueproxymodel.h + playlist/queueview.h + playlist/trackmodel.h + playlist/trackmodelitem.h + playlist/trackproxymodel.h + playlist/trackview.h + playlist/trackheader.h + playlist/treemodelitem.h + playlist/albumitem.h + playlist/albummodel.h + playlist/albumproxymodel.h + playlist/albumitemdelegate.h + playlist/albumview.h + playlist/artistview.h + playlist/customplaylistview.h + playlist/ViewHeader.h + playlist/PlaylistUpdaterInterface.h + playlist/XspfUpdater.h + + playlist/dynamic/DynamicPlaylist.h + playlist/dynamic/DynamicControl.h + playlist/dynamic/GeneratorInterface.h + playlist/dynamic/DynamicView.h + playlist/dynamic/DynamicModel.h + playlist/dynamic/echonest/EchonestGenerator.h + playlist/dynamic/echonest/EchonestControl.h + playlist/dynamic/echonest/EchonestSteerer.h + playlist/dynamic/widgets/DynamicWidget.h + playlist/dynamic/widgets/DynamicControlWrapper.h + playlist/dynamic/widgets/DynamicControlList.h + playlist/dynamic/widgets/ReadOrWriteWidget.h + playlist/dynamic/widgets/MiscControlWidgets.h + playlist/dynamic/widgets/CollapsibleControls.h + playlist/dynamic/widgets/DynamicSetupWidget.h + playlist/dynamic/widgets/LoadingSpinner.h + playlist/dynamic/database/DatabaseControl.h + playlist/dynamic/database/DatabaseGenerator.h + sip/SipModel.h + + utils/widgetdragfilter.h + utils/xspfloader.h + utils/xspfgenerator.h + utils/jspfloader.h + utils/spotifyparser.h + utils/itunesparser.h + utils/rdioparser.h + utils/shortenedlinkparser.h + utils/qnr_iodevicestream.h + utils/dropjobnotifier.h + + widgets/checkdirtree.h + widgets/querylabel.h + widgets/animatedcounterlabel.h + widgets/imagebutton.h + widgets/animatedsplitter.h + widgets/elidedlabel.h + widgets/newplaylistwidget.h + widgets/searchwidget.h + widgets/SeekSlider.h + widgets/playlisttypeselectordlg.h + widgets/welcomewidget.h + widgets/whatshotwidget.h + widgets/RecentlyPlayedPlaylistsModel.h + widgets/RecentPlaylistsModel.h + widgets/OverlayButton.h + widgets/overlaywidget.h + widgets/HeaderLabel.h + widgets/HeaderWidget.h + widgets/combobox.h + widgets/ToggleButton.h + widgets/SocialPlaylistWidget.h + widgets/infowidgets/sourceinfowidget.h + widgets/infowidgets/ArtistInfoWidget.h + widgets/infowidgets/ArtistInfoWidget_p.h + widgets/infowidgets/AlbumInfoWidget.h + widgets/Breadcrumb.h + widgets/BreadcrumbButton.h + + jobview/JobStatusView.h + jobview/JobStatusModel.h + jobview/JobStatusDelegate.h + jobview/JobStatusItem.h + jobview/PipelineStatusItem.h + jobview/TransferStatusItem.h + jobview/LatchedStatusItem.h + + thirdparty/Qocoa/qsearchfield.h - playlist/topbar/topbar.cpp - playlist/topbar/clearbutton.cpp - playlist/topbar/searchlineedit.cpp - playlist/topbar/lineedit.cpp - playlist/topbar/searchbutton.cpp ) set( libSources @@ -51,9 +297,6 @@ set( libSources result.cpp source.cpp sourceplaylistinterface.cpp - globalactionmanager.cpp - contextmenu.cpp - dropjob.cpp playlistinterface.cpp LatchManager.cpp @@ -61,17 +304,10 @@ set( libSources sip/SipPlugin.cpp sip/SipHandler.cpp - sip/SipModel.cpp sip/sipinfo.cpp audio/audioengine.cpp - context/ContextPage.cpp - context/ContextWidget.cpp - context/pages/TopTracksContext.cpp - context/pages/RelatedArtistsContext.cpp - context/pages/WikipediaContext.cpp - context/pages/WebContext.cpp database/database.cpp database/fuzzyindex.cpp @@ -125,72 +361,6 @@ set( libSources database/databasecommand_settrackattributes.cpp database/database.cpp - infobar/infobar.cpp - - infosystem/infosystemcache.cpp - infosystem/infosystem.cpp - infosystem/infosystemworker.cpp - infosystem/infoplugins/generic/echonestplugin.cpp - infosystem/infoplugins/generic/lastfmplugin.cpp - infosystem/infoplugins/generic/chartsplugin.cpp - infosystem/infoplugins/generic/spotifyPlugin.cpp - infosystem/infoplugins/generic/hypemPlugin.cpp - infosystem/infoplugins/generic/musixmatchplugin.cpp - infosystem/infoplugins/generic/musicbrainzPlugin.cpp - infosystem/infoplugins/generic/RoviPlugin.cpp - - playlist/treemodel.cpp - playlist/treeproxymodel.cpp - playlist/treeheader.cpp - playlist/treeitemdelegate.cpp - playlist/collectionproxymodel.cpp - playlist/collectionflatmodel.cpp - playlist/collectionview.cpp - playlist/playlistmodel.cpp - playlist/playlistproxymodel.cpp - playlist/playlistview.cpp - playlist/playlistitemdelegate.cpp - playlist/queueproxymodel.cpp - playlist/queueview.cpp - playlist/trackmodel.cpp - playlist/trackmodelitem.cpp - playlist/trackproxymodel.cpp - playlist/trackview.cpp - playlist/trackheader.cpp - playlist/treemodelitem.cpp - playlist/albumitem.cpp - playlist/albummodel.cpp - playlist/albumproxymodel.cpp - playlist/albumitemdelegate.cpp - playlist/albumview.cpp - playlist/artistview.cpp - playlist/customplaylistview.cpp - playlist/ViewHeader.cpp - playlist/PlaylistUpdaterInterface.cpp - playlist/XspfUpdater.cpp - - - playlist/dynamic/DynamicPlaylist.cpp - playlist/dynamic/DynamicControl.cpp - playlist/dynamic/GeneratorFactory.cpp - playlist/dynamic/GeneratorInterface.cpp - playlist/dynamic/DynamicView.cpp - playlist/dynamic/DynamicModel.cpp - playlist/dynamic/DynamicPlaylistRevision.cpp - playlist/dynamic/echonest/EchonestGenerator.cpp - playlist/dynamic/echonest/EchonestControl.cpp - playlist/dynamic/echonest/EchonestSteerer.cpp - playlist/dynamic/widgets/DynamicWidget.cpp - playlist/dynamic/widgets/DynamicControlWrapper.cpp - playlist/dynamic/widgets/DynamicControlList.cpp - playlist/dynamic/widgets/ReadOrWriteWidget.cpp - playlist/dynamic/widgets/MiscControlWidgets.cpp - playlist/dynamic/widgets/CollapsibleControls.cpp - playlist/dynamic/widgets/DynamicSetupWidget.cpp - playlist/dynamic/widgets/LoadingSpinner.cpp - playlist/dynamic/database/DatabaseControl.cpp - playlist/dynamic/database/DatabaseGenerator.cpp - resolvers/scriptresolver.cpp resolvers/qtscriptresolver.cpp @@ -206,51 +376,7 @@ set( libSources utils/tomahawkutils.cpp utils/logger.cpp - utils/proxystyle.cpp - utils/widgetdragfilter.cpp - utils/xspfloader.cpp - utils/xspfgenerator.cpp - utils/jspfloader.cpp - utils/spotifyparser.cpp - utils/itunesparser.cpp - utils/rdioparser.cpp - utils/shortenedlinkparser.cpp - utils/stylehelper.cpp utils/qnr_iodevicestream.cpp - utils/dropjobnotifier.cpp - - widgets/checkdirtree.cpp - widgets/querylabel.cpp - widgets/imagebutton.cpp - widgets/animatedsplitter.cpp - widgets/elidedlabel.cpp - widgets/newplaylistwidget.cpp - widgets/searchwidget.cpp - widgets/SeekSlider.cpp - widgets/playlisttypeselectordlg.cpp - widgets/welcomewidget.cpp - widgets/whatshotwidget.cpp - widgets/RecentlyPlayedPlaylistsModel.cpp - widgets/RecentPlaylistsModel.cpp - widgets/OverlayButton.cpp - widgets/overlaywidget.cpp - widgets/HeaderLabel.cpp - widgets/HeaderWidget.cpp - widgets/combobox.cpp - widgets/ToggleButton.cpp - widgets/SocialPlaylistWidget.cpp - widgets/infowidgets/sourceinfowidget.cpp - widgets/infowidgets/ArtistInfoWidget.cpp - widgets/infowidgets/AlbumInfoWidget.cpp - widgets/Breadcrumb.cpp - widgets/BreadcrumbButton.cpp - - jobview/JobStatusView.cpp - jobview/JobStatusModel.cpp - jobview/JobStatusDelegate.cpp - jobview/PipelineStatusItem.cpp - jobview/TransferStatusItem.cpp - jobview/LatchedStatusItem.cpp thirdparty/kdsingleapplicationguard/kdsingleapplicationguard.cpp thirdparty/kdsingleapplicationguard/kdsharedmemorylocker.cpp @@ -273,8 +399,6 @@ set( libHeaders source.h sourceplaylistinterface.h globalactionmanager.h - contextmenu.h - dropjob.h LatchManager.h artist.h @@ -285,18 +409,10 @@ set( libHeaders sip/SipPlugin.h sip/SipHandler.h - sip/SipModel.h sip/sipinfo.h audio/audioengine.h - context/ContextPage.h - context/ContextWidget.h - context/pages/TopTracksContext.h - context/pages/RelatedArtistsContext.h - context/pages/WikipediaContext.h - context/pages/WebContext.h - database/database.h database/fuzzyindex.h database/databaseworker.h @@ -348,20 +464,6 @@ set( libHeaders database/databasecommand_trackattributes.h database/databasecommand_settrackattributes.h - infobar/infobar.h - - infosystem/infosystem.h - infosystem/infosystemworker.h - infosystem/infosystemcache.h - infosystem/infoplugins/generic/echonestplugin.h - infosystem/infoplugins/generic/lastfmplugin.h - infosystem/infoplugins/generic/chartsplugin.h - infosystem/infoplugins/generic/spotifyPlugin.h - infosystem/infoplugins/generic/hypemPlugin.h - infosystem/infoplugins/generic/musixmatchplugin.h - infosystem/infoplugins/generic/musicbrainzPlugin.h - infosystem/infoplugins/generic/RoviPlugin.h - network/bufferiodevice.h network/msgprocessor.h network/remotecollection.h @@ -372,107 +474,10 @@ set( libHeaders network/controlconnection.h network/portfwdthread.h - playlist/treemodel.h - playlist/treeproxymodel.h - playlist/treeheader.h - playlist/treeitemdelegate.h - playlist/collectionproxymodel.h - playlist/collectionflatmodel.h - playlist/collectionview.h - playlist/playlistmodel.h - playlist/playlistproxymodel.h - playlist/playlistview.h - playlist/playlistitemdelegate.h - playlist/queueproxymodel.h - playlist/queueview.h - playlist/trackmodel.h - playlist/trackmodelitem.h - playlist/trackproxymodel.h - playlist/trackview.h - playlist/trackheader.h - playlist/treemodelitem.h - playlist/albumitem.h - playlist/albummodel.h - playlist/albumproxymodel.h - playlist/albumitemdelegate.h - playlist/albumview.h - playlist/artistview.h - playlist/customplaylistview.h - playlist/ViewHeader.h - playlist/PlaylistUpdaterInterface.h - playlist/XspfUpdater.h - - playlist/dynamic/DynamicPlaylist.h - playlist/dynamic/DynamicControl.h - playlist/dynamic/GeneratorInterface.h - playlist/dynamic/DynamicView.h - playlist/dynamic/DynamicModel.h - playlist/dynamic/echonest/EchonestGenerator.h - playlist/dynamic/echonest/EchonestControl.h - playlist/dynamic/echonest/EchonestSteerer.h - playlist/dynamic/widgets/DynamicWidget.h - playlist/dynamic/widgets/DynamicControlWrapper.h - playlist/dynamic/widgets/DynamicControlList.h - playlist/dynamic/widgets/ReadOrWriteWidget.h - playlist/dynamic/widgets/MiscControlWidgets.h - playlist/dynamic/widgets/CollapsibleControls.h - playlist/dynamic/widgets/DynamicSetupWidget.h - playlist/dynamic/widgets/LoadingSpinner.h - playlist/dynamic/database/DatabaseControl.h - playlist/dynamic/database/DatabaseGenerator.h - resolvers/scriptresolver.h resolvers/qtscriptresolver.h - utils/widgetdragfilter.h - utils/xspfloader.h - utils/xspfgenerator.h - utils/jspfloader.h - utils/spotifyparser.h - utils/itunesparser.h - utils/rdioparser.h - utils/shortenedlinkparser.h - utils/qnr_iodevicestream.h - utils/dropjobnotifier.h - - widgets/checkdirtree.h - widgets/querylabel.h - widgets/animatedcounterlabel.h - widgets/imagebutton.h - widgets/animatedsplitter.h - widgets/elidedlabel.h - widgets/newplaylistwidget.h - widgets/searchwidget.h - widgets/SeekSlider.h - widgets/playlisttypeselectordlg.h - widgets/welcomewidget.h - widgets/whatshotwidget.h - widgets/RecentlyPlayedPlaylistsModel.h - widgets/RecentPlaylistsModel.h - widgets/OverlayButton.h - widgets/overlaywidget.h - widgets/HeaderLabel.h - widgets/HeaderWidget.h - widgets/combobox.h - widgets/ToggleButton.h - widgets/SocialPlaylistWidget.h - widgets/infowidgets/sourceinfowidget.h - widgets/infowidgets/ArtistInfoWidget.h - widgets/infowidgets/ArtistInfoWidget_p.h - widgets/infowidgets/AlbumInfoWidget.h - widgets/Breadcrumb.h - widgets/BreadcrumbButton.h - - jobview/JobStatusView.h - jobview/JobStatusModel.h - jobview/JobStatusDelegate.h - jobview/JobStatusItem.h - jobview/PipelineStatusItem.h - jobview/TransferStatusItem.h - jobview/LatchedStatusItem.h - thirdparty/kdsingleapplicationguard/kdsingleapplicationguard.h - thirdparty/Qocoa/qsearchfield.h ) set( libHeaders_NoMOC @@ -528,14 +533,14 @@ IF(LIBATTICA_FOUND) ENDIF(LIBATTICA_FOUND) IF( UNIX AND NOT APPLE ) - SET( libSources ${libSources} + SET( libGuiSources ${libGuiSources} 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} + SET( libGuiHeaders ${libGuiHeaders} infosystem/infoplugins/unix/mprispluginrootadaptor.h infosystem/infoplugins/unix/mprispluginplayeradaptor.h infosystem/infoplugins/unix/mprisplugin.h @@ -589,7 +594,7 @@ IF( APPLE ) /System/Library/Frameworks/AppKit.framework ) ELSE( APPLE ) - SET( libSources ${libSources} thirdparty/Qocoa/qsearchfield.cpp ) + SET( libGuiSources ${libGuiSources} thirdparty/Qocoa/qsearchfield.cpp ) ENDIF( APPLE ) IF(LIBLASTFM_FOUND) @@ -606,7 +611,7 @@ qt4_wrap_cpp( libMoc ${libHeaders} ${libGuiHeaders} ) SET( libSources ${libSources} ${libUI_H} ${libHeaders_NoMOC} ) -ADD_LIBRARY( tomahawklib SHARED ${libGuiSources} ${libSources} ${libMoc} ) +ADD_LIBRARY( tomahawklib SHARED ${libSources} ${libMoc} ) IF(QCA2_FOUND) SET(LINK_LIBRARIES ${LINK_LIBRARIES} ${QCA2_LIBRARIES} ) diff --git a/src/libtomahawk/database/databasecommand_createdynamicplaylist.cpp b/src/libtomahawk/database/databasecommand_createdynamicplaylist.cpp index 988fdbb9b..2810c7610 100644 --- a/src/libtomahawk/database/databasecommand_createdynamicplaylist.cpp +++ b/src/libtomahawk/database/databasecommand_createdynamicplaylist.cpp @@ -28,10 +28,13 @@ #include "dynamic/GeneratorInterface.h" #include "source.h" -#include "viewmanager.h" #include "network/servent.h" #include "utils/logger.h" +#ifndef ENABLE_HEADLESS + #include "viewmanager.h" +#endif + using namespace Tomahawk; @@ -111,11 +114,13 @@ DatabaseCommand_CreateDynamicPlaylist::postCommitHook() qDebug() << Q_FUNC_INFO << "..reporting.."; if( m_playlist.isNull() ) { source_ptr src = source(); +#ifndef ENABLE_HEADLESS QMetaObject::invokeMethod( ViewManager::instance(), "createDynamicPlaylist", Qt::BlockingQueuedConnection, QGenericArgument( "Tomahawk::source_ptr", (const void*)&src ), Q_ARG( QVariant, m_v ) ); +#endif } else { m_playlist->reportCreated( m_playlist ); } diff --git a/src/libtomahawk/database/databasecommand_createplaylist.cpp b/src/libtomahawk/database/databasecommand_createplaylist.cpp index 00f211758..b0f31c9e7 100644 --- a/src/libtomahawk/database/databasecommand_createplaylist.cpp +++ b/src/libtomahawk/database/databasecommand_createplaylist.cpp @@ -21,12 +21,15 @@ #include <QSqlQuery> #include "source.h" -#include "viewmanager.h" #include "databaseimpl.h" #include "tomahawksqlquery.h" #include "network/servent.h" #include "utils/logger.h" +#ifndef ENABLE_HEADLESS + #include "viewmanager.h" +#endif + using namespace Tomahawk; @@ -79,11 +82,13 @@ DatabaseCommand_CreatePlaylist::postCommitHook() if ( m_playlist.isNull() ) { source_ptr src = source(); +#ifndef ENABLE_HEADLESS QMetaObject::invokeMethod( ViewManager::instance(), "createPlaylist", Qt::BlockingQueuedConnection, QGenericArgument( "Tomahawk::source_ptr", (const void*)&src ), Q_ARG( QVariant, m_v ) ); +#endif } else { diff --git a/src/libtomahawk/database/localcollection.cpp b/src/libtomahawk/database/localcollection.cpp index eb03377d8..3c5d73bc8 100644 --- a/src/libtomahawk/database/localcollection.cpp +++ b/src/libtomahawk/database/localcollection.cpp @@ -21,10 +21,13 @@ #include "localcollection.h" #include "sourcelist.h" -#include "viewmanager.h" #include <tomahawksettings.h> #include "utils/logger.h" +#ifndef ENABLE_HEADLESS + #include "viewmanager.h" +#endif + LocalCollection::LocalCollection( const Tomahawk::source_ptr& source, QObject* parent ) : DatabaseCollection( source, parent ) @@ -49,10 +52,12 @@ LocalCollection::createBookmarksPlaylist() if( bookmarksPlaylist().isNull() ) { QString guid = uuid(); Tomahawk::playlist_ptr p = Tomahawk::Playlist::create( SourceList::instance()->getLocal(), guid, tr( "Bookmarks" ), tr( "Saved tracks" ), QString(), false ); + +#ifndef ENABLE_HEADLESS ViewManager::instance()->createPageForPlaylist( p ); // connect( p.data(), SIGNAL( revisionLoaded( Tomahawk::PlaylistRevision ) ), this, SLOT( loaded( Tomahawk::PlaylistRevision ) ), Qt::QueuedConnection ); connect( p.data(), SIGNAL( created() ), this, SLOT( created() ) ); - +#endif TomahawkSettings::instance()->setBookmarkPlaylist( guid ); // p->createNewRevision( uuid(), p->currentrevision(), QList< Tomahawk::plentry_ptr >() ); } diff --git a/src/libtomahawk/network/controlconnection.cpp b/src/libtomahawk/network/controlconnection.cpp index e07bfe40b..25a35ae6a 100644 --- a/src/libtomahawk/network/controlconnection.cpp +++ b/src/libtomahawk/network/controlconnection.cpp @@ -130,11 +130,13 @@ ControlConnection::registerSource() Q_UNUSED( source ) Q_ASSERT( source == m_source.data() ); +#ifndef ENABLE_HEADLESS // qDebug() << Q_FUNC_INFO << "Setting avatar ... " << name() << !SipHandler::instance()->avatar( name() ).isNull(); if( !SipHandler::instance()->avatar( name() ).isNull() ) { source->setAvatar( SipHandler::instance()->avatar( name() ) ); } +#endif m_registered = true; m_servent->registerControlConnection( this ); diff --git a/src/libtomahawk/network/portfwdthread.cpp b/src/libtomahawk/network/portfwdthread.cpp index b0cb98e12..6006699bf 100644 --- a/src/libtomahawk/network/portfwdthread.cpp +++ b/src/libtomahawk/network/portfwdthread.cpp @@ -18,7 +18,8 @@ #include "portfwdthread.h" -#include <QApplication> +#include "headlesscheck.h" + #include <QNetworkInterface> #include <QStringList> #include <QTime> diff --git a/src/libtomahawk/network/servent.cpp b/src/libtomahawk/network/servent.cpp index 3d26e6b04..8ef2fcd3e 100644 --- a/src/libtomahawk/network/servent.cpp +++ b/src/libtomahawk/network/servent.cpp @@ -26,8 +26,11 @@ #include <QNetworkProxy> #include <QNetworkRequest> #include <QNetworkReply> -#include <QPushButton> -#include <QMessageBox> + +#ifndef ENABLE_HEADLESS + #include <QPushButton> + #include <QMessageBox> +#endif #include "result.h" #include "source.h" @@ -684,7 +687,7 @@ Servent::checkACL( const Connection* conn, const QString &nodeid, bool showDialo if( peerStatus == ACLSystem::Deny ) return false; -#ifndef TOMAHAWK_HEADLESS +#ifndef ENABLE_HEADLESS //FIXME: Actually enable it when it makes sense return true; if( peerStatus == ACLSystem::NotFound ) diff --git a/src/libtomahawk/resolvers/qtscriptresolver.cpp b/src/libtomahawk/resolvers/qtscriptresolver.cpp index c72c55a18..f9939964c 100644 --- a/src/libtomahawk/resolvers/qtscriptresolver.cpp +++ b/src/libtomahawk/resolvers/qtscriptresolver.cpp @@ -31,7 +31,10 @@ #include <network/servent.h> #include <QNetworkRequest> #include <QNetworkReply> -#include <QMessageBox> + +#ifndef ENABLE_HEADLESS + #include <QMessageBox> +#endif // FIXME: bloody hack, remove this for 0.3 // this one adds new functionality to old resolvers @@ -191,9 +194,11 @@ ScriptEngine::javaScriptConsoleMessage( const QString& message, int lineNumber, tLog() << "JAVASCRIPT:" << m_scriptPath << message << lineNumber << sourceID; /// I guess there is somereason for a assert in here, maybe fatal js errors, but /// undefined is not so fatal +#ifndef ENABLE_HEADLESS #ifdef QT_DEBUG QMessageBox::critical( 0, "Script Resolver Error", QString( "%1 %2 %3 %4" ).arg( m_scriptPath ).arg( message ).arg( lineNumber ).arg( sourceID ) ); #endif +#endif } diff --git a/src/libtomahawk/sip/SipHandler.cpp b/src/libtomahawk/sip/SipHandler.cpp index 8b418b9f0..325ec5ac6 100644 --- a/src/libtomahawk/sip/SipHandler.cpp +++ b/src/libtomahawk/sip/SipHandler.cpp @@ -22,7 +22,10 @@ #include <QCoreApplication> #include <QDir> #include <QPluginLoader> -#include <QMessageBox> + +#ifndef ENABLE_HEADLESS + #include <QMessageBox> +#endif #include "functimeout.h" @@ -68,6 +71,7 @@ SipHandler::~SipHandler() } +#ifndef ENABLE_HEADLESS const QPixmap SipHandler::avatar( const QString& name ) const { @@ -84,7 +88,7 @@ SipHandler::avatar( const QString& name ) const return QPixmap(); } } - +#endif const SipInfo SipHandler::sipInfo(const QString& peerId) const @@ -373,7 +377,7 @@ SipHandler::enablePlugin( SipPlugin* p ) void SipHandler::connectPlugin( bool startup, const QString &pluginId ) { -#ifndef TOMAHAWK_HEADLESS +#ifndef ENABLE_HEADLESS if ( !TomahawkSettings::instance()->acceptedLegalWarning() ) { int result = QMessageBox::question( @@ -599,7 +603,7 @@ SipHandler::onStateChanged( SipPlugin::ConnectionState state ) emit stateChanged( sip, state ); } - +#ifndef ENABLE_HEADLESS void SipHandler::onAvatarReceived( const QString& from, const QPixmap& avatar ) { @@ -644,6 +648,7 @@ SipHandler::onAvatarReceived( const QPixmap& avatar ) // qDebug() << Q_FUNC_INFO << "Set own avatar on MyCollection"; SourceList::instance()->getLocal()->setAvatar( avatar ); } +#endif QString diff --git a/src/libtomahawk/sip/SipHandler.h b/src/libtomahawk/sip/SipHandler.h index f22d5784a..9a510ba2d 100644 --- a/src/libtomahawk/sip/SipHandler.h +++ b/src/libtomahawk/sip/SipHandler.h @@ -53,7 +53,10 @@ public: bool hasPluginType( const QString& factoryId ) const; SipPluginFactory* factoryFromPlugin( SipPlugin* p ) const; +#ifndef ENABLE_HEADLESS const QPixmap avatar( const QString& name ) const; +#endif + //TODO: implement a proper SipInfo class and maybe attach it to the source const SipInfo sipInfo( const QString& peerId ) const; const QString versionString( const QString& peerId ) const; @@ -101,11 +104,13 @@ private slots: void onSettingsChanged(); +#ifndef ENABLE_HEADLESS // set data for local source void onAvatarReceived( const QPixmap& avatar ); // set data for other sources void onAvatarReceived( const QString& from, const QPixmap& avatar ); +#endif private: static SipHandler *s_instance; @@ -126,8 +131,10 @@ private: //TODO: move this to source QHash<QString, SipInfo> m_peersSipInfos; - QHash<QString, QPixmap> m_usernameAvatars; QHash<QString, QString> m_peersSoftwareVersions; +#ifndef ENABLE_HEADLESS + QHash<QString, QPixmap> m_usernameAvatars; +#endif }; #endif diff --git a/src/libtomahawk/sip/SipPlugin.cpp b/src/libtomahawk/sip/SipPlugin.cpp index a79557661..482ea75dc 100644 --- a/src/libtomahawk/sip/SipPlugin.cpp +++ b/src/libtomahawk/sip/SipPlugin.cpp @@ -52,6 +52,7 @@ SipPlugin::pluginId() const } +#ifndef ENABLE_HEADLESS QMenu* SipPlugin::menu() { @@ -66,18 +67,19 @@ SipPlugin::configWidget() } -QString -SipPlugin::errorMessage() const -{ - return m_cachedError; -} - - QIcon SipPlugin::icon() const { return QIcon(); } +#endif + + +QString +SipPlugin::errorMessage() const +{ + return m_cachedError; +} const QStringList diff --git a/src/libtomahawk/sip/SipPlugin.h b/src/libtomahawk/sip/SipPlugin.h index 1ac38edc3..9e33d3b8b 100644 --- a/src/libtomahawk/sip/SipPlugin.h +++ b/src/libtomahawk/sip/SipPlugin.h @@ -83,9 +83,9 @@ public: #ifndef ENABLE_HEADLESS virtual QMenu* menu(); virtual QWidget* configWidget(); + virtual QIcon icon() const; #endif virtual void saveConfig() {} // called when the widget has been edited - virtual QIcon icon() const; // peer infos virtual const QStringList peersOnline() const; @@ -113,13 +113,13 @@ signals: void sipInfoReceived( const QString& peerId, const SipInfo& info ); void softwareVersionReceived( const QString& peerId, const QString& versionString ); +#ifndef ENABLE_HEADLESS // new data for own source void avatarReceived ( const QPixmap& avatar ); // new data for other sources; void avatarReceived ( const QString& from, const QPixmap& avatar); -#ifndef ENABLE_HEADLESS void addMenu( QMenu* menu ); void removeMenu( QMenu* menu ); #endif diff --git a/src/libtomahawk/source.cpp b/src/libtomahawk/source.cpp index d7b1c5610..02cdbee01 100644 --- a/src/libtomahawk/source.cpp +++ b/src/libtomahawk/source.cpp @@ -115,7 +115,7 @@ Source::friendlyName() const return m_friendlyname; } - +#ifndef ENABLE_HEADLESS void Source::setAvatar( const QPixmap& avatar ) { @@ -137,7 +137,7 @@ Source::avatar( AvatarStyle style ) const else return QPixmap(); } - +#endif void Source::setFriendlyName( const QString& fname ) diff --git a/src/libtomahawk/source.h b/src/libtomahawk/source.h index e4f2f8fae..69681ce54 100644 --- a/src/libtomahawk/source.h +++ b/src/libtomahawk/source.h @@ -61,8 +61,10 @@ public: QString friendlyName() const; void setFriendlyName( const QString& fname ); +#ifndef ENABLE_HEADLESS void setAvatar( const QPixmap& avatar ); QPixmap avatar( AvatarStyle style = Original ) const; +#endif collection_ptr collection() const; void addCollection( const Tomahawk::collection_ptr& c ); diff --git a/src/libtomahawk/utils/tomahawkutils.cpp b/src/libtomahawk/utils/tomahawkutils.cpp index cd0d4c100..e3ac02f34 100644 --- a/src/libtomahawk/utils/tomahawkutils.cpp +++ b/src/libtomahawk/utils/tomahawkutils.cpp @@ -43,7 +43,7 @@ #include <sys/sysctl.h> #endif -#ifndef TOMAHAWK_HEADLESS +#ifndef ENABLE_HEADLESS #include <QtGui/QApplication> #include <QtGui/QWidget> @@ -446,6 +446,7 @@ drawBackgroundAndNumbers( QPainter* painter, const QString& text, const QRect& f painter->drawText( figRect.adjusted( -5, 0, 6, 0 ), text, to ); } +#ifndef ENABLE_HEADLESS void drawQueryBackground( QPainter* p, const QPalette& palette, const QRect& r, qreal lightnessFactor ) { @@ -469,6 +470,7 @@ unmarginLayout( QLayout* layout ) unmarginLayout( childLayout ); } } +#endif NetworkProxyFactory::NetworkProxyFactory( const NetworkProxyFactory& other ) @@ -637,7 +639,7 @@ nam() s_threadNamHash[ QThread::currentThread() ] = newNam; tDebug( LOGEXTRA ) << "created new nam for thread " << QThread::currentThread(); - + return newNam; } @@ -680,8 +682,7 @@ setNam( QNetworkAccessManager* nam, bool noMutexLocker ) } -#ifndef TOMAHAWK_HEADLESS - +#ifndef ENABLE_HEADLESS QWidget* tomahawkWindow() { diff --git a/src/libtomahawk/utils/tomahawkutils.h b/src/libtomahawk/utils/tomahawkutils.h index 2f25aad34..b772c34f7 100644 --- a/src/libtomahawk/utils/tomahawkutils.h +++ b/src/libtomahawk/utils/tomahawkutils.h @@ -93,8 +93,14 @@ namespace TomahawkUtils DLLEXPORT QPixmap createDragPixmap( MediaType type, int itemCount = 1 ); DLLEXPORT void drawBackgroundAndNumbers( QPainter* p, const QString& text, const QRect& rect ); +#ifndef ENABLE_HEADLESS DLLEXPORT void drawQueryBackground( QPainter* p, const QPalette& palette, const QRect& r, qreal lightnessFactor = 1 ); + DLLEXPORT QWidget* tomahawkWindow(); + /// Platform-specific bringing tomahawk mainwindow to front, b/c qt's activate() and such don't seem to work well enough for us + DLLEXPORT void bringToFront(); + DLLEXPORT QPixmap createAvatarFrame( const QPixmap &avatar ); +#endif DLLEXPORT void unmarginLayout( QLayout* layout ); DLLEXPORT NetworkProxyFactory* proxyFactory( bool noMutexLocker = false ); @@ -103,12 +109,6 @@ namespace TomahawkUtils DLLEXPORT void setProxyFactory( TomahawkUtils::NetworkProxyFactory* factory, bool noMutexLocker = false ); DLLEXPORT void setNam( QNetworkAccessManager* nam, bool noMutexLocker = false ); - DLLEXPORT QWidget* tomahawkWindow(); - /// Platform-specific bringing tomahawk mainwindow to front, b/c qt's activate() and such don't seem to work well enough for us - DLLEXPORT void bringToFront(); - - DLLEXPORT QPixmap createAvatarFrame( const QPixmap &avatar ); - DLLEXPORT void crash(); DLLEXPORT int headerHeight();