Fwd: Do not show under various artists
Seb Ruiz
ruiz at kde.org
Tue Nov 11 05:00:53 CET 2008
---------- Forwarded message ----------
From: Seb Ruiz <ruiz at kde.org>
Date: 2008/11/11
Subject: Re: Do not show under various artists
To: Amarok Mailing List <amarok at kde.org>
Even though the patch seems perfectly valid...
To be honest I suggest that we rethink compilation handling before we
release Amarok 2. At least, rethink the database schema. We have a big
problem in that we lose compilation information on a rescan.
Additionally, I'd like to see a new column added to the albums table
'compilation boolean' which holds the information about the various
artist value. Either true/false, or null if there has been no explicit
value set.
This doesn't solve persistance across rescans, which I think is an
important feature we should strive to achieve.
2008/11/11 Gary Steinert <gary.steinert at gmail.com>:
> This is a patch implementing the 'Do not show under Various Artists' context
> menu action in the collection browser.
> As far as I can tell, this isn't the prettiest of patches, but it gets the job
> done.
> Could someone please look this over and give me a nudge in the right direction
> if it's not up to scratch. If I hear nothing in 48 hours I'll commit anyway.
>
> Index: src/collection/sqlcollection/SqlMeta.cpp
> ===================================================================
> --- src/collection/sqlcollection/SqlMeta.cpp (revision 882361)
> +++ src/collection/sqlcollection/SqlMeta.cpp (working copy)
> @@ -1471,7 +1471,16 @@
> else
> {
> debug() << "User selected album as non-compilation";
> - //TODO find album artist
> +
> + QString select = "SELECT artist FROM tracks WHERE album = %1";
> + QStringList artistid = m_collection->query( select.arg( m_id ) );
> +
> + m_artistId = artistid[0].toInt();
> + m_artist = this->tracks()[0]->artist();
> +
> + QString update = "UPDATE albums SET artist = %1 WHERE id = %2;";
> + update = update.arg( m_artistId ).arg( m_id );
> + m_collection->query( update );
> }
> notifyObservers();
> m_collection->sendChangedSignal();
>
> Gary Steinert
> _______________________________________________
> Amarok mailing list
> Amarok at kde.org
> https://mail.kde.org/mailman/listinfo/amarok
>
--
Seb Ruiz
http://www.sebruiz.net/
http://amarok.kde.org/
--
Seb Ruiz
http://www.sebruiz.net/
http://amarok.kde.org/
More information about the Amarok-devel
mailing list