summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--album.pngbin0 -> 35474 bytes
-rw-r--r--artist.pngbin0 -> 103413 bytes
-rw-r--r--beetplayer.qrc4
-rw-r--r--genre.pngbin0 -> 17037 bytes
-rw-r--r--playerwidget.cpp33
-rw-r--r--song.pngbin0 -> 12807 bytes
6 files changed, 27 insertions, 10 deletions
diff --git a/album.png b/album.png
new file mode 100644
index 0000000..3878b9f
--- /dev/null
+++ b/album.png
Binary files differ
diff --git a/artist.png b/artist.png
new file mode 100644
index 0000000..39d3551
--- /dev/null
+++ b/artist.png
Binary files differ
diff --git a/beetplayer.qrc b/beetplayer.qrc
index c3b4f0d..56a1001 100644
--- a/beetplayer.qrc
+++ b/beetplayer.qrc
@@ -14,5 +14,9 @@
<file>mute.png</file>
<file>previous.png</file>
<file>next.png</file>
+ <file>album.png</file>
+ <file>artist.png</file>
+ <file>song.png</file>
+ <file>genre.png</file>
</qresource>
</RCC>
diff --git a/genre.png b/genre.png
new file mode 100644
index 0000000..47978db
--- /dev/null
+++ b/genre.png
Binary files differ
diff --git a/playerwidget.cpp b/playerwidget.cpp
index 800c142..d3d0191 100644
--- a/playerwidget.cpp
+++ b/playerwidget.cpp
@@ -229,6 +229,9 @@ void PlayerWidget::populateByArtist(QStandardItem *parent, const QString &filter
albumQ.prepare("SELECT DISTINCT(songs.ialbums_id), talbum_name, siyear FROM songs, albums WHERE songs.iartists_id = :artistid AND songs.ialbums_id = albums.ialbums_id ORDER BY siyear ASC");
QSqlQuery songQ(db);
songQ.prepare("SELECT sipos, ttitle, tfullpath, igenres_id FROM songs WHERE ialbums_id = :alid AND iartists_id = :arid ORDER BY sipos ASC");
+ QIcon songIcon(":/song.png");
+ QIcon albumIcon(":/album.png");
+ QIcon artistIcon(":/artist.png");
//read data
artistsQ.exec();
@@ -236,8 +239,8 @@ void PlayerWidget::populateByArtist(QStandardItem *parent, const QString &filter
QStandardItem *curArtist = new QStandardItem;
curArtist->setEditable(false);
curArtist->setFont(QFont("courier"));
- QString artistText = QString(tr("%1 %2")).arg(QString("🅐")).arg(artistsQ.value(1).toString()); //I guess this will bite me!
- curArtist->setText(artistText);
+ curArtist->setText(artistsQ.value(1).toString());
+ curArtist->setIcon(artistIcon);
curArtist->setData(Artist, TypeRole);
curArtist->setData(artistsQ.value(0).toInt(), IdRole);
root->appendRow(curArtist);
@@ -247,8 +250,9 @@ void PlayerWidget::populateByArtist(QStandardItem *parent, const QString &filter
QStandardItem *curAlbum = new QStandardItem;
curAlbum->setEditable(false);
curAlbum->setFont(QFont("courier"));
- QString albumText = QString(tr("%1 %2 - %3")).arg(QChar(0x29BE)).arg(QString::number(albumQ.value(2).toInt())).arg(albumQ.value(1).toString());
+ QString albumText = QString(tr("%1 - %2")).arg(QString::number(albumQ.value(2).toInt())).arg(albumQ.value(1).toString());
curAlbum->setText(albumText);
+ curAlbum->setIcon(albumIcon);
curAlbum->setData(Album, TypeRole);
curAlbum->setData(albumQ.value(0), IdRole);
curArtist->appendRow(curAlbum);
@@ -259,8 +263,9 @@ void PlayerWidget::populateByArtist(QStandardItem *parent, const QString &filter
QStandardItem *curSong = new QStandardItem;
curSong->setEditable(false);
curSong->setFont(QFont("courier"));
- QString songText = QString(tr("%1 %2 - %3")).arg(QChar(0x266C)).arg(songQ.value(0).toInt(), 3, 10, QChar('0')).arg(songQ.value(1).toString());
+ QString songText = QString(tr("%1 - %2")).arg(songQ.value(0).toInt(), 3, 10, QChar('0')).arg(songQ.value(1).toString());
curSong->setText(songText);
+ curSong->setIcon(songIcon);
curSong->setData(Song, TypeRole);
curSong->setData(songQ.value(0), IdRole);
curSong->setData(songQ.value(2), FullPathRole);
@@ -277,6 +282,7 @@ void PlayerWidget::populateByArtist(QStandardItem *parent, const QString &filter
void PlayerWidget::populateBySong(QStandardItem *parent, const QString &filter){
QSqlDatabase db = QSqlDatabase::database("beetplayerdb");
QStandardItem *root = parent;
+ QIcon songIcon(":/song.png");
QSqlQuery songQ = QSqlQuery(db);
songQ.prepare("SELECT sipos, ttitle, tfullpath, igenres_id, artists.tartists_name, albums.talbum_name FROM songs, artists, albums WHERE ttitle ~ :f AND songs.iartists_id = artists.iartists_id and songs.ialbums_id = albums.ialbums_id ORDER BY ttitle ASC");
songQ.bindValue(":f", filter);
@@ -285,8 +291,9 @@ void PlayerWidget::populateBySong(QStandardItem *parent, const QString &filter){
QStandardItem *curSong = new QStandardItem;
curSong->setEditable(false);
curSong->setFont(QFont("courier"));
- QString songText = QString(tr("%1 %2 (%3)")).arg(QChar(0x266C)).arg(songQ.value(1).toString()).arg(songQ.value(4).toString());
+ QString songText = QString(tr("%1 (%2)")).arg(songQ.value(1).toString()).arg(songQ.value(4).toString());
curSong->setText(songText);
+ curSong->setIcon(songIcon);
curSong->setData(Song, TypeRole);
curSong->setData(songQ.value(0), IdRole);
curSong->setData(songQ.value(2), FullPathRole);
@@ -301,6 +308,8 @@ void PlayerWidget::populateBySong(QStandardItem *parent, const QString &filter){
void PlayerWidget::populateByGenre(QStandardItem *parent, const QString &filter){
QSqlDatabase db = QSqlDatabase::database("beetplayerdb");
QStandardItem *root = parent;
+ QIcon songIcon(":/song.png");
+ QIcon genreIcon(":/genre.png");
QSqlQuery genreQ(db);
genreQ.prepare("SELECT igenres_id, tgenres_name FROM genres WHERE tgenres_name ~ :f");
genreQ.bindValue(":f", filter);
@@ -309,8 +318,8 @@ void PlayerWidget::populateByGenre(QStandardItem *parent, const QString &filter)
QStandardItem *curGenre = new QStandardItem;
curGenre->setEditable(false);
curGenre->setFont(QFont("courier"));
- QString genreText = QString(tr("%1 %2")).arg(QString("🅖")).arg(genreQ.value(1).toString());
- curGenre->setText(genreText);
+ curGenre->setText(genreQ.value(1).toString());
+ curGenre->setIcon(genreIcon);
curGenre->setData(Genre, TypeRole);
curGenre->setData(genreQ.value(0), IdRole);
root->appendRow(curGenre);
@@ -322,8 +331,9 @@ void PlayerWidget::populateByGenre(QStandardItem *parent, const QString &filter)
QStandardItem *curSong = new QStandardItem;
curSong->setEditable(false);
curSong->setFont(QFont("courier"));
- QString songText = QString(tr("%1 %2 (%3)")).arg(QChar(0x266C)).arg(songQ.value(1).toString()).arg(songQ.value(4).toString());
+ QString songText = QString(tr("%1 (%2)")).arg(songQ.value(1).toString()).arg(songQ.value(4).toString());
curSong->setText(songText);
+ curSong->setIcon(songIcon);
curSong->setData(Song, TypeRole);
curSong->setData(songQ.value(0), IdRole);
curSong->setData(songQ.value(2), FullPathRole);
@@ -353,10 +363,11 @@ void PlayerWidget::addSong(const QModelIndex &idx){
QString title = idx.data(TitleRole).toString();
QString artist = idx.data(ArtistRole).toString();
QString album = idx.data(AlbumRole).toString();
- QString display = QString(tr("%1 - %2 - %3 - %4")).arg(QChar(0x266C)).arg(artist).arg(title).arg(album);
+ QString display = QString(tr("%1 - %2 - %3")).arg(artist).arg(title).arg(album);
QStandardItem *item = new QStandardItem;
item->setFont(QFont("courier"));
item->setText(display);
+ item->setIcon(QIcon(":/song.png"));
item->setData(idx.data(FullPathRole), FullPathRole);
root->appendRow(item);
}
@@ -445,16 +456,18 @@ void PlayerWidget::randomPlay(){
mPlayListModel->clear();
mPlayListModel->setHorizontalHeaderLabels(QStringList() << "Title");
QStandardItem *root = mPlayListModel->invisibleRootItem();
+ QIcon songIcon(":/song.png");
QSqlDatabase db = QSqlDatabase::database("beetplayerdb");
QSqlQuery randomQ(db);
randomQ.prepare("SELECT sipos, ttitle, tfullpath, igenres_id, artists.tartists_name, albums.talbum_name FROM songs, artists, albums WHERE songs.iartists_id = artists.iartists_id AND songs.ialbums_id = albums.ialbums_id ORDER BY random() LIMIT 1000");
randomQ.exec();
while(randomQ.next()){
- QString display = QString(tr("%1 - %2 - %3 - %4")).arg(QChar(0x266C)).arg(randomQ.value(4).toString()).arg(randomQ.value(1).toString()).arg(randomQ.value(5).toString());
+ QString display = QString(tr("%1 - %2 - %3")).arg(randomQ.value(4).toString()).arg(randomQ.value(1).toString()).arg(randomQ.value(5).toString());
QStandardItem *item = new QStandardItem;
item->setEditable(false);
item->setFont(QFont("courier"));
item->setText(display);
+ item->setIcon(songIcon);
item->setData(randomQ.value(2), FullPathRole);
root->appendRow(item);
}
diff --git a/song.png b/song.png
new file mode 100644
index 0000000..26dd3e8
--- /dev/null
+++ b/song.png
Binary files differ