Use QStringLiteral
This commit is contained in:
@@ -67,13 +67,13 @@ void RadioBackend::AddChannels(const RadioChannelList &channels) {
|
||||
QSqlDatabase db(db_->Connect());
|
||||
|
||||
SqlQuery q(db);
|
||||
q.prepare(QString("INSERT INTO radio_channels (source, name, url, thumbnail_url) VALUES (:source, :name, :url, :thumbnail_url)"));
|
||||
q.prepare(QStringLiteral("INSERT INTO radio_channels (source, name, url, thumbnail_url) VALUES (:source, :name, :url, :thumbnail_url)"));
|
||||
|
||||
for (const RadioChannel &channel : channels) {
|
||||
q.BindValue(":source", static_cast<int>(channel.source));
|
||||
q.BindValue(":name", channel.name);
|
||||
q.BindValue(":url", channel.url);
|
||||
q.BindValue(":thumbnail_url", channel.thumbnail_url);
|
||||
q.BindValue(QStringLiteral(":source"), static_cast<int>(channel.source));
|
||||
q.BindValue(QStringLiteral(":name"), channel.name);
|
||||
q.BindValue(QStringLiteral(":url"), channel.url);
|
||||
q.BindValue(QStringLiteral(":thumbnail_url"), channel.thumbnail_url);
|
||||
if (!q.Exec()) {
|
||||
db_->ReportErrors(q);
|
||||
return;
|
||||
@@ -96,7 +96,7 @@ void RadioBackend::GetChannels() {
|
||||
QSqlDatabase db(db_->Connect());
|
||||
|
||||
SqlQuery q(db);
|
||||
q.prepare("SELECT source, name, url, thumbnail_url FROM radio_channels");
|
||||
q.prepare(QStringLiteral("SELECT source, name, url, thumbnail_url FROM radio_channels"));
|
||||
|
||||
if (!q.Exec()) {
|
||||
db_->ReportErrors(q);
|
||||
@@ -127,7 +127,7 @@ void RadioBackend::DeleteChannels() {
|
||||
QSqlDatabase db(db_->Connect());
|
||||
|
||||
SqlQuery q(db);
|
||||
q.prepare("DELETE FROM radio_channels");
|
||||
q.prepare(QStringLiteral("DELETE FROM radio_channels"));
|
||||
|
||||
if (!q.Exec()) {
|
||||
db_->ReportErrors(q);
|
||||
|
||||
@@ -125,7 +125,7 @@ QVariant RadioModel::data(const RadioItem *item, int role) const {
|
||||
}
|
||||
|
||||
QStringList RadioModel::mimeTypes() const {
|
||||
return QStringList() << "text/uri-list";
|
||||
return QStringList() << QStringLiteral("text/uri-list");
|
||||
}
|
||||
|
||||
QMimeData *RadioModel::mimeData(const QModelIndexList &indexes) const {
|
||||
@@ -330,12 +330,12 @@ void RadioModel::AlbumCoverLoaded(const quint64 id, const AlbumCoverLoaderResult
|
||||
QString RadioModel::SortText(QString text) {
|
||||
|
||||
if (text.isEmpty()) {
|
||||
text = " unknown";
|
||||
text = QStringLiteral(" unknown");
|
||||
}
|
||||
else {
|
||||
text = text.toLower();
|
||||
}
|
||||
text = text.remove(QRegularExpression("[^\\w ]", QRegularExpression::UseUnicodePropertiesOption));
|
||||
text = text.remove(QRegularExpression(QStringLiteral("[^\\w ]"), QRegularExpression::UseUnicodePropertiesOption));
|
||||
|
||||
return text;
|
||||
|
||||
|
||||
@@ -35,10 +35,10 @@
|
||||
const char *RadioParadiseService::kApiChannelsUrl = "https://api.radioparadise.com/api/list_streams";
|
||||
|
||||
RadioParadiseService::RadioParadiseService(Application *app, SharedPtr<NetworkAccessManager> network, QObject *parent)
|
||||
: RadioService(Song::Source::RadioParadise, "Radio Paradise", IconLoader::Load("radioparadise"), app, network, parent) {}
|
||||
: RadioService(Song::Source::RadioParadise, QStringLiteral("Radio Paradise"), IconLoader::Load(QStringLiteral("radioparadise")), app, network, parent) {}
|
||||
|
||||
QUrl RadioParadiseService::Homepage() { return QUrl("https://radioparadise.com/"); }
|
||||
QUrl RadioParadiseService::Donate() { return QUrl("https://payments.radioparadise.com/rp2s-content.php?name=Support&file=support"); }
|
||||
QUrl RadioParadiseService::Homepage() { return QUrl(QStringLiteral("https://radioparadise.com/")); }
|
||||
QUrl RadioParadiseService::Donate() { return QUrl(QStringLiteral("https://payments.radioparadise.com/rp2s-content.php?name=Support&file=support")); }
|
||||
|
||||
void RadioParadiseService::Abort() {
|
||||
|
||||
@@ -78,36 +78,36 @@ void RadioParadiseService::GetChannelsReply(QNetworkReply *reply, const int task
|
||||
return;
|
||||
}
|
||||
|
||||
if (!object.contains("channels") || !object["channels"].isArray()) {
|
||||
Error("Missing JSON channels array.", object);
|
||||
if (!object.contains(QStringLiteral("channels")) || !object[QStringLiteral("channels")].isArray()) {
|
||||
Error(QStringLiteral("Missing JSON channels array."), object);
|
||||
app_->task_manager()->SetTaskFinished(task_id);
|
||||
emit NewChannels();
|
||||
return;
|
||||
}
|
||||
QJsonArray array_channels = object["channels"].toArray();
|
||||
QJsonArray array_channels = object[QStringLiteral("channels")].toArray();
|
||||
|
||||
RadioChannelList channels;
|
||||
for (const QJsonValueRef value_channel : array_channels) {
|
||||
if (!value_channel.isObject()) continue;
|
||||
QJsonObject obj_channel = value_channel.toObject();
|
||||
if (!obj_channel.contains("chan_name") || !obj_channel.contains("streams")) {
|
||||
if (!obj_channel.contains(QStringLiteral("chan_name")) || !obj_channel.contains(QStringLiteral("streams"))) {
|
||||
continue;
|
||||
}
|
||||
QString name = obj_channel["chan_name"].toString();
|
||||
QJsonValue value_streams = obj_channel["streams"];
|
||||
QString name = obj_channel[QStringLiteral("chan_name")].toString();
|
||||
QJsonValue value_streams = obj_channel[QStringLiteral("streams")];
|
||||
if (!value_streams.isArray()) {
|
||||
continue;
|
||||
}
|
||||
QJsonArray array_streams = obj_channel["streams"].toArray();
|
||||
QJsonArray array_streams = obj_channel[QStringLiteral("streams")].toArray();
|
||||
for (const QJsonValueRef value_stream : array_streams) {
|
||||
if (!value_stream.isObject()) continue;
|
||||
QJsonObject obj_stream = value_stream.toObject();
|
||||
if (!obj_stream.contains("label") || !obj_stream.contains("url")) {
|
||||
if (!obj_stream.contains(QStringLiteral("label")) || !obj_stream.contains(QStringLiteral("url"))) {
|
||||
continue;
|
||||
}
|
||||
QString label = obj_stream["label"].toString();
|
||||
QString url = obj_stream["url"].toString();
|
||||
if (!url.contains(QRegularExpression("^[0-9a-zA-Z]*:\\/\\/", QRegularExpression::CaseInsensitiveOption))) {
|
||||
QString label = obj_stream[QStringLiteral("label")].toString();
|
||||
QString url = obj_stream[QStringLiteral("url")].toString();
|
||||
if (!url.contains(QRegularExpression(QStringLiteral("^[0-9a-zA-Z]*:\\/\\/"), QRegularExpression::CaseInsensitiveOption))) {
|
||||
url.prepend("https://");
|
||||
}
|
||||
RadioChannel channel;
|
||||
|
||||
@@ -42,13 +42,13 @@ RadioService::RadioService(const Song::Source source, const QString &name, const
|
||||
QByteArray RadioService::ExtractData(QNetworkReply *reply) {
|
||||
|
||||
if (reply->error() != QNetworkReply::NoError) {
|
||||
Error(QString("Failed to retrieve data from %1: %2 (%3)").arg(name_, reply->errorString()).arg(reply->error()));
|
||||
Error(QStringLiteral("Failed to retrieve data from %1: %2 (%3)").arg(name_, reply->errorString()).arg(reply->error()));
|
||||
if (reply->error() < 200) {
|
||||
return QByteArray();
|
||||
}
|
||||
}
|
||||
else if (reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt() != 200) {
|
||||
Error(QString("Received HTTP code %1").arg(reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt()));
|
||||
Error(QStringLiteral("Received HTTP code %1").arg(reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt()));
|
||||
}
|
||||
|
||||
return reply->readAll();
|
||||
@@ -65,23 +65,23 @@ QJsonObject RadioService::ExtractJsonObj(const QByteArray &data) {
|
||||
QJsonDocument json_doc = QJsonDocument::fromJson(data, &json_error);
|
||||
|
||||
if (json_error.error != QJsonParseError::NoError) {
|
||||
Error(QString("Failed to parse Json data from %1: %2").arg(name_, json_error.errorString()));
|
||||
Error(QStringLiteral("Failed to parse Json data from %1: %2").arg(name_, json_error.errorString()));
|
||||
return QJsonObject();
|
||||
}
|
||||
|
||||
if (json_doc.isEmpty()) {
|
||||
Error(QString("%1: Received empty Json document.").arg(name_), data);
|
||||
Error(QStringLiteral("%1: Received empty Json document.").arg(name_), data);
|
||||
return QJsonObject();
|
||||
}
|
||||
|
||||
if (!json_doc.isObject()) {
|
||||
Error(QString("%1: Json document is not an object.").arg(name_), json_doc);
|
||||
Error(QStringLiteral("%1: Json document is not an object.").arg(name_), json_doc);
|
||||
return QJsonObject();
|
||||
}
|
||||
|
||||
QJsonObject json_obj = json_doc.object();
|
||||
if (json_obj.isEmpty()) {
|
||||
Error(QString("%1: Received empty Json object.").arg(name_), json_doc);
|
||||
Error(QStringLiteral("%1: Received empty Json object.").arg(name_), json_doc);
|
||||
return QJsonObject();
|
||||
}
|
||||
|
||||
|
||||
@@ -66,27 +66,27 @@ void RadioView::contextMenuEvent(QContextMenuEvent *e) {
|
||||
if (!menu_) {
|
||||
menu_ = new QMenu;
|
||||
|
||||
action_playlist_append_ = new QAction(IconLoader::Load("media-playback-start"), tr("Append to current playlist"), this);
|
||||
action_playlist_append_ = new QAction(IconLoader::Load(QStringLiteral("media-playback-start")), tr("Append to current playlist"), this);
|
||||
QObject::connect(action_playlist_append_, &QAction::triggered, this, &RadioView::AddToPlaylist);
|
||||
menu_->addAction(action_playlist_append_);
|
||||
|
||||
action_playlist_replace_ = new QAction(IconLoader::Load("media-playback-start"), tr("Replace current playlist"), this);
|
||||
action_playlist_replace_ = new QAction(IconLoader::Load(QStringLiteral("media-playback-start")), tr("Replace current playlist"), this);
|
||||
QObject::connect(action_playlist_replace_, &QAction::triggered, this, &RadioView::ReplacePlaylist);
|
||||
menu_->addAction(action_playlist_replace_);
|
||||
|
||||
action_playlist_new_ = new QAction(IconLoader::Load("document-new"), tr("Open in new playlist"), this);
|
||||
action_playlist_new_ = new QAction(IconLoader::Load(QStringLiteral("document-new")), tr("Open in new playlist"), this);
|
||||
QObject::connect(action_playlist_new_, &QAction::triggered, this, &RadioView::OpenInNewPlaylist);
|
||||
menu_->addAction(action_playlist_new_);
|
||||
|
||||
action_homepage_ = new QAction(IconLoader::Load("download"), tr("Open homepage"), this);
|
||||
action_homepage_ = new QAction(IconLoader::Load(QStringLiteral("download")), tr("Open homepage"), this);
|
||||
QObject::connect(action_homepage_, &QAction::triggered, this, &RadioView::Homepage);
|
||||
menu_->addAction(action_homepage_);
|
||||
|
||||
action_donate_ = new QAction(IconLoader::Load("download"), tr("Donate"), this);
|
||||
action_donate_ = new QAction(IconLoader::Load(QStringLiteral("download")), tr("Donate"), this);
|
||||
QObject::connect(action_donate_, &QAction::triggered, this, &RadioView::Donate);
|
||||
menu_->addAction(action_donate_);
|
||||
|
||||
menu_->addAction(IconLoader::Load("view-refresh"), tr("Refresh channels"), this, &RadioView::GetChannels);
|
||||
menu_->addAction(IconLoader::Load(QStringLiteral("view-refresh")), tr("Refresh channels"), this, &RadioView::GetChannels);
|
||||
}
|
||||
|
||||
const bool channels_selected = !selectedIndexes().isEmpty();
|
||||
|
||||
@@ -34,7 +34,7 @@ RadioViewContainer::RadioViewContainer(QWidget *parent)
|
||||
|
||||
QObject::connect(ui_->refresh, &QToolButton::clicked, this, &RadioViewContainer::Refresh);
|
||||
|
||||
ui_->refresh->setIcon(IconLoader::Load("view-refresh"));
|
||||
ui_->refresh->setIcon(IconLoader::Load(QStringLiteral("view-refresh")));
|
||||
|
||||
ReloadSettings();
|
||||
|
||||
|
||||
@@ -37,14 +37,14 @@
|
||||
const char *SomaFMService::kApiChannelsUrl = "https://somafm.com/channels.json";
|
||||
|
||||
SomaFMService::SomaFMService(Application *app, SharedPtr<NetworkAccessManager> network, QObject *parent)
|
||||
: RadioService(Song::Source::SomaFM, "SomaFM", IconLoader::Load("somafm"), app, network, parent) {}
|
||||
: RadioService(Song::Source::SomaFM, QStringLiteral("SomaFM"), IconLoader::Load(QStringLiteral("somafm")), app, network, parent) {}
|
||||
|
||||
SomaFMService::~SomaFMService() {
|
||||
Abort();
|
||||
}
|
||||
|
||||
QUrl SomaFMService::Homepage() { return QUrl("https://somafm.com/"); }
|
||||
QUrl SomaFMService::Donate() { return QUrl("https://somafm.com/support/"); }
|
||||
QUrl SomaFMService::Homepage() { return QUrl(QStringLiteral("https://somafm.com/")); }
|
||||
QUrl SomaFMService::Donate() { return QUrl(QStringLiteral("https://somafm.com/support/")); }
|
||||
|
||||
void SomaFMService::Abort() {
|
||||
|
||||
@@ -84,39 +84,39 @@ void SomaFMService::GetChannelsReply(QNetworkReply *reply, const int task_id) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!object.contains("channels") || !object["channels"].isArray()) {
|
||||
Error("Missing JSON channels array.", object);
|
||||
if (!object.contains(QStringLiteral("channels")) || !object[QStringLiteral("channels")].isArray()) {
|
||||
Error(QStringLiteral("Missing JSON channels array."), object);
|
||||
app_->task_manager()->SetTaskFinished(task_id);
|
||||
emit NewChannels();
|
||||
return;
|
||||
}
|
||||
QJsonArray array_channels = object["channels"].toArray();
|
||||
QJsonArray array_channels = object[QStringLiteral("channels")].toArray();
|
||||
|
||||
RadioChannelList channels;
|
||||
for (const QJsonValueRef value_channel : array_channels) {
|
||||
if (!value_channel.isObject()) continue;
|
||||
QJsonObject obj_channel = value_channel.toObject();
|
||||
if (!obj_channel.contains("title") || !obj_channel.contains("image")) {
|
||||
if (!obj_channel.contains(QStringLiteral("title")) || !obj_channel.contains(QStringLiteral("image"))) {
|
||||
continue;
|
||||
}
|
||||
QString name = obj_channel["title"].toString();
|
||||
QString image = obj_channel["image"].toString();
|
||||
QJsonArray playlists = obj_channel["playlists"].toArray();
|
||||
QString name = obj_channel[QStringLiteral("title")].toString();
|
||||
QString image = obj_channel[QStringLiteral("image")].toString();
|
||||
QJsonArray playlists = obj_channel[QStringLiteral("playlists")].toArray();
|
||||
for (const QJsonValueRef playlist : playlists) {
|
||||
if (!playlist.isObject()) continue;
|
||||
QJsonObject obj_playlist = playlist.toObject();
|
||||
if (!obj_playlist.contains("url") || !obj_playlist.contains("quality")) {
|
||||
if (!obj_playlist.contains(QStringLiteral("url")) || !obj_playlist.contains(QStringLiteral("quality"))) {
|
||||
continue;
|
||||
}
|
||||
RadioChannel channel;
|
||||
QString quality = obj_playlist["quality"].toString();
|
||||
QString quality = obj_playlist[QStringLiteral("quality")].toString();
|
||||
if (quality != "highest") continue;
|
||||
channel.source = source_;
|
||||
channel.name = name;
|
||||
channel.url.setUrl(obj_playlist["url"].toString());
|
||||
channel.url.setUrl(obj_playlist[QStringLiteral("url")].toString());
|
||||
channel.thumbnail_url.setUrl(image);
|
||||
if (obj_playlist.contains("format")) {
|
||||
channel.name.append(" " + obj_playlist["format"].toString().toUpper());
|
||||
if (obj_playlist.contains(QStringLiteral("format"))) {
|
||||
channel.name.append(" " + obj_playlist[QStringLiteral("format")].toString().toUpper());
|
||||
}
|
||||
channels << channel;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user