Added WebRadioSettings

This commit is contained in:
0xFEEDC0DE
2018-03-13 21:06:12 +01:00
parent 7dc8fd3cf1
commit 26f1c82080
5 changed files with 61 additions and 18 deletions

View File

@@ -7,7 +7,8 @@
WebRadioDialog::WebRadioDialog(MainWindow &mainWindow) :
ZeiterfassungDialog(&mainWindow),
ui(new Ui::WebRadioDialog),
m_mainWindow(mainWindow)
m_mainWindow(mainWindow),
m_settings(m_mainWindow.settings())
{
ui->setupUi(this);
@@ -18,22 +19,8 @@ WebRadioDialog::WebRadioDialog(MainWindow &mainWindow) :
connect(m_player, &QMediaPlayer::mediaStatusChanged, this, &WebRadioDialog::updateWidgets);
connect(m_player, static_cast<void(QMediaPlayer::*)(QMediaPlayer::Error)>(&QMediaPlayer::error), this, &WebRadioDialog::error);
for(const auto &url : m_mainWindow.settings().value(QStringLiteral("WebRadioPlugin/urls"), QStringList {
QStringLiteral("http://stream.drumandbass.fm:9002"),
QStringLiteral("http://stream.trap.fm:6002"),
QStringLiteral("http://stream.dubbase.fm:7002"),
QStringLiteral("http://lw1.mp3.tb-group.fm/hb.mp3"),
QStringLiteral("http://lw1.mp3.tb-group.fm/tb.mp3"),
QStringLiteral("http://lw1.mp3.tb-group.fm/tt.mp3"),
QStringLiteral("http://lw1.mp3.tb-group.fm/ht.mp3"),
QStringLiteral("http://lw1.mp3.tb-group.fm/trb.mp3"),
QStringLiteral("http://lw1.mp3.tb-group.fm/ct.mp3"),
QStringLiteral("http://lw1.mp3.tb-group.fm/clt.mp3"),
QStringLiteral("https://live.helsinki.at:8088/live160.ogg")
}).toStringList())
{
for(const auto &url : m_settings.urls())
ui->comboBox->addItem(url, url);
}
ui->comboBox->setCurrentIndex(ui->comboBox->findData(m_mainWindow.settings().value(QStringLiteral("WebRadioPlugin/lastUrl")).toString()));

View File

@@ -4,6 +4,8 @@
#include "zeiterfassungdialog.h"
#include "webradiosettings.h"
class MainWindow;
namespace Ui { class WebRadioDialog; }
@@ -30,5 +32,7 @@ private:
Ui::WebRadioDialog *ui;
MainWindow &m_mainWindow;
WebRadioSettings m_settings;
QMediaPlayer *m_player;
};

View File

@@ -17,10 +17,12 @@ DEPENDPATH += $$PWD/$${PROJECT_ROOT}/zeiterfassungcorelib $$PWD/$${PROJECT_ROOT}
DEFINES += QT_DEPRECATED_WARNINGS QT_DISABLE_DEPRECATED_BEFORE=0x060000 QT_MESSAGELOGCONTEXT
HEADERS += webradiodialog.h \
webradioplugin.h
webradioplugin.h \
webradiosettings.h
SOURCES += webradiodialog.cpp \
webradioplugin.cpp
webradioplugin.cpp \
webradiosettings.cpp
FORMS += webradiodialog.ui

View File

@@ -0,0 +1,30 @@
#include "webradiosettings.h"
#include "zeiterfassungsettings.h"
WebRadioSettings::WebRadioSettings(ZeiterfassungSettings &settings) :
m_settings(settings)
{
}
QStringList WebRadioSettings::urls() const
{
return m_settings.value(QStringLiteral("WebRadioPlugin/urls"), QStringList {
QStringLiteral("http://stream.drumandbass.fm:9002"),
QStringLiteral("http://stream.trap.fm:6002"),
QStringLiteral("http://stream.dubbase.fm:7002"),
QStringLiteral("http://lw1.mp3.tb-group.fm/hb.mp3"),
QStringLiteral("http://lw1.mp3.tb-group.fm/tb.mp3"),
QStringLiteral("http://lw1.mp3.tb-group.fm/tt.mp3"),
QStringLiteral("http://lw1.mp3.tb-group.fm/ht.mp3"),
QStringLiteral("http://lw1.mp3.tb-group.fm/trb.mp3"),
QStringLiteral("http://lw1.mp3.tb-group.fm/ct.mp3"),
QStringLiteral("http://lw1.mp3.tb-group.fm/clt.mp3"),
QStringLiteral("https://live.helsinki.at:8088/live160.ogg")
}).toStringList();
}
void WebRadioSettings::setUrls(const QStringList &urls)
{
m_settings.setValue(QStringLiteral("WebRadioPlugin/urls"), urls);
}

View File

@@ -0,0 +1,20 @@
#ifndef WEBRADIOSETTINGS_H
#define WEBRADIOSETTINGS_H
#include <QUrl>
class ZeiterfassungSettings;
class WebRadioSettings
{
public:
WebRadioSettings(ZeiterfassungSettings &settings);
QStringList urls() const;
void setUrls(const QStringList &urls);
private:
ZeiterfassungSettings &m_settings;
};
#endif // WEBRADIOSETTINGS_H