Files
DbZeiterfassung-webradioplugin/webradiosettingswidget.cpp

38 lines
863 B
C++

#include "webradiosettingswidget.h"
#include <QFormLayout>
#include "widgets/stringlistwidget.h"
WebRadioSettingsWidget::WebRadioSettingsWidget(ZeiterfassungSettings &settings, QWidget *parent) :
SettingsWidget(parent),
m_settings(settings)
{
auto layout = new QFormLayout(this);
layout->setContentsMargins({});
m_urlsWidget = new StringListWidget(m_settings.urls(), this);
layout->addRow(tr("URLs:"), m_urlsWidget);
setLayout(layout);
}
bool WebRadioSettingsWidget::isValid(QString &message) const
{
for(const auto &url : m_urlsWidget->value())
{
if(!QUrl::fromUserInput(url).isValid())
{
message = tr("A web radio url is invalid!");
return false;
}
}
return true;
}
bool WebRadioSettingsWidget::apply()
{
return m_settings.setUrls(m_urlsWidget->value());
}