OSDN Git Service

QStaticTextItem cleanup
authorIvailo Monev <xakepa10@laimg.moc>
Tue, 7 May 2019 05:12:41 +0000 (05:12 +0000)
committerIvailo Monev <xakepa10@laimg.moc>
Tue, 7 May 2019 05:12:41 +0000 (05:12 +0000)
Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
src/gui/painting/qpainter.cpp
src/gui/text/qstatictext.cpp
src/gui/text/qstatictext.h
src/gui/text/qstatictext_p.h
src/gui/text/qtextengine.cpp

index 5f6b6d1..7670bbd 100644 (file)
@@ -5183,7 +5183,6 @@ void QPainter::drawStaticText(const QPointF &topLeftPosition, const QStaticText
                 textItem->glyphPositions[i].x += fx - oldX;
                 textItem->glyphPositions[i].y += fy - oldY;
             }
-            textItem->userDataNeedsUpdate = true;
         }
 
         staticText_d->position = transformedPosition;
index bd9bf6c..93cb8b7 100644 (file)
@@ -667,8 +667,6 @@ void QStaticTextPrivate::init()
 
 QStaticTextItem::~QStaticTextItem()
 {
-    if (m_userData != 0 && !m_userData->ref.deref())
-        delete m_userData;
     if (!m_fontEngine->ref.deref())
         delete m_fontEngine;
 }
index 655ac9b..c963b6a 100644 (file)
@@ -43,9 +43,6 @@
 #define QSTATICTEXT_H
 
 #include <QtCore/qsize.h>
-#include <QtCore/qstring.h>
-#include <QtCore/qmetatype.h>
-
 #include <QtGui/qtransform.h>
 #include <QtGui/qfont.h>
 #include <QtGui/qtextoption.h>
index 637315a..0b18d1e 100644 (file)
 
 QT_BEGIN_NAMESPACE
 
-class QStaticTextUserData
-{
-public:
-    QStaticTextUserData() { ref = 0; }
-    virtual ~QStaticTextUserData() {}
-
-    QAtomicInt ref;
-};
-
 class Q_GUI_EXPORT QStaticTextItem
 {
 public:
-    QStaticTextItem() : chars(0), numChars(0), userDataNeedsUpdate(false),
-                        m_fontEngine(0), m_userData(0) {}
+    QStaticTextItem() : chars(0), numChars(0), m_fontEngine(0) {}
 
     QStaticTextItem(const QStaticTextItem &other)
     {
@@ -89,30 +79,13 @@ public:
         numChars = other.numChars;
         font = other.font;
         color = other.color;
-        userDataNeedsUpdate = other.userDataNeedsUpdate;
 
         m_fontEngine = 0;
-        m_userData = 0;
-        setUserData(other.userData());
         setFontEngine(other.fontEngine());
     }
 
     ~QStaticTextItem();
 
-    void setUserData(QStaticTextUserData *newUserData)
-    {
-        if (m_userData == newUserData)
-            return;
-
-        if (m_userData != 0 && !m_userData->ref.deref())
-            delete m_userData;
-
-        m_userData = newUserData;
-        if (m_userData != 0)
-            m_userData->ref.ref();
-    }
-    QStaticTextUserData *userData() const { return m_userData; }
-
     void setFontEngine(QFontEngine *fe);
     QFontEngine *fontEngine() const { return m_fontEngine; }
 
@@ -136,14 +109,11 @@ public:
     int numChars;                                // 4 bytes per item
     QFont font;                                  // 8 bytes per item
     QColor color;                                // 10 bytes per item
-    bool userDataNeedsUpdate : 1;                //
                                                  // ================
                                                  // 51 bytes per item
 
 private: // Needs special handling in setters, so private to avoid abuse
     QFontEngine *m_fontEngine;                     // 4 bytes per item
-    QStaticTextUserData *m_userData;               // 8 bytes per item
-
 };
 
 class QStaticText;
index d2aa8df..825689b 100644 (file)
 #include "qfont.h"
 #include "qfont_p.h"
 #include "qfontengine_p.h"
-#include "qstring.h"
-#include <qunicodetables_p.h>
+#include "qunicodetables_p.h"
 #include "qtextdocument_p.h"
 #include <qapplication.h>
-#include <stdlib.h>
 
+#if defined(Q_WS_X11)
+#   include "qfontengine_ft_p.h"
+#endif
+
+#include <stdlib.h>
 
 QT_BEGIN_NAMESPACE
 
@@ -829,16 +832,6 @@ void QTextEngine::bidiReorder(int numItems, const quint8 *levels, int *visualOrd
 #endif
 }
 
-QT_BEGIN_INCLUDE_NAMESPACE
-
-#if defined(Q_WS_X11)
-#   include "qfontengine_ft_p.h"
-#endif
-
-#include <qharfbuzz_p.h>
-
-QT_END_INCLUDE_NAMESPACE
-
 // ask the font engine to find out which glyphs (as an index in the specific font) to use for the text in one item.
 static bool stringToGlyphs(HB_ShaperItem *item, QGlyphLayout *glyphs, QFontEngine *fontEngine)
 {