From a69b2c01684756c959de7645451f02397ca19b51 Mon Sep 17 00:00:00 2001 From: Konstantin Ritt Date: Sat, 22 Nov 2014 06:03:52 +0400 Subject: [PATCH] [QStaticTextItem] Drop unused members The QStaticTextItem's `chars` and `numChars` members are never used, even when set. In fact, there is nothing useful we can do with the input string in the absence of clusters mapping. Change-Id: I81fcbce3e575f4d0dcfc2515286d512b858f592b Reviewed-by: Lars Knoll --- src/gui/opengl/qopenglpaintengine.cpp | 2 -- src/gui/text/qstatictext.cpp | 28 ++----------------- src/gui/text/qstatictext_p.h | 21 ++++---------- .../qpaintengineex_opengl2.cpp | 2 -- 4 files changed, 8 insertions(+), 45 deletions(-) diff --git a/src/gui/opengl/qopenglpaintengine.cpp b/src/gui/opengl/qopenglpaintengine.cpp index bfc08a5332..4bc87d2be8 100644 --- a/src/gui/opengl/qopenglpaintengine.cpp +++ b/src/gui/opengl/qopenglpaintengine.cpp @@ -1528,10 +1528,8 @@ void QOpenGL2PaintEngineEx::drawTextItem(const QPointF &p, const QTextItem &text { QStaticTextItem staticTextItem; - staticTextItem.chars = const_cast(ti.chars); staticTextItem.setFontEngine(ti.fontEngine); staticTextItem.glyphs = glyphs.data(); - staticTextItem.numChars = ti.num_chars; staticTextItem.numGlyphs = glyphs.size(); staticTextItem.glyphPositions = positions.data(); diff --git a/src/gui/text/qstatictext.cpp b/src/gui/text/qstatictext.cpp index 6f1916afc6..913cd08a0e 100644 --- a/src/gui/text/qstatictext.cpp +++ b/src/gui/text/qstatictext.cpp @@ -393,7 +393,7 @@ QSizeF QStaticText::size() const } QStaticTextPrivate::QStaticTextPrivate() - : textWidth(-1.0), items(0), itemCount(0), glyphPool(0), positionPool(0), charPool(0), + : textWidth(-1.0), items(0), itemCount(0), glyphPool(0), positionPool(0), needsRelayout(true), useBackendOptimizations(false), textFormat(Qt::AutoText), untransformedCoordinates(false) { @@ -401,7 +401,7 @@ QStaticTextPrivate::QStaticTextPrivate() QStaticTextPrivate::QStaticTextPrivate(const QStaticTextPrivate &other) : text(other.text), font(other.font), textWidth(other.textWidth), matrix(other.matrix), - items(0), itemCount(0), glyphPool(0), positionPool(0), charPool(0), textOption(other.textOption), + items(0), itemCount(0), glyphPool(0), positionPool(0), textOption(other.textOption), needsRelayout(true), useBackendOptimizations(other.useBackendOptimizations), textFormat(other.textFormat), untransformedCoordinates(other.untransformedCoordinates) { @@ -412,7 +412,6 @@ QStaticTextPrivate::~QStaticTextPrivate() delete[] items; delete[] glyphPool; delete[] positionPool; - delete[] charPool; } QStaticTextPrivate *QStaticTextPrivate::get(const QStaticText *q) @@ -447,8 +446,6 @@ namespace { QStaticTextItem currentItem; currentItem.setFontEngine(ti.fontEngine); currentItem.font = ti.font(); - currentItem.charOffset = m_chars.size(); - currentItem.numChars = ti.num_chars; currentItem.glyphOffset = m_glyphs.size(); // Store offset into glyph pool currentItem.positionOffset = m_glyphs.size(); // Offset into position pool currentItem.useBackendOptimizations = m_useBackendOptimizations; @@ -468,7 +465,6 @@ namespace { m_glyphs.resize(m_glyphs.size() + size); m_positions.resize(m_glyphs.size()); - m_chars.resize(m_chars.size() + ti.num_chars); glyph_t *glyphsDestination = m_glyphs.data() + currentItem.glyphOffset; memcpy(glyphsDestination, glyphs.constData(), sizeof(glyph_t) * currentItem.numGlyphs); @@ -476,9 +472,6 @@ namespace { QFixedPoint *positionsDestination = m_positions.data() + currentItem.positionOffset; memcpy(positionsDestination, positions.constData(), sizeof(QFixedPoint) * currentItem.numGlyphs); - QChar *charsDestination = m_chars.data() + currentItem.charOffset; - memcpy(charsDestination, ti.chars, sizeof(QChar) * currentItem.numChars); - m_items.append(currentItem); } @@ -510,16 +503,10 @@ namespace { return m_glyphs; } - QVector chars() const - { - return m_chars; - } - private: QVector m_items; QVector m_positions; QVector m_glyphs; - QVector m_chars; bool m_dirtyPen; bool m_useBackendOptimizations; @@ -595,11 +582,6 @@ namespace { return m_paintEngine->items(); } - QVector chars() const - { - return m_paintEngine->chars(); - } - private: DrawTextItemRecorder *m_paintEngine; }; @@ -677,7 +659,6 @@ void QStaticTextPrivate::init() delete[] items; delete[] glyphPool; delete[] positionPool; - delete[] charPool; position = QPointF(0, 0); @@ -693,7 +674,6 @@ void QStaticTextPrivate::init() QVector deviceItems = device.items(); QVector positions = device.positions(); QVector glyphs = device.glyphs(); - QVector chars = device.chars(); itemCount = deviceItems.size(); items = new QStaticTextItem[itemCount]; @@ -704,15 +684,11 @@ void QStaticTextPrivate::init() positionPool = new QFixedPoint[positions.size()]; memcpy(positionPool, positions.constData(), positions.size() * sizeof(QFixedPoint)); - charPool = new QChar[chars.size()]; - memcpy(charPool, chars.constData(), chars.size() * sizeof(QChar)); - for (int i=0; i(ti.chars); staticTextItem.setFontEngine(ti.fontEngine); staticTextItem.glyphs = glyphs.data(); - staticTextItem.numChars = ti.num_chars; staticTextItem.numGlyphs = glyphs.size(); staticTextItem.glyphPositions = positions.data();