From 1285456abe4be9a22dc42498a1d0a1a43a0a00be Mon Sep 17 00:00:00 2001 From: Arno Date: Sat, 26 Aug 2017 07:49:34 +0200 Subject: Implement dialog for adding WebRadios Just enter a description and an URL. --- playerwidget.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'playerwidget.cpp') 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()); -- cgit v1.2.3-70-g09d2