Replace boost::optional with std::optional (#4877)

This commit is contained in:
pajlada
2023-10-08 18:50:48 +02:00
committed by GitHub
parent fe4d6121a2
commit fec45889a8
88 changed files with 428 additions and 383 deletions
+2 -2
View File
@@ -36,7 +36,7 @@ Button::Button(BaseWidget *parent)
this->setMouseTracking(true);
}
void Button::setMouseEffectColor(boost::optional<QColor> color)
void Button::setMouseEffectColor(std::optional<QColor> color)
{
this->mouseEffectColor_ = std::move(color);
}
@@ -185,7 +185,7 @@ void Button::fancyPaint(QPainter &painter)
if (this->mouseEffectColor_)
{
c = this->mouseEffectColor_.get();
c = *this->mouseEffectColor_;
}
else
{
+4 -3
View File
@@ -2,7 +2,6 @@
#include "widgets/BaseWidget.hpp"
#include <boost/optional.hpp>
#include <QMenu>
#include <QMouseEvent>
#include <QPainter>
@@ -10,6 +9,8 @@
#include <QTimer>
#include <QWidget>
#include <optional>
namespace chatterino {
class Button : public BaseWidget
@@ -31,7 +32,7 @@ public:
Button(BaseWidget *parent = nullptr);
void setMouseEffectColor(boost::optional<QColor> color);
void setMouseEffectColor(std::optional<QColor> color);
void setPixmap(const QPixmap &pixmap_);
const QPixmap &getPixmap() const;
@@ -94,7 +95,7 @@ private:
double hoverMultiplier_{0.0};
QTimer effectTimer_{};
std::vector<ClickEffect> clickEffects_{};
boost::optional<QColor> mouseEffectColor_{};
std::optional<QColor> mouseEffectColor_{};
std::unique_ptr<QMenu> menu_{};
};
+21 -19
View File
@@ -291,13 +291,12 @@ bool ChannelView::paused() const
return this->pausable() && !this->pauses_.empty();
}
void ChannelView::pause(PauseReason reason, boost::optional<uint> msecs)
void ChannelView::pause(PauseReason reason, std::optional<uint> msecs)
{
if (msecs)
{
/// Msecs has a value
auto timePoint =
SteadyClock::now() + std::chrono::milliseconds(msecs.get());
auto timePoint = SteadyClock::now() + std::chrono::milliseconds(*msecs);
auto it = this->pauses_.find(reason);
if (it == this->pauses_.end())
@@ -308,15 +307,19 @@ void ChannelView::pause(PauseReason reason, boost::optional<uint> msecs)
else
{
/// If the new time point is newer then we override.
if (it->second && it->second.get() < timePoint)
it->second = timePoint;
auto &previousTimePoint = it->second;
if (previousTimePoint.has_value() &&
previousTimePoint.value() < timePoint)
{
previousTimePoint = timePoint;
}
}
}
else
{
/// Msecs is none -> pause is infinite.
/// We just override the value.
this->pauses_[reason] = boost::none;
this->pauses_[reason] = std::nullopt;
}
this->updatePauses();
@@ -339,7 +342,7 @@ void ChannelView::updatePauses()
this->unpaused();
/// No pauses so we can stop the timer
this->pauseEnd_ = boost::none;
this->pauseEnd_ = std::nullopt;
this->pauseTimer_.stop();
this->scrollBar_->offsetMaximum(this->pauseScrollMaximumOffset_);
@@ -355,7 +358,7 @@ void ChannelView::updatePauses()
}))
{
/// Some of the pauses are infinite
this->pauseEnd_ = boost::none;
this->pauseEnd_ = std::nullopt;
this->pauseTimer_.stop();
}
else
@@ -366,7 +369,7 @@ void ChannelView::updatePauses()
[](auto &&a, auto &&b) {
return a.second > b.second;
})
->second.get();
->second.value();
if (pauseEnd != this->pauseEnd_)
{
@@ -645,13 +648,12 @@ bool ChannelView::getEnableScrollingToBottom() const
return this->enableScrollingToBottom_;
}
void ChannelView::setOverrideFlags(boost::optional<MessageElementFlags> value)
void ChannelView::setOverrideFlags(std::optional<MessageElementFlags> value)
{
this->overrideFlags_ = std::move(value);
}
const boost::optional<MessageElementFlags> &ChannelView::getOverrideFlags()
const
const std::optional<MessageElementFlags> &ChannelView::getOverrideFlags() const
{
return this->overrideFlags_;
}
@@ -697,7 +699,7 @@ void ChannelView::setChannel(ChannelPtr underlyingChannel)
this->channelConnections_.managedConnect(
underlyingChannel->messageAppended,
[this](MessagePtr &message,
boost::optional<MessageFlags> overridingFlags) {
std::optional<MessageFlags> overridingFlags) {
if (this->shouldIncludeMessage(message))
{
if (this->channel_->lastDate_ != QDate::currentDate())
@@ -713,12 +715,12 @@ void ChannelView::setChannel(ChannelPtr underlyingChannel)
// logging will be handled. Prevent duplications.
if (overridingFlags)
{
overridingFlags.get().set(MessageFlag::DoNotLog);
overridingFlags->set(MessageFlag::DoNotLog);
}
else
{
overridingFlags = MessageFlags(message->flags);
overridingFlags.get().set(MessageFlag::DoNotLog);
overridingFlags->set(MessageFlag::DoNotLog);
}
this->channel_->addMessage(message, overridingFlags);
@@ -764,7 +766,7 @@ void ChannelView::setChannel(ChannelPtr underlyingChannel)
this->channelConnections_.managedConnect(
this->channel_->messageAppended,
[this](MessagePtr &message,
boost::optional<MessageFlags> overridingFlags) {
std::optional<MessageFlags> overridingFlags) {
this->messageAppended(message, std::move(overridingFlags));
});
@@ -880,12 +882,12 @@ bool ChannelView::hasSourceChannel() const
}
void ChannelView::messageAppended(MessagePtr &message,
boost::optional<MessageFlags> overridingFlags)
std::optional<MessageFlags> overridingFlags)
{
auto *messageFlags = &message->flags;
if (overridingFlags)
{
messageFlags = overridingFlags.get_ptr();
messageFlags = &*overridingFlags;
}
auto messageRef = std::make_shared<MessageLayout>(message);
@@ -1109,7 +1111,7 @@ MessageElementFlags ChannelView::getFlags() const
if (this->overrideFlags_)
{
return this->overrideFlags_.get();
return *this->overrideFlags_;
}
MessageElementFlags flags = app->windows->getWordFlags();
+7 -7
View File
@@ -93,8 +93,8 @@ public:
void setEnableScrollingToBottom(bool);
bool getEnableScrollingToBottom() const;
void setOverrideFlags(boost::optional<MessageElementFlags> value);
const boost::optional<MessageElementFlags> &getOverrideFlags() const;
void setOverrideFlags(std::optional<MessageElementFlags> value);
const std::optional<MessageElementFlags> &getOverrideFlags() const;
void updateLastReadMessage();
/**
@@ -112,7 +112,7 @@ public:
bool pausable() const;
void setPausable(bool value);
bool paused() const;
void pause(PauseReason reason, boost::optional<uint> msecs = boost::none);
void pause(PauseReason reason, std::optional<uint> msecs = std::nullopt);
void unpause(PauseReason reason);
MessageElementFlags getFlags() const;
@@ -195,7 +195,7 @@ private:
void initializeSignals();
void messageAppended(MessagePtr &message,
boost::optional<MessageFlags> overridingFlags);
std::optional<MessageFlags> overridingFlags);
void messageAddedAtStart(std::vector<MessagePtr> &messages);
void messageRemoveFromStart(MessagePtr &message);
void messageReplaced(size_t index, MessagePtr &replacement);
@@ -265,15 +265,15 @@ private:
bool pausable_ = false;
QTimer pauseTimer_;
std::unordered_map<PauseReason, boost::optional<SteadyClock::time_point>>
std::unordered_map<PauseReason, std::optional<SteadyClock::time_point>>
pauses_;
boost::optional<SteadyClock::time_point> pauseEnd_;
std::optional<SteadyClock::time_point> pauseEnd_;
int pauseScrollMinimumOffset_ = 0;
int pauseScrollMaximumOffset_ = 0;
// Keeps track how many message indices we need to offset the selection when we resume scrolling
uint32_t pauseSelectionOffset_ = 0;
boost::optional<MessageElementFlags> overrideFlags_;
std::optional<MessageElementFlags> overrideFlags_;
MessageLayoutPtr lastReadMessage_;
ThreadGuard snapshotGuard_;
+1 -1
View File
@@ -52,7 +52,7 @@ ChannelPtr SearchPopup::filter(const QString &text, const QString &channelName,
// If all predicates match, add the message to the channel
if (accept)
{
auto overrideFlags = boost::optional<MessageFlags>(message->flags);
auto overrideFlags = std::optional<MessageFlags>(message->flags);
overrideFlags->set(MessageFlag::DoNotLog);
channel->addMessage(message, overrideFlags);