summaryrefslogtreecommitdiffstats
path: root/playerwidget.cpp
diff options
context:
space:
mode:
authorArno <arno@disconnect.de>2017-08-27 04:15:28 +0200
committerArno <arno@disconnect.de>2017-08-27 04:15:28 +0200
commitec326f96ce40efb8cac4195b088803253c2eb588 (patch)
treed3649bbf66821d913ad2803b895396cecf280214 /playerwidget.cpp
parentc687253b9526ee9dda6b26a0fe47655b3778ffa3 (diff)
downloadBeetPlayer-ec326f96ce40efb8cac4195b088803253c2eb588.tar.gz
BeetPlayer-ec326f96ce40efb8cac4195b088803253c2eb588.tar.bz2
BeetPlayer-ec326f96ce40efb8cac4195b088803253c2eb588.zip
Prettify metdata output
Turn stream info into a HTML table and add Metadata to playlist.
Diffstat (limited to 'playerwidget.cpp')
-rw-r--r--playerwidget.cpp31
1 files changed, 22 insertions, 9 deletions
diff --git a/playerwidget.cpp b/playerwidget.cpp
index 2c24576..89fc8d1 100644
--- a/playerwidget.cpp
+++ b/playerwidget.cpp
@@ -25,6 +25,7 @@
#include <QStackedLayout>
#include <QApplication>
#include <QDateTime>
+#include <QRegularExpression>
#include <algorithm>
#include <taglib/tag.h>
@@ -1379,16 +1380,27 @@ void PlayerWidget::addWebRadio(){
void PlayerWidget::doMetadataChange(const QString &key, const QVariant &value){
if(key == "Title"){
QString np = value.toString();
+ QRegularExpression re("\\s?-\\s?");
+ QStringList titleParts = np.split(re);
+ QString artist(tr("n/a")), title(tr("n/a"));
+ if(titleParts.count() >= 2){
+ artist = titleParts.at(0);
+ title = titleParts.at(1);
+ }
QStandardItem *plRoot = mPlayListModel->invisibleRootItem();
QStandardItem *nowP = new QStandardItem;
nowP->setFont(QFont("courier"));
nowP->setEditable(false);
nowP->setIcon(QIcon(":/dog_hood.png"));
nowP->setData(1, RemoteRole);
+ nowP->setData(artist, ArtistRole);
+ nowP->setData(title, TitleRole);
nowP->setText(np);
plRoot->appendRow(nowP);
- QString npString = QString("Title: %1").arg(np);
- mCurrentTE->setText(npString);
+ mCurrentTE->clear();
+ mCurrentTE->append(QString("%1 %2").arg(tr("Artist:"), -20).arg(artist));
+ mCurrentTE->append(QString("%1 %2").arg(tr("Title:"), -20).arg(title));
+ mNowPlayingL->setText(np);
}else{
if(mOtherMeta[key] != value){
mOtherMeta[key] = value;
@@ -1398,13 +1410,14 @@ void PlayerWidget::doMetadataChange(const QString &key, const QVariant &value){
}
void PlayerWidget::updateStreamData(){
- QStringList sd;
- sd.append(QString("%1: %2").arg("Genre", -16).arg(mOtherMeta.value("Genre").toString()));
- sd.append(QString("%1: %2").arg("Publisher", -16).arg(mOtherMeta.value("Publisher").toString()));
- sd.append(QString("%1: %2").arg("Location", -16).arg(mOtherMeta.value("location").toString()));
- sd.append(QString("%1: %2").arg("Audio Codec", -16).arg(mOtherMeta.value("AudioCodec").toString()));
- QString s = sd.join("\n");
- mLeftTE->setText(s);
+ QString retval;
+ retval.append("<table>");
+ retval.append(QString(tr("<tr><td>Genre</td><td style=\"padding-left: 30px\">%1</td></tr>")).arg(mOtherMeta.value("Genre").toString()));
+ retval.append(QString(tr("<tr><td>Publisher</td><td style=\"padding-left: 30px\">%1</td></tr>")).arg(mOtherMeta.value("Publisher").toString()));
+ retval.append(QString(tr("<tr><td>Location</td><td style=\"padding-left: 30px\">%1</td></tr>")).arg(mOtherMeta.value("location").toString()));
+ retval.append(QString(tr("<tr><td>Audio Codec</td><td style=\"padding-left: 30px\">%1</td></tr>")).arg(mOtherMeta.value("AudioCodec").toString()));
+ retval.append("</table>");
+ mLeftTE->setText(retval);
}
void PlayerWidget::play(const QString &fullPath){