From 6644be15bdd50e574c644c9b07376a814a34ad5a Mon Sep 17 00:00:00 2001 From: Uwe Rathmann Date: Fri, 1 Dec 2017 09:33:13 +0100 Subject: [PATCH] using QGlobalStatic --- src/nodes/QskRichTextRenderer.cpp | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/src/nodes/QskRichTextRenderer.cpp b/src/nodes/QskRichTextRenderer.cpp index 96189e64..5216e47d 100644 --- a/src/nodes/QskRichTextRenderer.cpp +++ b/src/nodes/QskRichTextRenderer.cpp @@ -8,6 +8,7 @@ #include "QskTextOptions.h" #include +#include QSK_QT_PRIVATE_BEGIN #include @@ -97,15 +98,12 @@ namespace better use different items as we might end up in events internally being sent, that leads to crashes because of it */ -static TextItem* qskRenderHelper = nullptr; -static TextItem* qskLayoutHelper = nullptr; +Q_GLOBAL_STATIC( TextItem, qskRenderHelper ) +Q_GLOBAL_STATIC( TextItem, qskLayoutHelper ) QSizeF QskRichTextRenderer::textSize( const QString& text, const QFont& font, const QskTextOptions& options ) { - if ( qskLayoutHelper == NULL ) - qskLayoutHelper = new TextItem(); - auto& item = *qskLayoutHelper; item.begin(); @@ -124,9 +122,6 @@ QSizeF QskRichTextRenderer::textSize( const QString& text, QRectF QskRichTextRenderer::textRect( const QString& text, const QFont& font, const QskTextOptions& options, const QSizeF& size ) { - if ( qskLayoutHelper == NULL ) - qskLayoutHelper = new TextItem(); - auto& textItem = *qskLayoutHelper; textItem.begin(); @@ -154,9 +149,6 @@ void QskRichTextRenderer::updateNode( const QString& text, // are we killing internal caches of QQuickText, when always using // the same item for the creation the text nodes. TODO ... - if ( qskRenderHelper == NULL ) - qskRenderHelper = new TextItem(); - auto& textItem = *qskRenderHelper; textItem.begin();