summaryrefslogtreecommitdiffstats
path: root/playerwidget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'playerwidget.cpp')
-rw-r--r--playerwidget.cpp15
1 files changed, 12 insertions, 3 deletions
diff --git a/playerwidget.cpp b/playerwidget.cpp
index 5d7e1d0..3e51944 100644
--- a/playerwidget.cpp
+++ b/playerwidget.cpp
@@ -14,6 +14,7 @@
#include <QSqlQuery>
#include <QAction>
#include <QToolBar>
+#include <QHash>
#include <QApplication>
#include <algorithm>
@@ -321,11 +322,11 @@ void PlayerWidget::populateByAlbum(QStandardItem *parent, const QVariant &filter
}
albumQ.exec();
while(albumQ.next()){
+ QHash<QString, int> artistcount;
QStandardItem *curAlbum = new QStandardItem;
curAlbum->setEditable(false);
curAlbum->setFont(QFont("courier"));
- QString albumText = QString(tr("%1 (%2)")).arg(albumQ.value(1).toString()).arg(QString::number(albumQ.value(2).toInt()));
- curAlbum->setText(albumText);
+
curAlbum->setIcon(albumIcon);
curAlbum->setData(Album, TypeRole);
curAlbum->setData(albumQ.value(0), IdRole);
@@ -338,7 +339,7 @@ void PlayerWidget::populateByAlbum(QStandardItem *parent, const QVariant &filter
QStandardItem *curSong = new QStandardItem;
curSong->setEditable(false);
curSong->setFont(QFont("courier"));
- QString songText = QString(tr("%1 - %2")).arg(songQ.value(0).toInt(), 3, 10, QChar('0')).arg(songQ.value(1).toString());
+ QString songText = QString(tr("%1 - %2 - %3")).arg(songQ.value(0).toInt(), 3, 10, QChar('0')).arg(songQ.value(1).toString()).arg(songQ.value(4).toString());
curSong->setText(songText);
curSong->setIcon(songIcon);
curSong->setData(Song, TypeRole);
@@ -346,10 +347,18 @@ void PlayerWidget::populateByAlbum(QStandardItem *parent, const QVariant &filter
curSong->setData(songQ.value(2), FullPathRole);
curSong->setData(songQ.value(3), GenreRole);
curSong->setData(songQ.value(4), ArtistRole);
+ ++artistcount[songQ.value(4).toString()];
curSong->setData(songQ.value(1), TitleRole);
curSong->setData(songQ.value(5), AlbumRole);
curAlbum->appendRow(curSong);
}
+ QString albumText;
+ if(artistcount.keys().count() > 1){
+ albumText = QString(tr("%1 - VA - (%2)")).arg(albumQ.value(1).toString()).arg(QString::number(albumQ.value(2).toInt()));
+ }else{
+ albumText = QString(tr("%1 - %2 - (%3)")).arg(albumQ.value(1).toString()).arg(artistcount.keys().first()). arg(QString::number(albumQ.value(2).toInt()));
+ }
+ curAlbum->setText(albumText);
}
}