From e9a5fded5c2e4aad7884d14d762285f12bf64673 Mon Sep 17 00:00:00 2001 From: Peter Keresztes Schmidt Date: Wed, 22 Sep 2021 14:02:33 +0200 Subject: [PATCH] DiagramContextWidget: Fix verification of keys --- sources/diagramcontext.cpp | 9 +++++---- sources/diagramcontext.h | 9 +++++---- sources/ui/diagramcontextwidget.cpp | 4 +--- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/sources/diagramcontext.cpp b/sources/diagramcontext.cpp index f0b8eac85..1e5f6db9a 100644 --- a/sources/diagramcontext.cpp +++ b/sources/diagramcontext.cpp @@ -92,7 +92,7 @@ const QVariant DiagramContext::operator[](const QString &key) const @return true if the insertion succeeds, false otherwise */ bool DiagramContext::addValue(const QString &key, const QVariant &value, bool show) { - if (keyIsAcceptable(key)) { + if (isKeyAcceptable(key)) { m_content.insert(key, value); m_content_show.insert(key, show); return(true); @@ -240,10 +240,11 @@ bool DiagramContext::stringLongerThan(const QString &a, const QString &b) { @param key a key string @return true if that key is acceptable, false otherwise */ -bool DiagramContext::keyIsAcceptable(const QString &key) const +bool DiagramContext::isKeyAcceptable(const QString &key) { - QRegularExpression re(DiagramContext::validKeyRegExp()); - QRegularExpressionMatch match =re.match(key); + static const QRegularExpression re(DiagramContext::validKeyRegExp()); + + QRegularExpressionMatch match = re.match(key); return match.hasMatch(); } diff --git a/sources/diagramcontext.h b/sources/diagramcontext.h index 3c9b5f463..837b80b9d 100644 --- a/sources/diagramcontext.h +++ b/sources/diagramcontext.h @@ -81,13 +81,14 @@ class DiagramContext void fromXml(const pugi::xml_node &dom_element, const QString &tag_name = "property"); void toSettings(QSettings &, const QString &) const; void fromSettings(QSettings &, const QString &); - - static QString validKeyRegExp(); + + static bool isKeyAcceptable(const QString &); private: static bool stringLongerThan(const QString &, const QString &); - bool keyIsAcceptable(const QString &) const; - /// Diagram context data (key/value pairs) + static QString validKeyRegExp(); + + /// Diagram context data (key/value pairs) QHash m_content; QHash m_content_show; }; diff --git a/sources/ui/diagramcontextwidget.cpp b/sources/ui/diagramcontextwidget.cpp index 7d7b6e4fc..1db3daf7c 100644 --- a/sources/ui/diagramcontextwidget.cpp +++ b/sources/ui/diagramcontextwidget.cpp @@ -120,8 +120,6 @@ void DiagramContextWidget::clear() */ int DiagramContextWidget::highlightNonAcceptableKeys() { - static QRegularExpression re(DiagramContext::validKeyRegExp()); - QBrush fg_brush = ui->m_table->palette().brush(QPalette::WindowText); int invalid_keys = 0; @@ -135,7 +133,7 @@ int DiagramContextWidget::highlightNonAcceptableKeys() bool highlight = false; if (!qtwi_name -> text().isEmpty()) { - if (re!=QRegularExpression(qtwi_name -> text())) + if (! DiagramContext::isKeyAcceptable(qtwi_name->text())) { highlight = true; ++ invalid_keys;