Debugger: Allow enabling of qml debugger without startup warning
authorKai Koehne <kai.koehne@nokia.com>
Tue, 27 Mar 2012 07:20:20 +0000 (09:20 +0200)
committerQt by Nokia <qt-info@nokia.com>
Tue, 27 Mar 2012 07:46:00 +0000 (09:46 +0200)
Add QT_DECLARATIVE_DEBUG_NO_WARNING define to support enabling
the qml debugger without printing the usual startup warning.

This should be used with care, but e.g. for qmlscene the warning
probably confuses more than it helps.

Change-Id: I33704857baebfc8bca60abbff09138e259390b49
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
src/qml/debugger/qqmldebug.h
src/qml/qml/qqmlengine.cpp
tools/qmlscene/qmlscene.pro

index 8036032..318e0bd 100644 (file)
@@ -51,12 +51,14 @@ QT_BEGIN_NAMESPACE
 
 struct Q_QML_EXPORT QQmlDebuggingEnabler
 {
-    QQmlDebuggingEnabler();
+    QQmlDebuggingEnabler(bool printWarning = true);
 };
 
 // Execute code in constructor before first QQmlEngine is instantiated
-#if defined(QT_DECLARATIVE_DEBUG)
-static QQmlDebuggingEnabler qmlEnableDebuggingHelper;
+#if defined(QT_DECLARATIVE_DEBUG_NO_WARNING)
+static QQmlDebuggingEnabler qmlEnableDebuggingHelper(false);
+#elif defined(QT_DECLARATIVE_DEBUG)
+static QQmlDebuggingEnabler qmlEnableDebuggingHelper(true);
 #endif
 
 QT_END_NAMESPACE
index ec72804..c788a61 100644 (file)
@@ -1035,10 +1035,11 @@ QObject *qmlAttachedPropertiesObject(int *idCache, const QObject *object,
     return qmlAttachedPropertiesObjectById(*idCache, object, create);
 }
 
-QQmlDebuggingEnabler::QQmlDebuggingEnabler()
+QQmlDebuggingEnabler::QQmlDebuggingEnabler(bool printWarning)
 {
 #ifndef QQML_NO_DEBUG_PROTOCOL
-    if (!QQmlEnginePrivate::qml_debugging_enabled) {
+    if (!QQmlEnginePrivate::qml_debugging_enabled
+            && printWarning) {
         qDebug("QML debugging is enabled. Only use this in a safe environment.");
     }
     QQmlEnginePrivate::qml_debugging_enabled = true;
index 392e607..3e63bd7 100644 (file)
@@ -12,6 +12,6 @@ macx: CONFIG -= app_bundle
 
 SOURCES += main.cpp
 
-CONFIG += console declarative_debug
+CONFIG += console
 
-DEFINES += QML_RUNTIME_TESTING
+DEFINES += QML_RUNTIME_TESTING QT_DECLARATIVE_DEBUG_NO_WARNING