mirror of
https://github.com/tomahawk-player/tomahawk.git
synced 2025-08-18 20:04:00 +02:00
* Use DynamicQmlWidget for stations.
This commit is contained in:
@@ -176,6 +176,7 @@ if(NOT Qt5Core_DIR)
|
||||
set(QT_USE_QTNETWORK TRUE)
|
||||
set(QT_USE_QTXML TRUE)
|
||||
set(QT_USE_QTWEBKIT TRUE)
|
||||
set(QT_USE_QTDECLARATIVE TRUE)
|
||||
|
||||
include( ${QT_USE_FILE} )
|
||||
endmacro()
|
||||
|
@@ -1,11 +1,11 @@
|
||||
#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} )
|
||||
|
||||
set(NEEDED_QT4_COMPONENTS "QtCore" "QtXml" "QtNetwork")
|
||||
set(NEEDED_QT4_COMPONENTS "QtCore" "QtXml" "QtNetwork" "QtDeclarative")
|
||||
if(BUILD_GUI)
|
||||
list(APPEND NEEDED_QT4_COMPONENTS "QtGui" "QtWebkit" "QtUiTools" "QtSvg")
|
||||
list(APPEND NEEDED_QT4_COMPONENTS "QtGui" "QtWebkit" "QtUiTools" "QtSvg" "QtDeclarative")
|
||||
endif()
|
||||
|
||||
find_package(Qt4 4.7.0 COMPONENTS ${NEEDED_QT4_COMPONENTS})
|
||||
|
@@ -90,6 +90,28 @@
|
||||
<file>data/images/star-unstarred.svg</file>
|
||||
<file>data/images/apply-check.svg</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-32x32.png</file>
|
||||
<file>data/icons/tomahawk-icon-64x64.png</file>
|
||||
@@ -152,5 +174,11 @@
|
||||
<file>data/images/refresh.svg</file>
|
||||
<file>data/images/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>
|
||||
</RCC>
|
||||
|
@@ -39,7 +39,7 @@
|
||||
#include "database/DatabaseResolver.h"
|
||||
#include "playlist/dynamic/GeneratorFactory.h"
|
||||
#include "playlist/dynamic/echonest/EchonestGenerator.h"
|
||||
#include "playlist/dynamic/database/DatabaseGenerator.h"
|
||||
//#include "playlist/dynamic/database/DatabaseGenerator.h"
|
||||
#include "playlist/XspfUpdater.h"
|
||||
#include "network/Servent.h"
|
||||
#include "web/Api_v1.h"
|
||||
@@ -219,8 +219,8 @@ TomahawkApp::init()
|
||||
tDebug() << "Init Echonest Factory.";
|
||||
GeneratorFactory::registerFactory( "echonest", new EchonestFactory );
|
||||
#endif
|
||||
tDebug() << "Init Database Factory.";
|
||||
GeneratorFactory::registerFactory( "database", new DatabaseFactory );
|
||||
/* tDebug() << "Init Database Factory.";
|
||||
GeneratorFactory::registerFactory( "database", new DatabaseFactory );*/
|
||||
|
||||
// Register shortcut handler for this platform
|
||||
#ifdef Q_WS_MAC
|
||||
|
@@ -77,19 +77,21 @@ set( libGuiSources
|
||||
playlist/PlayableItem.cpp
|
||||
playlist/SingleTrackPlaylistInterface.cpp
|
||||
|
||||
playlist/dynamic/GeneratorInterface.cpp
|
||||
playlist/dynamic/DynamicPlaylist.cpp
|
||||
playlist/dynamic/DynamicView.cpp
|
||||
playlist/dynamic/DynamicModel.cpp
|
||||
playlist/dynamic/echonest/EchonestGenerator.cpp
|
||||
playlist/dynamic/echonest/EchonestControl.cpp
|
||||
playlist/dynamic/echonest/EchonestSteerer.cpp
|
||||
playlist/dynamic/widgets/DynamicWidget.cpp
|
||||
# playlist/dynamic/echonest/EchonestSteerer.cpp
|
||||
# playlist/dynamic/widgets/DynamicWidget.cpp
|
||||
playlist/dynamic/widgets/DynamicQmlWidget.cpp
|
||||
playlist/dynamic/widgets/DynamicControlWrapper.cpp
|
||||
playlist/dynamic/widgets/DynamicControlList.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/CollapsibleControls.cpp
|
||||
# playlist/dynamic/widgets/DynamicSetupWidget.cpp
|
||||
|
||||
resolvers/ExternalResolverGui.cpp
|
||||
resolvers/ScriptResolver.cpp
|
||||
@@ -121,6 +123,8 @@ set( libGuiSources
|
||||
utils/ResultUrlChecker.cpp
|
||||
utils/NetworkReply.cpp
|
||||
|
||||
widgets/DeclarativeCoverArtProvider.cpp
|
||||
widgets/DeclarativeView.cpp
|
||||
widgets/AnimatedCounterLabel.cpp
|
||||
widgets/BasicHeader.cpp
|
||||
widgets/FilterHeader.cpp
|
||||
@@ -314,7 +318,7 @@ list(APPEND libSources
|
||||
playlist/dynamic/GeneratorInterface.cpp
|
||||
playlist/dynamic/DynamicPlaylistRevision.cpp
|
||||
playlist/XspfUpdater.cpp
|
||||
playlist/dynamic/database/DatabaseGenerator.cpp
|
||||
# playlist/dynamic/database/DatabaseGenerator.cpp
|
||||
playlist/dynamic/database/DatabaseControl.cpp
|
||||
playlist/dynamic/DynamicControl.cpp
|
||||
|
||||
@@ -497,6 +501,7 @@ TARGET_LINK_LIBRARIES( tomahawklib
|
||||
${QT_QTXML_LIBRARY}
|
||||
${QT_QTSVG_LIBRARY}
|
||||
${QT_QTCORE_LIBRARY}
|
||||
${QT_QTDECLARATIVE_LIBRARY}
|
||||
${OS_SPECIFIC_LINK_LIBRARIES}
|
||||
${CMAKE_THREAD_LIBS_INIT}
|
||||
${LINK_LIBRARIES}
|
||||
|
@@ -42,7 +42,8 @@
|
||||
#include "playlist/InboxView.h"
|
||||
#include "playlist/PlaylistLargeItemDelegate.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/WelcomeWidget.h"
|
||||
@@ -193,8 +194,8 @@ ViewManager::playlistForPage( ViewPage* page ) const
|
||||
{
|
||||
p = dynamic_cast< PlaylistView* >( page )->playlistModel()->playlist();
|
||||
}
|
||||
else if ( dynamic_cast< DynamicWidget* >( page ) )
|
||||
p = dynamic_cast< DynamicWidget* >( page )->playlist();
|
||||
else if ( dynamic_cast< DynamicQmlWidget* >( page ) )
|
||||
p = dynamic_cast< DynamicQmlWidget* >( page )->playlist();
|
||||
|
||||
return p;
|
||||
}
|
||||
@@ -228,7 +229,7 @@ ViewManager::show( const Tomahawk::dynplaylist_ptr& playlist )
|
||||
{
|
||||
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();
|
||||
}
|
||||
@@ -816,7 +817,7 @@ ViewManager::playlistForInterface( Tomahawk::playlistinterface_ptr interface ) c
|
||||
Tomahawk::dynplaylist_ptr
|
||||
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 )
|
||||
{
|
||||
|
@@ -59,7 +59,7 @@ class InboxModel;
|
||||
|
||||
namespace Tomahawk
|
||||
{
|
||||
class DynamicWidget;
|
||||
class DynamicQmlWidget;
|
||||
}
|
||||
|
||||
class DLLEXPORT ViewManager : public QObject
|
||||
@@ -195,7 +195,7 @@ private:
|
||||
|
||||
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::artist_ptr, QPointer<ArtistInfoWidget> > m_artistViews;
|
||||
QHash< Tomahawk::album_ptr, QPointer<AlbumInfoWidget> > m_albumViews;
|
||||
|
Reference in New Issue
Block a user