Don't show year for 'Single Tracks'

This commit is contained in:
Craig Drummond
2018-01-02 00:05:35 +00:00
parent 445d1497ac
commit 5ff2238fb7
5 changed files with 21 additions and 5 deletions

View File

@@ -37,6 +37,7 @@
some styles (e.g. Adwaita-Qt)
26. Enable remote (sshfs, samba) device support by default for Linux builds.
27. Improve table style playqueue drop indicator - thanks to padertux.
28. Don't show year for 'Single Tracks'
2.2.0
-----

View File

@@ -742,7 +742,7 @@ QList<LibraryDb::Album> LibraryDb::getAlbums(const QString &artistId, const QStr
for (int i=0; i<Song::constNumGenres; ++i) {
queryString+=", genre"+QString::number(i+1);
}
queryString+=", year, time";
queryString+=", type, year, time";
if (wantModified) {
queryString+=", lastModified";
}
@@ -760,10 +760,9 @@ QList<LibraryDb::Album> LibraryDb::getAlbums(const QString &artistId, const QStr
query.addWhere("genre", genreFilter);
}
query.exec();
DBUG << query.executedQuery() << timer.elapsed();
int count=0;
QMap<QString, Album> entries;
QMap<QString, QSet<QString> > albumIdArtists; // MAp of albumId -> albumartists/composers
QMap<QString, QSet<QString> > albumIdArtists; // Map of albumId -> albumartists/composers
while (query.next()) {
count++;
int col=0;
@@ -782,8 +781,15 @@ QList<LibraryDb::Album> LibraryDb::getAlbums(const QString &artistId, const QStr
s.addGenre(genre);
}
}
album=s.displayAlbum();
s.type=(Song::Type)query.value(col++).toInt();
qWarning() << s.artist << s.type;
int year=query.value(col++).toInt();
if (Song::SingleTracks==s.type) {
s.album=Song::singleTracks();
s.albumartist=Song::variousArtists();
year = 0;
}
album=s.displayAlbum();
int time=query.value(col++).toInt();
int lastModified=wantModified ? query.value(col++).toInt() : 0;
QString artist=wantArtist ? query.value(col++).toString() : QString();

View File

@@ -733,7 +733,8 @@ void MPDParseUtils::parseDirItems(const QByteArray &data, const QString &mpdDir,
} else {
if (setSingleTracks) {
currentSong.albumartist=Song::variousArtists();
currentSong.album=QObject::tr("Single Tracks");
currentSong.album=Song::singleTracks();
currentSong.type=Song::SingleTracks;
}
currentSong.fillEmptyFields();
songs.append(currentSong);

View File

@@ -45,6 +45,7 @@ const QString Song::constForkedDaapdLocal=QLatin1String("file:");
static QString unknownStr;
static QString variousArtistsStr;
static QString singleTracksStr;
const QString & Song::unknown()
{
return unknownStr;
@@ -55,10 +56,16 @@ const QString & Song::variousArtists()
return variousArtistsStr;
}
const QString & Song::singleTracks()
{
return singleTracksStr;
}
void Song::initTranslations()
{
unknownStr=QObject::tr("Unknown");
variousArtistsStr=QObject::tr("Various Artists");
singleTracksStr=QObject::tr("Single Tracks");
}
// When displaying albums, we use the 1st track's year as the year of the album.

View File

@@ -118,6 +118,7 @@ struct Song
static const QString & unknown();
static const QString & variousArtists();
static const QString & singleTracks();
static void initTranslations();
static const QString constCddaProtocol;
static const QString constMopidyLocal;