mirror of
https://github.com/d47081/qBittorrent.git
synced 2025-02-05 03:14:44 +00:00
Change parseBool() to return optional bool value
This commit is contained in:
parent
4429a16ca8
commit
d0cac421bb
@ -190,11 +190,14 @@ QString Utils::String::wildcardToRegex(const QString &pattern)
|
||||
return qt_regexp_toCanonical(pattern, QRegExp::Wildcard);
|
||||
}
|
||||
|
||||
bool Utils::String::parseBool(const QString &string, const bool defaultValue)
|
||||
std::optional<bool> Utils::String::parseBool(const QString &string)
|
||||
{
|
||||
if (defaultValue)
|
||||
return (string.compare("false", Qt::CaseInsensitive) == 0) ? false : true;
|
||||
return (string.compare("true", Qt::CaseInsensitive) == 0) ? true : false;
|
||||
if (string.compare("true", Qt::CaseInsensitive) == 0)
|
||||
return true;
|
||||
if (string.compare("false", Qt::CaseInsensitive) == 0)
|
||||
return false;
|
||||
|
||||
return std::nullopt;
|
||||
}
|
||||
|
||||
QString Utils::String::join(const QVector<QStringRef> &strings, const QString &separator)
|
||||
|
@ -29,6 +29,8 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <optional>
|
||||
|
||||
#include <QChar>
|
||||
#include <QMetaEnum>
|
||||
#include <QString>
|
||||
@ -64,7 +66,7 @@ namespace Utils::String
|
||||
return str;
|
||||
}
|
||||
|
||||
bool parseBool(const QString &string, bool defaultValue);
|
||||
std::optional<bool> parseBool(const QString &string);
|
||||
|
||||
QString join(const QVector<QStringRef> &strings, const QString &separator);
|
||||
|
||||
|
@ -61,10 +61,10 @@ void LogController::mainAction()
|
||||
{
|
||||
using Utils::String::parseBool;
|
||||
|
||||
const bool isNormal = parseBool(params()["normal"], true);
|
||||
const bool isInfo = parseBool(params()["info"], true);
|
||||
const bool isWarning = parseBool(params()["warning"], true);
|
||||
const bool isCritical = parseBool(params()["critical"], true);
|
||||
const bool isNormal = parseBool(params()["normal"]).value_or(true);
|
||||
const bool isInfo = parseBool(params()["info"]).value_or(true);
|
||||
const bool isWarning = parseBool(params()["warning"]).value_or(true);
|
||||
const bool isCritical = parseBool(params()["critical"]).value_or(true);
|
||||
|
||||
bool ok = false;
|
||||
int lastKnownId = params()["last_known_id"].toInt(&ok);
|
||||
|
@ -89,7 +89,7 @@ void RSSController::moveItemAction()
|
||||
|
||||
void RSSController::itemsAction()
|
||||
{
|
||||
const bool withData {parseBool(params()["withData"], false)};
|
||||
const bool withData {parseBool(params()["withData"]).value_or(false)};
|
||||
|
||||
const auto jsonVal = RSS::Session::instance()->rootFolder()->toJsonValue(withData);
|
||||
setResult(jsonVal.toObject());
|
||||
|
@ -264,7 +264,7 @@ void SearchController::enablePluginAction()
|
||||
requireParams({"names", "enable"});
|
||||
|
||||
const QStringList names = params()["names"].split('|');
|
||||
const bool enable = Utils::String::parseBool(params()["enable"].trimmed(), false);
|
||||
const bool enable = Utils::String::parseBool(params()["enable"].trimmed()).value_or(false);
|
||||
|
||||
for (const QString &name : names)
|
||||
SearchPluginManager::instance()->enablePlugin(name.trimmed(), enable);
|
||||
|
@ -253,7 +253,7 @@ void TorrentsController::infoAction()
|
||||
const QString filter {params()["filter"]};
|
||||
const QString category {params()["category"]};
|
||||
const QString sortedColumn {params()["sort"]};
|
||||
const bool reverse {parseBool(params()["reverse"], false)};
|
||||
const bool reverse {parseBool(params()["reverse"]).value_or(false)};
|
||||
int limit {params()["limit"].toInt()};
|
||||
int offset {params()["offset"].toInt()};
|
||||
const QStringList hashes {params()["hashes"].split('|', QString::SkipEmptyParts)};
|
||||
@ -602,9 +602,9 @@ void TorrentsController::addAction()
|
||||
{
|
||||
const QString urls = params()["urls"];
|
||||
|
||||
const bool skipChecking = parseBool(params()["skip_checking"], false);
|
||||
const bool seqDownload = parseBool(params()["sequentialDownload"], false);
|
||||
const bool firstLastPiece = parseBool(params()["firstLastPiecePrio"], false);
|
||||
const bool skipChecking = parseBool(params()["skip_checking"]).value_or(false);
|
||||
const bool seqDownload = parseBool(params()["sequentialDownload"]).value_or(false);
|
||||
const bool firstLastPiece = parseBool(params()["firstLastPiecePrio"]).value_or(false);
|
||||
const auto addPaused = TriStateBool::fromString(params()["paused"]);
|
||||
const QString savepath = params()["savepath"].trimmed();
|
||||
const QString category = params()["category"];
|
||||
@ -962,7 +962,7 @@ void TorrentsController::setSuperSeedingAction()
|
||||
{
|
||||
requireParams({"hashes", "value"});
|
||||
|
||||
const bool value {parseBool(params()["value"], false)};
|
||||
const bool value {parseBool(params()["value"]).value_or(false)};
|
||||
const QStringList hashes {params()["hashes"].split('|')};
|
||||
applyToTorrents(hashes, [value](BitTorrent::TorrentHandle *const torrent) { torrent->setSuperSeeding(value); });
|
||||
}
|
||||
@ -971,7 +971,7 @@ void TorrentsController::setForceStartAction()
|
||||
{
|
||||
requireParams({"hashes", "value"});
|
||||
|
||||
const bool value {parseBool(params()["value"], false)};
|
||||
const bool value {parseBool(params()["value"]).value_or(false)};
|
||||
const QStringList hashes {params()["hashes"].split('|')};
|
||||
applyToTorrents(hashes, [value](BitTorrent::TorrentHandle *const torrent)
|
||||
{
|
||||
@ -984,7 +984,7 @@ void TorrentsController::deleteAction()
|
||||
requireParams({"hashes", "deleteFiles"});
|
||||
|
||||
const QStringList hashes {params()["hashes"].split('|')};
|
||||
const DeleteOption deleteOption = parseBool(params()["deleteFiles"], false)
|
||||
const DeleteOption deleteOption = parseBool(params()["deleteFiles"]).value_or(false)
|
||||
? TorrentAndFiles : Torrent;
|
||||
applyToTorrents(hashes, [deleteOption](const BitTorrent::TorrentHandle *torrent)
|
||||
{
|
||||
@ -1085,7 +1085,7 @@ void TorrentsController::setAutoManagementAction()
|
||||
requireParams({"hashes", "enable"});
|
||||
|
||||
const QStringList hashes {params()["hashes"].split('|')};
|
||||
const bool isEnabled {parseBool(params()["enable"], false)};
|
||||
const bool isEnabled {parseBool(params()["enable"]).value_or(false)};
|
||||
|
||||
applyToTorrents(hashes, [isEnabled](BitTorrent::TorrentHandle *const torrent)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user