mirror of
https://github.com/tomahawk-player/tomahawk.git
synced 2025-08-22 21:54:00 +02:00
* Use DynamicQmlWidget for stations.
This commit is contained in:
committed by
Michael Zanetti
parent
f3a50bedbd
commit
99ef263ba2
@@ -176,6 +176,7 @@ if(NOT Qt5Core_DIR)
|
|||||||
set(QT_USE_QTNETWORK TRUE)
|
set(QT_USE_QTNETWORK TRUE)
|
||||||
set(QT_USE_QTXML TRUE)
|
set(QT_USE_QTXML TRUE)
|
||||||
set(QT_USE_QTWEBKIT TRUE)
|
set(QT_USE_QTWEBKIT TRUE)
|
||||||
|
set(QT_USE_QTDECLARATIVE TRUE)
|
||||||
|
|
||||||
include( ${QT_USE_FILE} )
|
include( ${QT_USE_FILE} )
|
||||||
endmacro()
|
endmacro()
|
||||||
|
@@ -1,11 +1,11 @@
|
|||||||
#FIXME: this only handles qt4 and duplicates top level cmakelists: how can we reduce code duplication?
|
#FIXME: this only handles qt4 and duplicates top level cmakelists: how can we reduce code duplication?
|
||||||
|
|
||||||
find_package(Qt4 COMPONENTS QtNetwork QtCore QtGui QtSql REQUIRED)
|
find_package(Qt4 COMPONENTS QtNetwork QtCore QtGui QtSql QtDeclarative REQUIRED)
|
||||||
include( ${QT_USE_FILE} )
|
include( ${QT_USE_FILE} )
|
||||||
|
|
||||||
set(NEEDED_QT4_COMPONENTS "QtCore" "QtXml" "QtNetwork")
|
set(NEEDED_QT4_COMPONENTS "QtCore" "QtXml" "QtNetwork" "QtDeclarative")
|
||||||
if(BUILD_GUI)
|
if(BUILD_GUI)
|
||||||
list(APPEND NEEDED_QT4_COMPONENTS "QtGui" "QtWebkit" "QtUiTools" "QtSvg")
|
list(APPEND NEEDED_QT4_COMPONENTS "QtGui" "QtWebkit" "QtUiTools" "QtSvg" "QtDeclarative")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
find_package(Qt4 4.7.0 COMPONENTS ${NEEDED_QT4_COMPONENTS})
|
find_package(Qt4 4.7.0 COMPONENTS ${NEEDED_QT4_COMPONENTS})
|
||||||
|
@@ -90,6 +90,28 @@
|
|||||||
<file>data/images/star-unstarred.svg</file>
|
<file>data/images/star-unstarred.svg</file>
|
||||||
<file>data/images/apply-check.svg</file>
|
<file>data/images/apply-check.svg</file>
|
||||||
<file>data/stylesheets/topbar-radiobuttons.css</file>
|
<file>data/stylesheets/topbar-radiobuttons.css</file>
|
||||||
|
<file>data/qml/tomahawkimports/CoverImage.qml</file>
|
||||||
|
<file>data/qml/tomahawkimports/ArtistView.qml</file>
|
||||||
|
<file>data/qml/tomahawkimports/HeaderLabel.qml</file>
|
||||||
|
<file>data/qml/tomahawkimports/TagCloud.qml</file>
|
||||||
|
<file>data/qml/tomahawkimports/ScrollBar.qml</file>
|
||||||
|
<file>data/qml/tomahawkimports/InputField.qml</file>
|
||||||
|
<file>data/qml/tomahawkimports/Button.qml</file>
|
||||||
|
<file>data/qml/tomahawkimports/DoubleSlider.qml</file>
|
||||||
|
<file>data/qml/tomahawkimports/RoundedButton.qml</file>
|
||||||
|
<file>data/qml/tomahawkimports/PushButton.qml</file>
|
||||||
|
<file>data/qml/tomahawkimports/CoverFlip.qml</file>
|
||||||
|
<file>data/qml/tomahawkimports/BusyIndicator.qml</file>
|
||||||
|
<file>data/qml/StationView.qml</file>
|
||||||
|
<file>data/qml/stations/StationCreatorPage1.qml</file>
|
||||||
|
<file>data/qml/stations/StationCreatorPage2.qml</file>
|
||||||
|
<file>data/qml/stations/CreateByArtist.qml</file>
|
||||||
|
<file>data/qml/stations/StationConfig.qml</file>
|
||||||
|
<file>data/qml/QmlGridView.qml</file>
|
||||||
|
<file>data/qml/stations/CreateByGenre.qml</file>
|
||||||
|
<file>data/qml/tomahawkimports/FlexibleHeader.qml</file>
|
||||||
|
<file>data/qml/tomahawkimports/ToggleViewButtons.qml</file>
|
||||||
|
<file>data/qml/DeclarativeHeader.qml</file>
|
||||||
<file>data/icons/tomahawk-icon-16x16.png</file>
|
<file>data/icons/tomahawk-icon-16x16.png</file>
|
||||||
<file>data/icons/tomahawk-icon-32x32.png</file>
|
<file>data/icons/tomahawk-icon-32x32.png</file>
|
||||||
<file>data/icons/tomahawk-icon-64x64.png</file>
|
<file>data/icons/tomahawk-icon-64x64.png</file>
|
||||||
@@ -152,5 +174,11 @@
|
|||||||
<file>data/images/refresh.svg</file>
|
<file>data/images/refresh.svg</file>
|
||||||
<file>data/images/inbox.svg</file>
|
<file>data/images/inbox.svg</file>
|
||||||
<file>data/images/new-inbox.svg</file>
|
<file>data/images/new-inbox.svg</file>
|
||||||
|
<file>data/images/inputfield-border.svg</file>
|
||||||
|
<file>data/images/search-box-dismiss-x.svg</file>
|
||||||
|
<file>data/images/loading-animation.svg</file>
|
||||||
|
<file>data/images/station-artist.svg</file>
|
||||||
|
<file>data/images/station-genre.svg</file>
|
||||||
|
<file>data/images/station-year.svg</file>
|
||||||
</qresource>
|
</qresource>
|
||||||
</RCC>
|
</RCC>
|
||||||
|
@@ -39,7 +39,7 @@
|
|||||||
#include "database/DatabaseResolver.h"
|
#include "database/DatabaseResolver.h"
|
||||||
#include "playlist/dynamic/GeneratorFactory.h"
|
#include "playlist/dynamic/GeneratorFactory.h"
|
||||||
#include "playlist/dynamic/echonest/EchonestGenerator.h"
|
#include "playlist/dynamic/echonest/EchonestGenerator.h"
|
||||||
#include "playlist/dynamic/database/DatabaseGenerator.h"
|
//#include "playlist/dynamic/database/DatabaseGenerator.h"
|
||||||
#include "playlist/XspfUpdater.h"
|
#include "playlist/XspfUpdater.h"
|
||||||
#include "network/Servent.h"
|
#include "network/Servent.h"
|
||||||
#include "web/Api_v1.h"
|
#include "web/Api_v1.h"
|
||||||
@@ -219,8 +219,8 @@ TomahawkApp::init()
|
|||||||
tDebug() << "Init Echonest Factory.";
|
tDebug() << "Init Echonest Factory.";
|
||||||
GeneratorFactory::registerFactory( "echonest", new EchonestFactory );
|
GeneratorFactory::registerFactory( "echonest", new EchonestFactory );
|
||||||
#endif
|
#endif
|
||||||
tDebug() << "Init Database Factory.";
|
/* tDebug() << "Init Database Factory.";
|
||||||
GeneratorFactory::registerFactory( "database", new DatabaseFactory );
|
GeneratorFactory::registerFactory( "database", new DatabaseFactory );*/
|
||||||
|
|
||||||
// Register shortcut handler for this platform
|
// Register shortcut handler for this platform
|
||||||
#ifdef Q_WS_MAC
|
#ifdef Q_WS_MAC
|
||||||
|
@@ -77,19 +77,21 @@ set( libGuiSources
|
|||||||
playlist/PlayableItem.cpp
|
playlist/PlayableItem.cpp
|
||||||
playlist/SingleTrackPlaylistInterface.cpp
|
playlist/SingleTrackPlaylistInterface.cpp
|
||||||
|
|
||||||
|
playlist/dynamic/GeneratorInterface.cpp
|
||||||
playlist/dynamic/DynamicPlaylist.cpp
|
playlist/dynamic/DynamicPlaylist.cpp
|
||||||
playlist/dynamic/DynamicView.cpp
|
playlist/dynamic/DynamicView.cpp
|
||||||
playlist/dynamic/DynamicModel.cpp
|
playlist/dynamic/DynamicModel.cpp
|
||||||
playlist/dynamic/echonest/EchonestGenerator.cpp
|
playlist/dynamic/echonest/EchonestGenerator.cpp
|
||||||
playlist/dynamic/echonest/EchonestControl.cpp
|
playlist/dynamic/echonest/EchonestControl.cpp
|
||||||
playlist/dynamic/echonest/EchonestSteerer.cpp
|
# playlist/dynamic/echonest/EchonestSteerer.cpp
|
||||||
playlist/dynamic/widgets/DynamicWidget.cpp
|
# playlist/dynamic/widgets/DynamicWidget.cpp
|
||||||
|
playlist/dynamic/widgets/DynamicQmlWidget.cpp
|
||||||
playlist/dynamic/widgets/DynamicControlWrapper.cpp
|
playlist/dynamic/widgets/DynamicControlWrapper.cpp
|
||||||
playlist/dynamic/widgets/DynamicControlList.cpp
|
# playlist/dynamic/widgets/DynamicControlList.cpp
|
||||||
playlist/dynamic/widgets/ReadOrWriteWidget.cpp
|
playlist/dynamic/widgets/ReadOrWriteWidget.cpp
|
||||||
playlist/dynamic/widgets/MiscControlWidgets.cpp
|
playlist/dynamic/widgets/MiscControlWidgets.cpp
|
||||||
playlist/dynamic/widgets/CollapsibleControls.cpp
|
# playlist/dynamic/widgets/CollapsibleControls.cpp
|
||||||
playlist/dynamic/widgets/DynamicSetupWidget.cpp
|
# playlist/dynamic/widgets/DynamicSetupWidget.cpp
|
||||||
|
|
||||||
resolvers/ExternalResolverGui.cpp
|
resolvers/ExternalResolverGui.cpp
|
||||||
resolvers/ScriptResolver.cpp
|
resolvers/ScriptResolver.cpp
|
||||||
@@ -121,6 +123,8 @@ set( libGuiSources
|
|||||||
utils/ResultUrlChecker.cpp
|
utils/ResultUrlChecker.cpp
|
||||||
utils/NetworkReply.cpp
|
utils/NetworkReply.cpp
|
||||||
|
|
||||||
|
widgets/DeclarativeCoverArtProvider.cpp
|
||||||
|
widgets/DeclarativeView.cpp
|
||||||
widgets/AnimatedCounterLabel.cpp
|
widgets/AnimatedCounterLabel.cpp
|
||||||
widgets/BasicHeader.cpp
|
widgets/BasicHeader.cpp
|
||||||
widgets/FilterHeader.cpp
|
widgets/FilterHeader.cpp
|
||||||
@@ -314,7 +318,7 @@ list(APPEND libSources
|
|||||||
playlist/dynamic/GeneratorInterface.cpp
|
playlist/dynamic/GeneratorInterface.cpp
|
||||||
playlist/dynamic/DynamicPlaylistRevision.cpp
|
playlist/dynamic/DynamicPlaylistRevision.cpp
|
||||||
playlist/XspfUpdater.cpp
|
playlist/XspfUpdater.cpp
|
||||||
playlist/dynamic/database/DatabaseGenerator.cpp
|
# playlist/dynamic/database/DatabaseGenerator.cpp
|
||||||
playlist/dynamic/database/DatabaseControl.cpp
|
playlist/dynamic/database/DatabaseControl.cpp
|
||||||
playlist/dynamic/DynamicControl.cpp
|
playlist/dynamic/DynamicControl.cpp
|
||||||
|
|
||||||
@@ -497,6 +501,7 @@ TARGET_LINK_LIBRARIES( tomahawklib
|
|||||||
${QT_QTXML_LIBRARY}
|
${QT_QTXML_LIBRARY}
|
||||||
${QT_QTSVG_LIBRARY}
|
${QT_QTSVG_LIBRARY}
|
||||||
${QT_QTCORE_LIBRARY}
|
${QT_QTCORE_LIBRARY}
|
||||||
|
${QT_QTDECLARATIVE_LIBRARY}
|
||||||
${OS_SPECIFIC_LINK_LIBRARIES}
|
${OS_SPECIFIC_LINK_LIBRARIES}
|
||||||
${CMAKE_THREAD_LIBS_INIT}
|
${CMAKE_THREAD_LIBS_INIT}
|
||||||
${LINK_LIBRARIES}
|
${LINK_LIBRARIES}
|
||||||
|
@@ -42,7 +42,8 @@
|
|||||||
#include "playlist/InboxView.h"
|
#include "playlist/InboxView.h"
|
||||||
#include "playlist/PlaylistLargeItemDelegate.h"
|
#include "playlist/PlaylistLargeItemDelegate.h"
|
||||||
#include "playlist/RecentlyPlayedModel.h"
|
#include "playlist/RecentlyPlayedModel.h"
|
||||||
#include "playlist/dynamic/widgets/DynamicWidget.h"
|
//#include "playlist/dynamic/widgets/DynamicWidget.h"
|
||||||
|
#include "playlist/dynamic/widgets/DynamicQmlWidget.h"
|
||||||
|
|
||||||
#include "widgets/NewReleasesWidget.h"
|
#include "widgets/NewReleasesWidget.h"
|
||||||
#include "widgets/WelcomeWidget.h"
|
#include "widgets/WelcomeWidget.h"
|
||||||
@@ -193,8 +194,8 @@ ViewManager::playlistForPage( ViewPage* page ) const
|
|||||||
{
|
{
|
||||||
p = dynamic_cast< PlaylistView* >( page )->playlistModel()->playlist();
|
p = dynamic_cast< PlaylistView* >( page )->playlistModel()->playlist();
|
||||||
}
|
}
|
||||||
else if ( dynamic_cast< DynamicWidget* >( page ) )
|
else if ( dynamic_cast< DynamicQmlWidget* >( page ) )
|
||||||
p = dynamic_cast< DynamicWidget* >( page )->playlist();
|
p = dynamic_cast< DynamicQmlWidget* >( page )->playlist();
|
||||||
|
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
@@ -228,7 +229,7 @@ ViewManager::show( const Tomahawk::dynplaylist_ptr& playlist )
|
|||||||
{
|
{
|
||||||
if ( !m_dynamicWidgets.contains( playlist ) || m_dynamicWidgets.value( playlist ).isNull() )
|
if ( !m_dynamicWidgets.contains( playlist ) || m_dynamicWidgets.value( playlist ).isNull() )
|
||||||
{
|
{
|
||||||
m_dynamicWidgets[ playlist ] = new Tomahawk::DynamicWidget( playlist, m_stack );
|
m_dynamicWidgets[ playlist ] = new Tomahawk::DynamicQmlWidget( playlist, m_stack );
|
||||||
|
|
||||||
playlist->resolve();
|
playlist->resolve();
|
||||||
}
|
}
|
||||||
@@ -816,7 +817,7 @@ ViewManager::playlistForInterface( Tomahawk::playlistinterface_ptr interface ) c
|
|||||||
Tomahawk::dynplaylist_ptr
|
Tomahawk::dynplaylist_ptr
|
||||||
ViewManager::dynamicPlaylistForInterface( Tomahawk::playlistinterface_ptr interface ) const
|
ViewManager::dynamicPlaylistForInterface( Tomahawk::playlistinterface_ptr interface ) const
|
||||||
{
|
{
|
||||||
foreach ( QPointer<DynamicWidget> view, m_dynamicWidgets.values() )
|
foreach ( QPointer<DynamicQmlWidget> view, m_dynamicWidgets.values() )
|
||||||
{
|
{
|
||||||
if ( !view.isNull() && view.data()->playlistInterface() == interface )
|
if ( !view.isNull() && view.data()->playlistInterface() == interface )
|
||||||
{
|
{
|
||||||
|
@@ -59,7 +59,7 @@ class InboxModel;
|
|||||||
|
|
||||||
namespace Tomahawk
|
namespace Tomahawk
|
||||||
{
|
{
|
||||||
class DynamicWidget;
|
class DynamicQmlWidget;
|
||||||
}
|
}
|
||||||
|
|
||||||
class DLLEXPORT ViewManager : public QObject
|
class DLLEXPORT ViewManager : public QObject
|
||||||
@@ -195,7 +195,7 @@ private:
|
|||||||
|
|
||||||
QList< Tomahawk::collection_ptr > m_superCollections;
|
QList< Tomahawk::collection_ptr > m_superCollections;
|
||||||
|
|
||||||
QHash< Tomahawk::dynplaylist_ptr, QPointer<Tomahawk::DynamicWidget> > m_dynamicWidgets;
|
QHash< Tomahawk::dynplaylist_ptr, QPointer<Tomahawk::DynamicQmlWidget> > m_dynamicWidgets;
|
||||||
QHash< Tomahawk::collection_ptr, QPointer<TreeWidget> > m_treeWidgets;
|
QHash< Tomahawk::collection_ptr, QPointer<TreeWidget> > m_treeWidgets;
|
||||||
QHash< Tomahawk::artist_ptr, QPointer<ArtistInfoWidget> > m_artistViews;
|
QHash< Tomahawk::artist_ptr, QPointer<ArtistInfoWidget> > m_artistViews;
|
||||||
QHash< Tomahawk::album_ptr, QPointer<AlbumInfoWidget> > m_albumViews;
|
QHash< Tomahawk::album_ptr, QPointer<AlbumInfoWidget> > m_albumViews;
|
||||||
|
Reference in New Issue
Block a user