diff --git a/src/plugins/qmldesigner/components/connectioneditor/connectioneditorevaluator.cpp b/src/plugins/qmldesigner/components/connectioneditor/connectioneditorevaluator.cpp index ba69f7c1f34..0a52deb7af5 100644 --- a/src/plugins/qmldesigner/components/connectioneditor/connectioneditorevaluator.cpp +++ b/src/plugins/qmldesigner/components/connectioneditor/connectioneditorevaluator.cpp @@ -344,10 +344,13 @@ public: ConnectionEditorStatements::Variable lhs() const { - if (!couldBeLHS()) + if (!isValid()) return {}; - return std::get(m_rhs); + if (auto rhs = std::get_if(&m_rhs)) + return *rhs; + + return {}; } ConnectionEditorStatements::Variable variable() const @@ -355,8 +358,8 @@ public: if (!isValid()) return {}; - if (std::holds_alternative(m_rhs)) - return std::get(m_rhs); + if (auto rhs = std::get_if(&m_rhs)) + return *rhs; return {}; } @@ -702,8 +705,8 @@ public: MatchedCondition *currentCondition() { - if (std::holds_alternative(m_handler)) - return &std::get(m_handler).condition; + if (auto handler = std::get_if(&m_handler)) + return &handler->condition; return nullptr; } @@ -997,8 +1000,8 @@ bool ConnectionEditorEvaluator::visit(QmlJS::AST::CallExpression *callExpression callExpression->accept(&callVisitor); if (callVisitor.isValid()) { ConnectionEditorStatements::RightHandSide rhs = callVisitor.rhs(); - if (std::holds_alternative(rhs)) - *currentStatement = std::get(rhs); + if (auto rhs_ = std::get_if(&rhs)) + *currentStatement = *rhs_; else return d->checkValidityAndReturn(false, "Invalid Matched Function type."); } else { diff --git a/src/plugins/qmldesigner/designercore/imagecache/imagecachefontcollector.cpp b/src/plugins/qmldesigner/designercore/imagecache/imagecachefontcollector.cpp index d3363e2d630..2e0c4813ec8 100644 --- a/src/plugins/qmldesigner/designercore/imagecache/imagecachefontcollector.cpp +++ b/src/plugins/qmldesigner/designercore/imagecache/imagecachefontcollector.cpp @@ -19,7 +19,7 @@ ImageCacheFontCollector::~ImageCacheFontCollector() = default; namespace { -QByteArray fileToByteArray(QString const &filename) +QByteArray fileToByteArray(const QString &filename) { QFile file(filename); QFileInfo fileInfo(file); @@ -98,16 +98,18 @@ void ImageCacheFontCollector::start(Utils::SmallStringView name, { QFont font; if (resolveFont(QString(name), font) >= 0) { - auto &&auxiliaryData = std::get(auxiliaryDataValue); - QColor textColor = auxiliaryData.colorName; - QSize size = auxiliaryData.size; - QString text = font.family() + "\n" + auxiliaryData.text; + if (auto auxiliaryData = std::get_if( + &auxiliaryDataValue)) { + QColor textColor = auxiliaryData->colorName; + 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()) { - captureCallback(std::move(image), {}, {}); - return; + if (!image.isNull()) { + captureCallback(std::move(image), {}, {}); + return; + } } } abortCallback(ImageCache::AbortReason::Failed); @@ -120,15 +122,17 @@ ImageCacheCollectorInterface::ImageTuple ImageCacheFontCollector::createImage( { QFont font; if (resolveFont(QString(name), font) >= 0) { - auto &&auxiliaryData = std::get(auxiliaryDataValue); - QColor textColor = auxiliaryData.colorName; - QSize size = auxiliaryData.size; - QString text = font.family() + "\n\n" + auxiliaryData.text; + if (auto auxiliaryData = std::get_if( + &auxiliaryDataValue)) { + QColor textColor = auxiliaryData->colorName; + 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()) - return {image, {}, {}}; + if (!image.isNull()) + return {image, {}, {}}; + } } return {}; @@ -142,15 +146,17 @@ QIcon ImageCacheFontCollector::createIcon(Utils::SmallStringView name, QFont font; if (resolveFont(QString(name), font) >= 0) { - auto &&auxiliaryData = std::get(auxiliaryDataValue); - QColor textColor = auxiliaryData.colorName; - const auto sizes = auxiliaryData.sizes; - QString text = auxiliaryData.text; + if (auto auxiliaryData = std::get_if( + &auxiliaryDataValue)) { + QColor textColor = auxiliaryData->colorName; + const auto sizes = auxiliaryData->sizes; + QString text = auxiliaryData->text; - for (QSize size : sizes) { - QImage image = createFontImage(text, textColor, font, size); - if (!image.isNull()) - icon.addPixmap(QPixmap::fromImage(image)); + for (QSize size : sizes) { + QImage image = createFontImage(text, textColor, font, size); + if (!image.isNull()) + icon.addPixmap(QPixmap::fromImage(image)); + } } }