summaryrefslogtreecommitdiffstats
path: root/playerwidget.cpp
diff options
context:
space:
mode:
authorArno <arno@disconnect.de>2017-08-26 07:49:34 +0200
committerArno <arno@disconnect.de>2017-08-26 07:49:34 +0200
commit1285456abe4be9a22dc42498a1d0a1a43a0a00be (patch)
tree1d3475be09492735ab3c30cf043030cc19601ec2 /playerwidget.cpp
parenta957512861065d700663ddd522de57925b878eae (diff)
downloadBeetPlayer-1285456abe4be9a22dc42498a1d0a1a43a0a00be.tar.gz
BeetPlayer-1285456abe4be9a22dc42498a1d0a1a43a0a00be.tar.bz2
BeetPlayer-1285456abe4be9a22dc42498a1d0a1a43a0a00be.zip
Implement dialog for adding WebRadios
Just enter a description and an URL.
Diffstat (limited to 'playerwidget.cpp')
-rw-r--r--playerwidget.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/playerwidget.cpp b/playerwidget.cpp
index 9d41b79..37c6d5c 100644
--- a/playerwidget.cpp
+++ b/playerwidget.cpp
@@ -37,6 +37,7 @@
#include "globals.h"
#include "helper.h"
#include "webdownloader.h"
+#include "webradiodialog.h"
PlayerWidget::PlayerWidget(QWidget *parent) : QWidget(parent), mDurSecs(0), mPlayListLength(0){
mStarting = true;
@@ -371,6 +372,8 @@ void PlayerWidget::createActions(){
connect(miscMusicBrainzLeftA, &QAction::triggered, this, &PlayerWidget::searchMusicbrainzLeft);
QAction *miscFilterFromPlaylistA = new QAction(QIcon(":/chastity_belt.png"), tr("Filter artist"), this);
connect(miscFilterFromPlaylistA, &QAction::triggered, this, &PlayerWidget::filterFromPlaylist);
+ QAction *addToWebRadioA = new QAction(QIcon(":/dog_hood.png"), tr("Add Webradio"), this);
+ connect(addToWebRadioA, &QAction::triggered, this, &PlayerWidget::addWebRadio);
mView->addAction(addToPlayListA);
mView->addAction(addToPlayListAndClearA);
mView->addAction(Helper::createSeparator(this));
@@ -386,6 +389,8 @@ void PlayerWidget::createActions(){
mView->addAction(Helper::createSeparator(this));
mView->addAction(mRefreshA);
mView->addAction(Helper::createSeparator(this));
+ mView->addAction(addToWebRadioA);
+ mView->addAction(Helper::createSeparator(this));
mView->addAction(randomPlayA);
mPlayListView->addAction(removeFromPlayListA);
mPlayListView->addAction(Helper::createSeparator(this));
@@ -1342,6 +1347,19 @@ void PlayerWidget::filterFromPlaylist(){
doFilter();
}
+void PlayerWidget::addWebRadio(){
+ WebRadioDialog dlg(this);
+ dlg.exec();
+ QString desc = dlg.description();
+ QString url = dlg.url();
+ QSqlDatabase db = QSqlDatabase::database("beetplayerdb");
+ QSqlQuery wrQ(db);
+ wrQ.prepare("INSERT INTO webradio (tdescription, turl) VALUES(:d, :u)");
+ wrQ.bindValue(":d", desc);
+ wrQ.bindValue(":u", url);
+ wrQ.exec();
+}
+
void PlayerWidget::play(const QString &fullPath){
mPlayer->setMedia(QUrl::fromLocalFile(fullPath));
TagLib::FileRef file(QString(fullPath).toUtf8());