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

Merge remote branch 'origin/master' into dynamic

Conflicts:
	src/libtomahawk/CMakeLists.txt
This commit is contained in:
Leo Franchi
2011-01-14 12:56:37 -05:00
8 changed files with 213 additions and 197 deletions

View File

@@ -5,10 +5,10 @@ FIND_LIBRARY( COREAUDIO_LIBRARY CoreAudio )
FIND_LIBRARY( COREFOUNDATION_LIBRARY CoreFoundation ) FIND_LIBRARY( COREFOUNDATION_LIBRARY CoreFoundation )
MARK_AS_ADVANCED( COREAUDIO_LIBRARY COREFOUNDATION_LIBRARY ) MARK_AS_ADVANCED( COREAUDIO_LIBRARY COREFOUNDATION_LIBRARY )
SET( OS_SPECIFIC_LINK_LIBRARIES SET( OS_SPECIFIC_LINK_LIBRARIES
${OS_SPECIFIC_LINK_LIBRARIES} ${OS_SPECIFIC_LINK_LIBRARIES}
${COREAUDIO_LIBRARY} ${COREAUDIO_LIBRARY}
${COREFOUNDATION_LIBRARY} ${COREFOUNDATION_LIBRARY}
rtaudio rtaudio
tomahawklib tomahawklib
) )

View File

@@ -7,8 +7,8 @@ ENDIF()
SET( QT_USE_QTSQL TRUE ) SET( QT_USE_QTSQL TRUE )
SET( QT_USE_QTNETWORK TRUE ) SET( QT_USE_QTNETWORK TRUE )
SET( QT_USE_QTXML TRUE ) SET( QT_USE_QTXML TRUE )
INCLUDE( ${QT_USE_FILE} )
INCLUDE( ${QT_USE_FILE} )
INCLUDE( ${CMAKE_MODULE_PATH}/AddAppIconMacro.cmake ) INCLUDE( ${CMAKE_MODULE_PATH}/AddAppIconMacro.cmake )
#SET( CMAKE_BUILD_TYPE "Release" ) #SET( CMAKE_BUILD_TYPE "Release" )
@@ -40,20 +40,18 @@ SET( tomahawkSources ${tomahawkSources}
infosystem/infoplugins/echonestplugin.cpp infosystem/infoplugins/echonestplugin.cpp
infosystem/infoplugins/musixmatchplugin.cpp infosystem/infoplugins/musixmatchplugin.cpp
musicscanner.cpp
scriptresolver.cpp
scrobbler.cpp
xmppbot/xmppbot.cpp xmppbot/xmppbot.cpp
web/api_v1.cpp web/api_v1.cpp
musicscanner.cpp
scriptresolver.cpp
scrobbler.cpp
tomahawkapp.cpp tomahawkapp.cpp
main.cpp main.cpp
) )
SET( tomahawkSourcesGui ${tomahawkSourcesGui} SET( tomahawkSourcesGui ${tomahawkSourcesGui}
xspfloader.cpp
utils/querylabel.cpp utils/querylabel.cpp
utils/elidedlabel.cpp utils/elidedlabel.cpp
utils/imagebutton.cpp utils/imagebutton.cpp
@@ -104,16 +102,16 @@ SET( tomahawkSourcesGui ${tomahawkSourcesGui}
widgets/newplaylistwidget.cpp widgets/newplaylistwidget.cpp
widgets/welcomewidget.cpp widgets/welcomewidget.cpp
xspfloader.cpp
transferview.cpp transferview.cpp
tomahawkwindow.cpp
tomahawktrayicon.cpp tomahawktrayicon.cpp
audiocontrols.cpp audiocontrols.cpp
settingsdialog.cpp settingsdialog.cpp
tomahawkwindow.cpp
) )
SET( tomahawkHeaders ${tomahawkHeaders} SET( tomahawkHeaders ${tomahawkHeaders}
"${TOMAHAWK_INC_DIR}/tomahawk/tomahawkapp.h" "${TOMAHAWK_INC_DIR}/tomahawk/tomahawkapp.h"
"${TOMAHAWK_INC_DIR}/tomahawk/infosystem.h" "${TOMAHAWK_INC_DIR}/tomahawk/infosystem.h"
audio/transcodeinterface.h audio/transcodeinterface.h
@@ -127,17 +125,15 @@ SET( tomahawkHeaders ${tomahawkHeaders}
infosystem/infoplugins/echonestplugin.h infosystem/infoplugins/echonestplugin.h
infosystem/infoplugins/musixmatchplugin.h infosystem/infoplugins/musixmatchplugin.h
musicscanner.h
scriptresolver.h
scrobbler.h
xmppbot/xmppbot.h xmppbot/xmppbot.h
web/api_v1.h web/api_v1.h
musicscanner.h
scriptresolver.h
scrobbler.h
) )
SET( tomahawkHeadersGui ${tomahawkHeadersGui} SET( tomahawkHeadersGui ${tomahawkHeadersGui}
xspfloader.h
utils/querylabel.h utils/querylabel.h
utils/elidedlabel.h utils/elidedlabel.h
utils/animatedcounterlabel.h utils/animatedcounterlabel.h
@@ -189,11 +185,12 @@ SET( tomahawkHeadersGui ${tomahawkHeadersGui}
widgets/newplaylistwidget.h widgets/newplaylistwidget.h
widgets/welcomewidget.h widgets/welcomewidget.h
xspfloader.h
transferview.h transferview.h
tomahawkwindow.h
tomahawktrayicon.h tomahawktrayicon.h
audiocontrols.h audiocontrols.h
settingsdialog.h settingsdialog.h
tomahawkwindow.h
) )
SET( tomahawkUI ${tomahawkUI} SET( tomahawkUI ${tomahawkUI}
@@ -204,6 +201,7 @@ SET( tomahawkUI ${tomahawkUI}
audiocontrols.ui audiocontrols.ui
sourcetree/sourcetreeitemwidget.ui sourcetree/sourcetreeitemwidget.ui
topbar/topbar.ui topbar/topbar.ui
infowidgets/sourceinfowidget.ui infowidgets/sourceinfowidget.ui
widgets/newplaylistwidget.ui widgets/newplaylistwidget.ui
widgets/welcomewidget.ui widgets/welcomewidget.ui
@@ -256,9 +254,9 @@ SET( final_src ${final_src} ${tomahawkMoc} ${tomahawkSources} ${tomahawkHeaders}
IF( "${gui}" STREQUAL "no" ) IF( "${gui}" STREQUAL "no" )
ELSE() ELSE()
qt4_wrap_ui( tomahawkUI_H ${tomahawkUI} ) qt4_wrap_ui( tomahawkUI_H ${tomahawkUI} )
qt4_wrap_cpp( tomahawkMocGui ${tomahawkHeadersGui} ) qt4_wrap_cpp( tomahawkMocGui ${tomahawkHeadersGui} )
SET( final_src ${final_src} ${tomahawkUI_H} ${tomahawkMocGui} ${tomahawkSourcesGui} ${RC_SRCS} ) SET( final_src ${final_src} ${tomahawkUI_H} ${tomahawkMocGui} ${tomahawkSourcesGui} ${RC_SRCS} )
ENDIF() ENDIF()
IF( UNIX AND NOT APPLE ) IF( UNIX AND NOT APPLE )

View File

@@ -13,16 +13,17 @@ SET( OS_SPECIFIC_LINK_LIBRARIES
) )
SET( OS_SPECIFIC_LINK_LIBRARIES SET( OS_SPECIFIC_LINK_LIBRARIES
${OS_SPECIFIC_LINK_LIBRARIES} ${OS_SPECIFIC_LINK_LIBRARIES}
mad mad
vorbisfile vorbisfile
ogg ogg
FLAC++ FLAC++
) )
IF( APPLE ) IF( APPLE )
INCLUDE( "CMakeLists.osx.txt" ) INCLUDE( "CMakeLists.osx.txt" )
ENDIF( APPLE ) ENDIF( APPLE )
IF( UNIX AND NOT APPLE ) IF( UNIX AND NOT APPLE )
INCLUDE( "CMakeLists.linux.txt" ) INCLUDE( "CMakeLists.linux.txt" )
ENDIF( UNIX AND NOT APPLE ) ENDIF( UNIX AND NOT APPLE )

View File

@@ -9,47 +9,47 @@ ADD_DEFINITIONS( -static-libgcc )
# Add manual locations to stuff: # Add manual locations to stuff:
INCLUDE_DIRECTORIES( INCLUDE_DIRECTORIES(
../../libmad-0.15.1b ../../libmad-0.15.1b
../../boost_1_43_0 ../../boost_1_43_0
../../gloox-1.0 ../../gloox-1.0
../../qjson ../../qjson
../../liblastfm/_include ../../liblastfm/_include
../../taglib-1.6.3/ ../../taglib-1.6.3/
../../taglib-1.6.3/build ../../taglib-1.6.3/build
../../taglib-1.6.3/taglib ../../taglib-1.6.3/taglib
../../taglib-1.6.3/taglib/toolkit ../../taglib-1.6.3/taglib/toolkit
) )
SET( GLOOX_LIBS SET( GLOOX_LIBS
${GLOOX_LIBS} ${GLOOX_LIBS}
gloox gloox
) )
SET( OS_SPECIFIC_LINK_LIBRARIES SET( OS_SPECIFIC_LINK_LIBRARIES
${LIBLASTFM_LIBRARY} ${LIBLASTFM_LIBRARY}
${GLOOX_LIBS} ${GLOOX_LIBS}
) )
SET( OS_SPECIFIC_LINK_LIBRARIES SET( OS_SPECIFIC_LINK_LIBRARIES
${OS_SPECIFIC_LINK_LIBRARIES} ${OS_SPECIFIC_LINK_LIBRARIES}
"secur32.dll" "secur32.dll"
"crypt32.dll" "crypt32.dll"
"${CMAKE_CURRENT_SOURCE_DIR}/../qxt/qxtweb-standalone/libqxtweb-standalone.dll" "${CMAKE_CURRENT_SOURCE_DIR}/../qxt/qxtweb-standalone/libqxtweb-standalone.dll"
"${CMAKE_CURRENT_SOURCE_DIR}/../build/src/libtomahawk/libtomahawklib.dll" "${CMAKE_CURRENT_SOURCE_DIR}/../build/src/libtomahawk/libtomahawklib.dll"
) )
SET( tomahawkSourcesGui ${tomahawkSourcesGui} audio/rtaudiooutput.cpp ) SET( tomahawkSourcesGui ${tomahawkSourcesGui} audio/rtaudiooutput.cpp )
SET( tomahawkHeadersGui ${tomahawkHeadersGui} audio/rtaudiooutput.h ) SET( tomahawkHeadersGui ${tomahawkHeadersGui} audio/rtaudiooutput.h )
SET( OS_SPECIFIC_LINK_LIBRARIES SET( OS_SPECIFIC_LINK_LIBRARIES
${OS_SPECIFIC_LINK_LIBRARIES} ${OS_SPECIFIC_LINK_LIBRARIES}
"dsound.dll" "dsound.dll"
"winmm.dll" "winmm.dll"
"iphlpapi.a" "iphlpapi.a"
"mad" "mad"
"vorbisfile" "vorbisfile"
"ogg" "ogg"
"FLAC++" "FLAC++"
"${CMAKE_CURRENT_SOURCE_DIR}/../rtaudio/librtaudio.dll" "${CMAKE_CURRENT_SOURCE_DIR}/../rtaudio/librtaudio.dll"
) )

View File

@@ -71,6 +71,9 @@ private:
QVBoxLayout* m_layout; QVBoxLayout* m_layout;
bool m_resolveOnNextLoad; bool m_resolveOnNextLoad;
// used in OnDemand mode
int m_songsSinceLastResolved;
QLabel* m_headerText; QLabel* m_headerText;
QHBoxLayout* m_headerLayout; QHBoxLayout* m_headerLayout;
QComboBox* m_modeCombo; QComboBox* m_modeCombo;

View File

@@ -3,151 +3,154 @@ project( tomahawklib )
SET( QT_USE_QTSQL TRUE ) SET( QT_USE_QTSQL TRUE )
SET( QT_USE_QTNETWORK TRUE ) SET( QT_USE_QTNETWORK TRUE )
SET( QT_USE_QTXML TRUE ) SET( QT_USE_QTXML TRUE )
include( ${QT_USE_FILE} ) include( ${QT_USE_FILE} )
add_definitions( ${QT_DEFINITIONS} ) add_definitions( ${QT_DEFINITIONS} )
add_definitions( -DQT_SHARED ) add_definitions( -DQT_SHARED )
add_definitions( -DDLLEXPORT_PRO ) add_definitions( -DDLLEXPORT_PRO )
set( libSources set( libSources
tomahawksettings.cpp <<<<<<< HEAD
sourcelist.cpp tomahawksettings.cpp
pipeline.cpp sourcelist.cpp
pipeline.cpp
artist.cpp artist.cpp
album.cpp album.cpp
collection.cpp collection.cpp
playlist.cpp playlist.cpp
pluginapi.cpp pluginapi.cpp
query.cpp query.cpp
result.cpp result.cpp
source.cpp source.cpp
sip/SipPlugin.cpp sip/SipPlugin.cpp
network/bufferiodevice.cpp network/bufferiodevice.cpp
network/msgprocessor.cpp network/msgprocessor.cpp
network/filetransferconnection.cpp network/filetransferconnection.cpp
network/dbsyncconnection.cpp network/dbsyncconnection.cpp
network/remotecollection.cpp network/remotecollection.cpp
network/portfwdthread.cpp network/portfwdthread.cpp
database/fuzzyindex.cpp database/fuzzyindex.cpp
database/databaseworker.cpp database/databaseworker.cpp
database/databaseimpl.cpp database/databaseimpl.cpp
database/databaseresolver.cpp database/databaseresolver.cpp
database/databasecommand.cpp database/databasecommand.cpp
database/databasecommandloggable.cpp database/databasecommandloggable.cpp
database/databasecommand_resolve.cpp database/databasecommand_resolve.cpp
database/databasecommand_allalbums.cpp database/databasecommand_allalbums.cpp
database/databasecommand_alltracks.cpp database/databasecommand_alltracks.cpp
database/databasecommand_addfiles.cpp database/databasecommand_addfiles.cpp
database/databasecommand_dirmtimes.cpp database/databasecommand_dirmtimes.cpp
database/databasecommand_loadfile.cpp database/databasecommand_loadfile.cpp
database/databasecommand_logplayback.cpp database/databasecommand_logplayback.cpp
database/databasecommand_addsource.cpp database/databasecommand_addsource.cpp
database/databasecommand_sourceoffline.cpp database/databasecommand_sourceoffline.cpp
database/databasecommand_collectionstats.cpp database/databasecommand_collectionstats.cpp
database/databasecommand_loadplaylistentries.cpp database/databasecommand_loadplaylistentries.cpp
database/databasecommand_modifyplaylist.cpp database/databasecommand_modifyplaylist.cpp
database/databasecommand_playbackhistory.cpp database/databasecommand_playbackhistory.cpp
database/databasecommand_setplaylistrevision.cpp database/databasecommand_setplaylistrevision.cpp
database/databasecommand_loadallplaylists.cpp database/databasecommand_loadallplaylists.cpp
database/databasecommand_createplaylist.cpp database/databasecommand_createplaylist.cpp
database/databasecommand_deleteplaylist.cpp database/databasecommand_deleteplaylist.cpp
database/databasecommand_renameplaylist.cpp database/databasecommand_renameplaylist.cpp
database/databasecommand_loadops.cpp database/databasecommand_loadops.cpp
database/databasecommand_updatesearchindex.cpp database/databasecommand_updatesearchindex.cpp
database/databasecollection.cpp database/databasecollection.cpp
database/databasecommand_setdynamicplaylistrevision.cpp database/databasecommand_setdynamicplaylistrevision.cpp
database/databasecommand_createdynamicplaylist.cpp database/databasecommand_createdynamicplaylist.cpp
database/databasecommand_loaddynamicplaylist.cpp database/databasecommand_loaddynamicplaylist.cpp
database/databasecommand_loadalldynamicplaylists.cpp database/databasecommand_loadalldynamicplaylists.cpp
database/databasecommand_deletedynamicplaylist.cpp database/databasecommand_deletedynamicplaylist.cpp
dynamic/DynamicPlaylist.cpp dynamic/DynamicPlaylist.cpp
dynamic/DynamicControl.cpp dynamic/DynamicControl.cpp
dynamic/GeneratorFactory.cpp dynamic/GeneratorFactory.cpp
dynamic/GeneratorInterface.cpp dynamic/GeneratorInterface.cpp
dynamic/echonest/EchonestGenerator.cpp dynamic/echonest/EchonestGenerator.cpp
dynamic/echonest/EchonestControl.cpp dynamic/echonest/EchonestControl.cpp
database/database.cpp database/database.cpp
network/servent.cpp network/servent.cpp
network/connection.cpp network/connection.cpp
network/controlconnection.cpp network/controlconnection.cpp
) )
set( libHeaders set( libHeaders
tomahawksettings.h tomahawksettings.h
sourcelist.h sourcelist.h
pipeline.h pipeline.h
functimeout.h functimeout.h
collection.h collection.h
pluginapi.h pluginapi.h
query.h query.h
resolver.h resolver.h
result.h result.h
source.h source.h
artist.h artist.h
album.h album.h
track.h track.h
playlist.h playlist.h
sip/SipPlugin.h sip/SipPlugin.h
database/database.h database/database.h
database/fuzzyindex.h database/fuzzyindex.h
database/databaseworker.h database/databaseworker.h
database/databaseimpl.h database/databaseimpl.h
database/databaseresolver.h database/databaseresolver.h
database/databasecommand.h database/databasecommand.h
database/databasecommandloggable.h database/databasecommandloggable.h
database/databasecommand_resolve.h database/databasecommand_resolve.h
database/databasecommand_allalbums.h database/databasecommand_allalbums.h
database/databasecommand_alltracks.h database/databasecommand_alltracks.h
database/databasecommand_addfiles.h database/databasecommand_addfiles.h
database/databasecommand_dirmtimes.h database/databasecommand_dirmtimes.h
database/databasecommand_loadfile.h database/databasecommand_loadfile.h
database/databasecommand_logplayback.h database/databasecommand_logplayback.h
database/databasecommand_addsource.h database/databasecommand_addsource.h
database/databasecommand_sourceoffline.h database/databasecommand_sourceoffline.h
database/databasecommand_collectionstats.h database/databasecommand_collectionstats.h
database/databasecommand_loadplaylistentries.h database/databasecommand_loadplaylistentries.h
database/databasecommand_modifyplaylist.h database/databasecommand_modifyplaylist.h
database/databasecommand_playbackhistory.h database/databasecommand_playbackhistory.h
database/databasecommand_setplaylistrevision.h database/databasecommand_setplaylistrevision.h
database/databasecommand_loadallplaylists.h database/databasecommand_loadallplaylists.h
database/databasecommand_createplaylist.h database/databasecommand_createplaylist.h
database/databasecommand_deleteplaylist.h database/databasecommand_deleteplaylist.h
database/databasecommand_renameplaylist.h database/databasecommand_renameplaylist.h
database/databasecommand_loadops.h database/databasecommand_loadops.h
database/databasecommand_updatesearchindex.h database/databasecommand_updatesearchindex.h
database/databasecollection.h database/databasecollection.h
database/databasecommand_setdynamicplaylistrevision.h database/databasecommand_setdynamicplaylistrevision.h
database/databasecommand_createdynamicplaylist.h database/databasecommand_createdynamicplaylist.h
database/databasecommand_loaddynamicplaylist.h database/databasecommand_loaddynamicplaylist.h
database/databasecommand_deletedynamicplaylist.h database/databasecommand_deletedynamicplaylist.h
database/databasecommand_loadalldynamicplaylists.h database/databasecommand_loadalldynamicplaylists.h
dynamic/DynamicPlaylist.h dynamic/DynamicPlaylist.h
dynamic/DynamicControl.h dynamic/DynamicControl.h
dynamic/GeneratorFactory.h dynamic/GeneratorFactory.h
dynamic/GeneratorInterface.h dynamic/GeneratorInterface.h
dynamic/echonest/EchonestGenerator.h dynamic/echonest/EchonestGenerator.h
dynamic/echonest/EchonestControl.h dynamic/echonest/EchonestControl.h
network/bufferiodevice.h network/bufferiodevice.h
network/msgprocessor.h network/msgprocessor.h
network/remotecollection.h network/remotecollection.h
network/filetransferconnection.h network/filetransferconnection.h
network/dbsyncconnection.h network/dbsyncconnection.h
network/servent.h network/servent.h
network/connection.h network/connection.h
network/controlconnection.h network/controlconnection.h
network/portfwdthread.h network/portfwdthread.h
) )
include_directories( . ${CMAKE_CURRENT_BINARY_DIR} .. include_directories( . ${CMAKE_CURRENT_BINARY_DIR} ..
@@ -165,19 +168,19 @@ add_library( tomahawklib SHARED ${libSources} ${libMoc} )
IF( WIN32 ) IF( WIN32 )
SET( OS_SPECIFIC_LINK_LIBRARIES SET( OS_SPECIFIC_LINK_LIBRARIES
${OS_SPECIFIC_LINK_LIBRARIES} ${OS_SPECIFIC_LINK_LIBRARIES}
"iphlpapi.a" "iphlpapi.a"
"ws2_32.dll" "ws2_32.dll"
"dnsapi.dll" "dnsapi.dll"
) )
ENDIF( WIN32 ) ENDIF( WIN32 )
target_link_libraries( tomahawklib target_link_libraries( tomahawklib
${QT_LIBRARIES} ${QT_LIBRARIES}
${OS_SPECIFIC_LINK_LIBRARIES} ${OS_SPECIFIC_LINK_LIBRARIES}
${LIBECHONEST_LIBRARY} ${LIBECHONEST_LIBRARY}
portfwd portfwd
qjson qjson
) )
install( TARGETS tomahawklib DESTINATION lib ) install( TARGETS tomahawklib DESTINATION lib )

View File

@@ -64,7 +64,7 @@ DatabaseWorker::doWork( QSharedPointer<DatabaseCommand> cmd )
if( cmd->doesMutates() ) if( cmd->doesMutates() )
{ {
bool transok = m_dbimpl->database().transaction(); bool transok = m_dbimpl->database().transaction();
Q_ASSERT( transok ); // Q_ASSERT( transok );
Q_UNUSED( transok ); Q_UNUSED( transok );
} }
try try
@@ -141,7 +141,7 @@ DatabaseWorker::doWork( QSharedPointer<DatabaseCommand> cmd )
if( cmd->doesMutates() ) if( cmd->doesMutates() )
m_dbimpl->database().rollback(); m_dbimpl->database().rollback();
Q_ASSERT( false ); // Q_ASSERT( false );
} }
catch(...) catch(...)
{ {

View File

@@ -33,7 +33,9 @@ namespace Tomahawk {
* - They expose a list of controls that this generator currently is operating on * - They expose a list of controls that this generator currently is operating on
* - They have a mode of OnDemand or Static * - They have a mode of OnDemand or Static
* *
* And they generate tracks * And they generate tracks in two ways:
* - Statically (ask for X tracks, get X tracks)
* - On Demand (as for next track, ask for next track again, etc)
*/ */
class GeneratorInterface : public QObject class GeneratorInterface : public QObject
{ {
@@ -56,16 +58,24 @@ public:
/// A logo to display for this generator, if it has one /// A logo to display for this generator, if it has one
virtual QPixmap logo(); virtual QPixmap logo();
/** /**
* Generate tracks from the controls in this playlist. If the current mode is * Generate tracks from the controls in this playlist. If this generator is in static
* OnDemand, then \p number is not taken into account. If this generator is in static * mode, then it will return the desired number of tracks. If the generator is in OnDemand
* mode, then it will return the desired number of tracks * mode, this will do nothing.
* *
* Connect to the generated() signal for the results. * Connect to the generated() signal for the results.
* *
*/ */
virtual void generate( int number = -1 ) {} virtual void generate( int number = -1 ) {}
/**
* Starts an on demand session for this generator. Listen to the nextTrack() signal to get
* the first generated track
*/
virtual void startOnDemand() {}
/// The type of this generator /// The type of this generator
QString type() const { return m_type; } QString type() const { return m_type; }
@@ -81,6 +91,7 @@ public:
signals: signals:
void generated( const QList< Tomahawk::query_ptr>& queries ); void generated( const QList< Tomahawk::query_ptr>& queries );
void nextTrackGenerated( const Tomahawk::query_ptr& track );
protected: protected:
QString m_type; QString m_type;