From 4429a16ca86dbb04e50ca06d33d2cb62fd9e5276 Mon Sep 17 00:00:00 2001 From: "Vladimir Golovnev (Glassez)" Date: Sat, 2 Jan 2021 15:45:36 +0300 Subject: [PATCH] Use std::optional instead of boost::optional --- src/base/bittorrent/addtorrentparams.h | 4 ++-- src/base/bittorrent/session.cpp | 4 +--- src/base/rss/rss_autodownloadrule.cpp | 14 +++++++------- src/base/rss/rss_autodownloadrule.h | 6 +++--- src/gui/addnewtorrentdialog.cpp | 2 +- src/gui/rss/automatedrssdownloader.cpp | 2 +- src/webui/api/torrentscontroller.cpp | 4 ++-- 7 files changed, 17 insertions(+), 19 deletions(-) diff --git a/src/base/bittorrent/addtorrentparams.h b/src/base/bittorrent/addtorrentparams.h index 2cdabb8ae..a420b6a5a 100644 --- a/src/base/bittorrent/addtorrentparams.h +++ b/src/base/bittorrent/addtorrentparams.h @@ -28,7 +28,7 @@ #pragma once -#include +#include #include #include @@ -55,7 +55,7 @@ namespace BitTorrent TriStateBool addPaused; QVector filePriorities; // used if TorrentInfo is set bool skipChecking = false; - boost::optional contentLayout; + std::optional contentLayout; TriStateBool useAutoTMM; int uploadLimit = -1; int downloadLimit = -1; diff --git a/src/base/bittorrent/session.cpp b/src/base/bittorrent/session.cpp index d203a60cd..7c78c947c 100644 --- a/src/base/bittorrent/session.cpp +++ b/src/base/bittorrent/session.cpp @@ -2057,9 +2057,7 @@ LoadTorrentParams Session::initLoadTorrentParams(const AddTorrentParams &addTorr loadTorrentParams.tags = addTorrentParams.tags; loadTorrentParams.firstLastPiecePriority = addTorrentParams.firstLastPiecePriority; loadTorrentParams.hasSeedStatus = addTorrentParams.skipChecking; // do not react on 'torrent_finished_alert' when skipping - loadTorrentParams.contentLayout = (addTorrentParams.contentLayout - ? *addTorrentParams.contentLayout - : torrentContentLayout()); + loadTorrentParams.contentLayout = addTorrentParams.contentLayout.value_or(torrentContentLayout()); loadTorrentParams.forced = (addTorrentParams.addForced == TriStateBool::True); loadTorrentParams.paused = ((addTorrentParams.addPaused == TriStateBool::Undefined) ? isAddTorrentPaused() diff --git a/src/base/rss/rss_autodownloadrule.cpp b/src/base/rss/rss_autodownloadrule.cpp index afe0d1e5e..89d712664 100644 --- a/src/base/rss/rss_autodownloadrule.cpp +++ b/src/base/rss/rss_autodownloadrule.cpp @@ -92,15 +92,15 @@ namespace } } - boost::optional jsonValueToContentLayout(const QJsonValue &jsonVal) + std::optional jsonValueToContentLayout(const QJsonValue &jsonVal) { const QString str = jsonVal.toString(); if (str.isEmpty()) - return {}; + return std::nullopt; return Utils::String::toEnum(str, BitTorrent::TorrentContentLayout::Original); } - QJsonValue contentLayoutToJsonValue(const boost::optional contentLayout) + QJsonValue contentLayoutToJsonValue(const std::optional contentLayout) { if (!contentLayout) return {}; @@ -143,7 +143,7 @@ namespace RSS QString savePath; QString category; TriStateBool addPaused = TriStateBool::Undefined; - boost::optional contentLayout; + std::optional contentLayout; bool smartFilter = false; QStringList previouslyMatchedEpisodes; @@ -505,7 +505,7 @@ AutoDownloadRule AutoDownloadRule::fromJsonObject(const QJsonObject &jsonObj, co else { const TriStateBool createSubfolder = jsonValueToTriStateBool(jsonObj.value(Str_CreateSubfolder)); - boost::optional contentLayout; + std::optional contentLayout; if (createSubfolder == TriStateBool::True) contentLayout = BitTorrent::TorrentContentLayout::Original; else if (createSubfolder == TriStateBool::False) @@ -649,12 +649,12 @@ void AutoDownloadRule::setAddPaused(const TriStateBool addPaused) m_dataPtr->addPaused = addPaused; } -boost::optional AutoDownloadRule::torrentContentLayout() const +std::optional AutoDownloadRule::torrentContentLayout() const { return m_dataPtr->contentLayout; } -void AutoDownloadRule::setTorrentContentLayout(const boost::optional contentLayout) +void AutoDownloadRule::setTorrentContentLayout(const std::optional contentLayout) { m_dataPtr->contentLayout = contentLayout; } diff --git a/src/base/rss/rss_autodownloadrule.h b/src/base/rss/rss_autodownloadrule.h index 0d3fe298f..48c26c7ef 100644 --- a/src/base/rss/rss_autodownloadrule.h +++ b/src/base/rss/rss_autodownloadrule.h @@ -29,7 +29,7 @@ #pragma once -#include +#include #include #include @@ -83,8 +83,8 @@ namespace RSS void setSavePath(const QString &savePath); TriStateBool addPaused() const; void setAddPaused(TriStateBool addPaused); - boost::optional torrentContentLayout() const; - void setTorrentContentLayout(boost::optional contentLayout); + std::optional torrentContentLayout() const; + void setTorrentContentLayout(std::optional contentLayout); QString assignedCategory() const; void setCategory(const QString &category); diff --git a/src/gui/addnewtorrentdialog.cpp b/src/gui/addnewtorrentdialog.cpp index 9b8c50052..559f1836e 100644 --- a/src/gui/addnewtorrentdialog.cpp +++ b/src/gui/addnewtorrentdialog.cpp @@ -124,7 +124,7 @@ AddNewTorrentDialog::AddNewTorrentDialog(const BitTorrent::AddTorrentParams &inP m_ui->checkBoxRememberLastSavePath->setChecked(rememberLastSavePath); m_ui->contentLayoutComboBox->setCurrentIndex( - static_cast(m_torrentParams.contentLayout ? *m_torrentParams.contentLayout : session->torrentContentLayout())); + static_cast(m_torrentParams.contentLayout.value_or(session->torrentContentLayout()))); m_ui->sequentialCheckBox->setChecked(m_torrentParams.sequential); m_ui->firstLastCheckBox->setChecked(m_torrentParams.firstLastPiecePriority); diff --git a/src/gui/rss/automatedrssdownloader.cpp b/src/gui/rss/automatedrssdownloader.cpp index 1a0a3f640..0956b6ad6 100644 --- a/src/gui/rss/automatedrssdownloader.cpp +++ b/src/gui/rss/automatedrssdownloader.cpp @@ -354,7 +354,7 @@ void AutomatedRssDownloader::updateEditedRule() addPaused = TriStateBool::False; m_currentRule.setAddPaused(addPaused); - boost::optional contentLayout; + std::optional contentLayout; if (m_ui->comboContentLayout->currentIndex() > 0) contentLayout = static_cast(m_ui->comboContentLayout->currentIndex() - 1); m_currentRule.setTorrentContentLayout(contentLayout); diff --git a/src/webui/api/torrentscontroller.cpp b/src/webui/api/torrentscontroller.cpp index c19ad45c1..7b736f244 100644 --- a/src/webui/api/torrentscontroller.cpp +++ b/src/webui/api/torrentscontroller.cpp @@ -616,9 +616,9 @@ void TorrentsController::addAction() const auto autoTMM = TriStateBool::fromString(params()["autoTMM"]); const QString contentLayoutParam = params()["contentLayout"]; - const boost::optional contentLayout = (!contentLayoutParam.isEmpty() + const std::optional contentLayout = (!contentLayoutParam.isEmpty() ? Utils::String::toEnum(contentLayoutParam, BitTorrent::TorrentContentLayout::Original) - : boost::optional {}); + : std::optional {}); QList cookies; if (!cookie.isEmpty())