forked from qt-creator/qt-creator
QmlDesigner: Prefer std::get_if to std::get for variants
It cannot not throw, so no exceptions code is generated. And it is quite often shorter too. Change-Id: Icd555cedb880a1547b0ddcbcdd74fc21feb83ccb Reviewed-by: Ali Kianian <ali.kianian@qt.io> Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This commit is contained in:
@@ -344,10 +344,13 @@ public:
|
|||||||
|
|
||||||
ConnectionEditorStatements::Variable lhs() const
|
ConnectionEditorStatements::Variable lhs() const
|
||||||
{
|
{
|
||||||
if (!couldBeLHS())
|
if (!isValid())
|
||||||
return {};
|
return {};
|
||||||
|
|
||||||
return std::get<ConnectionEditorStatements::Variable>(m_rhs);
|
if (auto rhs = std::get_if<ConnectionEditorStatements::Variable>(&m_rhs))
|
||||||
|
return *rhs;
|
||||||
|
|
||||||
|
return {};
|
||||||
}
|
}
|
||||||
|
|
||||||
ConnectionEditorStatements::Variable variable() const
|
ConnectionEditorStatements::Variable variable() const
|
||||||
@@ -355,8 +358,8 @@ public:
|
|||||||
if (!isValid())
|
if (!isValid())
|
||||||
return {};
|
return {};
|
||||||
|
|
||||||
if (std::holds_alternative<ConnectionEditorStatements::Variable>(m_rhs))
|
if (auto rhs = std::get_if<ConnectionEditorStatements::Variable>(&m_rhs))
|
||||||
return std::get<ConnectionEditorStatements::Variable>(m_rhs);
|
return *rhs;
|
||||||
|
|
||||||
return {};
|
return {};
|
||||||
}
|
}
|
||||||
@@ -702,8 +705,8 @@ public:
|
|||||||
|
|
||||||
MatchedCondition *currentCondition()
|
MatchedCondition *currentCondition()
|
||||||
{
|
{
|
||||||
if (std::holds_alternative<ConditionalStatement>(m_handler))
|
if (auto handler = std::get_if<ConditionalStatement>(&m_handler))
|
||||||
return &std::get<ConditionalStatement>(m_handler).condition;
|
return &handler->condition;
|
||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -997,8 +1000,8 @@ bool ConnectionEditorEvaluator::visit(QmlJS::AST::CallExpression *callExpression
|
|||||||
callExpression->accept(&callVisitor);
|
callExpression->accept(&callVisitor);
|
||||||
if (callVisitor.isValid()) {
|
if (callVisitor.isValid()) {
|
||||||
ConnectionEditorStatements::RightHandSide rhs = callVisitor.rhs();
|
ConnectionEditorStatements::RightHandSide rhs = callVisitor.rhs();
|
||||||
if (std::holds_alternative<ConnectionEditorStatements::MatchedFunction>(rhs))
|
if (auto rhs_ = std::get_if<ConnectionEditorStatements::MatchedFunction>(&rhs))
|
||||||
*currentStatement = std::get<ConnectionEditorStatements::MatchedFunction>(rhs);
|
*currentStatement = *rhs_;
|
||||||
else
|
else
|
||||||
return d->checkValidityAndReturn(false, "Invalid Matched Function type.");
|
return d->checkValidityAndReturn(false, "Invalid Matched Function type.");
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ ImageCacheFontCollector::~ImageCacheFontCollector() = default;
|
|||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
QByteArray fileToByteArray(QString const &filename)
|
QByteArray fileToByteArray(const QString &filename)
|
||||||
{
|
{
|
||||||
QFile file(filename);
|
QFile file(filename);
|
||||||
QFileInfo fileInfo(file);
|
QFileInfo fileInfo(file);
|
||||||
@@ -98,16 +98,18 @@ void ImageCacheFontCollector::start(Utils::SmallStringView name,
|
|||||||
{
|
{
|
||||||
QFont font;
|
QFont font;
|
||||||
if (resolveFont(QString(name), font) >= 0) {
|
if (resolveFont(QString(name), font) >= 0) {
|
||||||
auto &&auxiliaryData = std::get<ImageCache::FontCollectorSizeAuxiliaryData>(auxiliaryDataValue);
|
if (auto auxiliaryData = std::get_if<ImageCache::FontCollectorSizeAuxiliaryData>(
|
||||||
QColor textColor = auxiliaryData.colorName;
|
&auxiliaryDataValue)) {
|
||||||
QSize size = auxiliaryData.size;
|
QColor textColor = auxiliaryData->colorName;
|
||||||
QString text = font.family() + "\n" + auxiliaryData.text;
|
QSize size = auxiliaryData->size;
|
||||||
|
QString text = font.family() + "\n" + auxiliaryData->text;
|
||||||
|
|
||||||
QImage image = createFontImage(text, textColor, font, size);
|
QImage image = createFontImage(text, textColor, font, size);
|
||||||
|
|
||||||
if (!image.isNull()) {
|
if (!image.isNull()) {
|
||||||
captureCallback(std::move(image), {}, {});
|
captureCallback(std::move(image), {}, {});
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
abortCallback(ImageCache::AbortReason::Failed);
|
abortCallback(ImageCache::AbortReason::Failed);
|
||||||
@@ -120,15 +122,17 @@ ImageCacheCollectorInterface::ImageTuple ImageCacheFontCollector::createImage(
|
|||||||
{
|
{
|
||||||
QFont font;
|
QFont font;
|
||||||
if (resolveFont(QString(name), font) >= 0) {
|
if (resolveFont(QString(name), font) >= 0) {
|
||||||
auto &&auxiliaryData = std::get<ImageCache::FontCollectorSizeAuxiliaryData>(auxiliaryDataValue);
|
if (auto auxiliaryData = std::get_if<ImageCache::FontCollectorSizeAuxiliaryData>(
|
||||||
QColor textColor = auxiliaryData.colorName;
|
&auxiliaryDataValue)) {
|
||||||
QSize size = auxiliaryData.size;
|
QColor textColor = auxiliaryData->colorName;
|
||||||
QString text = font.family() + "\n\n" + auxiliaryData.text;
|
QSize size = auxiliaryData->size;
|
||||||
|
QString text = font.family() + "\n\n" + auxiliaryData->text;
|
||||||
|
|
||||||
QImage image = createFontImage(text, textColor, font, size);
|
QImage image = createFontImage(text, textColor, font, size);
|
||||||
|
|
||||||
if (!image.isNull())
|
if (!image.isNull())
|
||||||
return {image, {}, {}};
|
return {image, {}, {}};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return {};
|
return {};
|
||||||
@@ -142,15 +146,17 @@ QIcon ImageCacheFontCollector::createIcon(Utils::SmallStringView name,
|
|||||||
|
|
||||||
QFont font;
|
QFont font;
|
||||||
if (resolveFont(QString(name), font) >= 0) {
|
if (resolveFont(QString(name), font) >= 0) {
|
||||||
auto &&auxiliaryData = std::get<ImageCache::FontCollectorSizesAuxiliaryData>(auxiliaryDataValue);
|
if (auto auxiliaryData = std::get_if<ImageCache::FontCollectorSizesAuxiliaryData>(
|
||||||
QColor textColor = auxiliaryData.colorName;
|
&auxiliaryDataValue)) {
|
||||||
const auto sizes = auxiliaryData.sizes;
|
QColor textColor = auxiliaryData->colorName;
|
||||||
QString text = auxiliaryData.text;
|
const auto sizes = auxiliaryData->sizes;
|
||||||
|
QString text = auxiliaryData->text;
|
||||||
|
|
||||||
for (QSize size : sizes) {
|
for (QSize size : sizes) {
|
||||||
QImage image = createFontImage(text, textColor, font, size);
|
QImage image = createFontImage(text, textColor, font, size);
|
||||||
if (!image.isNull())
|
if (!image.isNull())
|
||||||
icon.addPixmap(QPixmap::fromImage(image));
|
icon.addPixmap(QPixmap::fromImage(image));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user