Avoid string-based lookup of signals
authorKent Hansen <kent.hansen@nokia.com>
Mon, 4 Jun 2012 06:37:55 +0000 (08:37 +0200)
committerQt by Nokia <qt-info@nokia.com>
Tue, 5 Jun 2012 14:01:29 +0000 (16:01 +0200)
Resolving signals by member function is preferable.

Change-Id: I2a47a27bc780c4c3c29cf472f9f063c910e20c18
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
src/widgets/widgets/qwidgettextcontrol.cpp

index 91864b6..3448bf8 100644 (file)
@@ -80,6 +80,7 @@
 #include <qstyleoption.h>
 #include <QtWidgets/qlineedit.h>
 #include <QtGui/qaccessible.h>
+#include <QtCore/qmetaobject.h>
 
 #ifndef QT_NO_SHORTCUT
 #include "private/qapplication_p.h"
@@ -453,8 +454,8 @@ void QWidgetTextControlPrivate::setContent(Qt::TextFormat format, const QString
         doc->setUndoRedoEnabled(false);
 
     //Saving the index save some time.
-    static int contentsChangedIndex = QTextDocument::staticMetaObject.indexOfSignal("contentsChanged()");
-    static int textChangedIndex = QWidgetTextControl::staticMetaObject.indexOfSignal("textChanged()");
+    static int contentsChangedIndex = QMetaMethod::fromSignal(&QTextDocument::contentsChanged).methodIndex();
+    static int textChangedIndex = QMetaMethod::fromSignal(&QWidgetTextControl::textChanged).methodIndex();
     // avoid multiple textChanged() signals being emitted
     QMetaObject::disconnect(doc, contentsChangedIndex, q, textChangedIndex);