From f3dc1a08009ba87668a98c58367f99476535e42e Mon Sep 17 00:00:00 2001 From: Jason Herskowitz Date: Sun, 7 Aug 2011 16:44:57 -0400 Subject: [PATCH 01/22] Trying some new matching icons for the drag indictors for songs --- data/icons/audio-x-generic-16x16.png | Bin 643 -> 4346 bytes data/icons/audio-x-generic-32x32.png | Bin 1485 -> 7434 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/data/icons/audio-x-generic-16x16.png b/data/icons/audio-x-generic-16x16.png index 017b00da90f5f743e448303e13a74aed5f27494f..b5715ad5876437ae4e9299600da4387831c6de85 100644 GIT binary patch literal 4346 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 V^Qh&DhaXCC%=Me-Tj3MG{6CBJ%*Fr! delta 619 zcmV-x0+jvwA%g{wBYyw{b3#c}2nYxWd?ZFz(yfe;~%Vj8|W|tMT+ih5ug?g=~=QPE2_Q@Mb z*tU&Ut3?W~K7)8X&Jxq6q!s0pSvIN>i9W+d^RT`|^V0tK z2YB}LAvOzN@YZ_`^Y2&6^7%BIO>{c{VB3~Y=Qyn(@U~dM{l$AI{(6jS;uhXKddFQG zjRtbL9AxOVmP%Xi0qiqDN>;M0WJ%BSB+W+h6p5h-vfuB^ot<6IZEUQ6pnk+7=mM0y zg3RdkdU9`Xe_VW7TxVhklixW-S51`}+NR>Z+Ixr@y8u>P6SCqpiBbRn002ovPDHLk FV1iefAo&0Q diff --git a/data/icons/audio-x-generic-32x32.png b/data/icons/audio-x-generic-32x32.png index 8a30401bfaaab7512dfdfc799c9c1c4db9d554d7..5a2c069d3f92a2b7224d1f48bcdcfba534014987 100644 GIT binary patch literal 7434 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 literal 1485 zcmbu<2~*QY7zf~m6uAt+60s305jmnF0*Y4DLShi8$R%Z>(pD^Dff10~1B=vZyo!WI zIYd!G$`Py+5JAX6FdPO$Kmw6)21tMehzCK=E`L8lpV|HG?9R^4?Cd*x&DYxVt);eK4}*fb1G+I?^*z~pZasM_^+UJ=H-vGvIe&I4C(e`FB=qdgDzR#G%pY^uofzBB-;dxVX4P zQc_x4$`F(>%a^bDd?xROw79yuy0*5K#bUA9oMl{YU0ofI$E&Zee+8*u@cH}(sE5}e zYiMk0dj0yf0BUIw3Wcq$tsc^^z`)hA=Hw7XaF%eFgPe1lp%%?!-x_2@cZErNG>0dE98(uAy-RJ85>Xk$ylZ`7E7j0)-j9{_<>`5jDB)vPGaVWyX z4|_$}kb5nR!Fc$Qmmms1BMKEo2H^q%jHQa+KkanlCw+{u<9tTHd2|8(I<<>_;^4Eq zzAAGQE%SjyV|F$s;b$70y!j^M7D617nn+!YOxW7G+XC& zYe{rMEkekN4ow>}n-g3+`>pK~{^(9SeV^*j8CGm@$e@?8Lbx^SZg}a=(n{+2J8qso zw~(8c#7s;-48%)b7yikxy7#iO^FB>8NM>9KyV~4J>dV);d{FMgX!BSqQLpxx9Q)L1 zQyOKnsbkd*x~MNxyXBeqj712~GQ~>AzG}Oa6Nho7{+3KN#`pb1avpO16rEL?rq$n| z#fj+?A2;ati&DF!xRtE)a{&@Ey z(MNdUn;*bVuf=Lps%m)Dtl4ZoyPg4U$(ZVv1@93j&%?ZHf9NR*tpET3 From 58c18acd01cab9add75ea44e559896e86f8b7179 Mon Sep 17 00:00:00 2001 From: Leo Franchi Date: Sun, 7 Aug 2011 17:08:35 -0400 Subject: [PATCH 02/22] Load automatic playlists and stations in Newest Stations and Playlists list... --- .../playlist/dynamic/DynamicPlaylist.cpp | 18 ++++++++++++++++++ .../playlist/dynamic/DynamicPlaylist.h | 2 ++ .../widgets/welcomeplaylistmodel.cpp | 12 +++++++----- src/libtomahawk/widgets/welcomeplaylistmodel.h | 3 +-- 4 files changed, 28 insertions(+), 7 deletions(-) diff --git a/src/libtomahawk/playlist/dynamic/DynamicPlaylist.cpp b/src/libtomahawk/playlist/dynamic/DynamicPlaylist.cpp index 80e566fcc..04e6d9e03 100644 --- a/src/libtomahawk/playlist/dynamic/DynamicPlaylist.cpp +++ b/src/libtomahawk/playlist/dynamic/DynamicPlaylist.cpp @@ -121,6 +121,24 @@ DynamicPlaylist::setMode( int mode ) m_generator->setMode( (GeneratorMode)mode ); } +dynplaylist_ptr +DynamicPlaylist::load( const QString& guid ) +{ + dynplaylist_ptr p; + + foreach( const Tomahawk::source_ptr& source, SourceList::instance()->sources() ) + { + p = source->collection()->autoPlaylist( guid ); + if ( p.isNull() ) + p = source->collection()->station( guid ); + + if( !p.isNull() ) + return p; + } + + return p; +} + dynplaylist_ptr DynamicPlaylist::create( const Tomahawk::source_ptr& author, diff --git a/src/libtomahawk/playlist/dynamic/DynamicPlaylist.h b/src/libtomahawk/playlist/dynamic/DynamicPlaylist.h index 22268ee7c..63e29e9fe 100644 --- a/src/libtomahawk/playlist/dynamic/DynamicPlaylist.h +++ b/src/libtomahawk/playlist/dynamic/DynamicPlaylist.h @@ -91,6 +91,8 @@ class DLLEXPORT DynamicPlaylist : public Playlist public: virtual ~DynamicPlaylist(); + static Tomahawk::dynplaylist_ptr load( const QString& guid ); + /// Generate an empty dynamic playlist with default generator static Tomahawk::dynplaylist_ptr create( const source_ptr& author, const QString& guid, diff --git a/src/libtomahawk/widgets/welcomeplaylistmodel.cpp b/src/libtomahawk/widgets/welcomeplaylistmodel.cpp index 8c19b2e66..fe855885c 100644 --- a/src/libtomahawk/widgets/welcomeplaylistmodel.cpp +++ b/src/libtomahawk/widgets/welcomeplaylistmodel.cpp @@ -1,6 +1,5 @@ /* - - Copyright (C) 2011 Leo Franchi + Copyright (C) 2011 Leo Franchi This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -20,10 +19,11 @@ #include "welcomeplaylistmodel.h" -#include -#include