diff options
Diffstat (limited to 'playerwidget.cpp')
-rw-r--r-- | playerwidget.cpp | 18 |
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()); |