Commit Graph

25 Commits

Author SHA1 Message Date
hjk
156320ff6c Debugger: Merge QmlInspectorAdapter into QmlInspectorAgent
There's a 1:1 relation, and the abstraction is not needed anymore.

Also remove some unused code.

Change-Id: I09a2522deb5d522f46ec7518d19978a038032fbb
Reviewed-by: Ulf Hermann <ulf.hermann@theqtcompany.com>
2015-08-28 07:37:19 +00:00
hjk
bcd29daa48 Debugger: Consolidate QmlEngine
Create a QmlEnginePrivate. Move the QmlDebugClient there.
Merge QmlAdapter into QmlEngine Abstraction is not used anymore.

Move some helper bits to a qmlengineutils.{h,cpp}

Change-Id: I63117355d786cc12641101b7fd38c7cd208d11eb
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-07-09 12:59:03 +00:00
hjk
0e7e521a0a Debugger: Merge {baseqml,qml}debuggerclient.
Abstraction is not used after the demise of QScriptDebuggerClient
and unlikely to be used again.

Change-Id: Icdd6615eb0d1468fd9a3d717d6a7d5e44f7f7d79
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-07-09 10:27:37 +00:00
hjk
b8b50a21dd Debugger: Remove QScriptDebugClient
This officially removes support for QtQuick1 debugging.

Change-Id: Id3b6e64bb8e250ba57589b4e747f4ad33d3e03a6
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
2015-07-08 12:58:44 +00:00
Kai Koehne
0c6630b0cf QML: Remove Apply on Save functionality
The feature has been actually been disabled since commit ac771eb552,
but now it's time to also remove the dead code ...

Fixing the feature and bringing it out of the experimental state
would require quite some effort that apparently nobody is willing
to spend. So it's better to remove it.

The enablers in the qmldebug library, as well as the QmlJSDelta utility
class in qmljs library, are left in though.

Change-Id: Idf98a2f946d0db86bef2f20d2349d6ffedba219c
Reviewed-by: hjk <hjk@theqtcompany.com>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
2015-03-17 10:18:09 +00:00
Oswald Buddenhagen
962f0c478f move qmldebug dependency to debugger_dependencies.pri
slighly breaks modularization, but we need to centralize the dependencies.

Change-Id: Ic8316b3415141ea89b50dabe26bdc079bf52b4c2
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-04-02 12:17:02 +02:00
Kai Koehne
7f09d0b756 Merge QML inspector into debugger plugin
Merge QmlJSInspector plugin into the debugger. Also merge the
extra Inspector window with the Locals & Watchers: It now shows
the QML object tree in the running state.

Change-Id: I59ae0c1b970a48ba10ecda92ed3ba765d94b1d9c
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
2012-05-09 12:42:44 +02:00
Kai Koehne
84cb289ae3 QmlJS: Remove 'qmljsprivateapi.h' header
That's a reminiscent of the times when qmljs was just a copy
of the classes in Qt.

Rather include the files individually.

Change-Id: I6ff8541c004ef4dab9d9d4f5011ff6c5a3a0574a
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
2012-04-24 15:46:18 +02:00
Kai Koehne
4d3395b990 QmlDebug: Rename library and (most) classes
Rename the QmlJSDebugClient lib to QmlDebug (shorter names, easier differentiation with the shared/qmljsdebug lib).

Also rename
 - QDeclarativeDebug* classes to QmlDebug*
 - QDeclarativeOutputParser class to QmlOutputParser

To clarify the features,
 - Debugger::QmlDebuggerClient is now Debugger::BaseQmlDebuggerClient
 - QmlEngineDebugClient is now BaseEngineDebugClient
 - QmlDebuggerClient is now QmlEngineDebugClient
 - QDeclarativeEngineDebugClient is now DeclarativeEngineDebugClient

Change-Id: Ie15713730a614c8ab4b637fad0924f95b54e633f
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
2012-04-18 14:31:36 +02:00
Aurindam Jana
147396d764 ScriptConsole: Refactor to QtMessageLogWindow
Move QML/JS independent classes to common Debugger
code. A Debugger Engine needs to override
evaluateScriptExpression() to provide engine
specific script evaluation.

Change-Id: I02b23b380a3eb1b12003b30ded0b7d075e44dfed
Reviewed-by: hjk <qthjk@ovi.com>
2012-02-20 17:51:05 +01:00
Aurindam Jana
ba412ee505 ScriptConsole: Use QTreeView
Use QTreeView instead of modified QPlainTextEdit to show the
console. Using a QTreeView gives more control over output
display as well as separates out the model from the view.

Change-Id: I436b13ed042c00d09d6de627b442bfd8d10d2236
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-02-16 14:13:21 +01:00
Aurindam Jana
f3c047a33c QmlV8DebuggerClient: Refactored code
Change List:
a) Refactored code: Shifted JSON message creation to
QmlV8DebuggerClientPrivate.
b) QScriptEngine is used for JSON instead of JsonValue and
JsonInputStream.
c) Locals Window displays all variables accessible in the current
context.

Change-Id: I82e73f6c57482408f5fc501c908aa96297d3d754
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2011-10-27 12:06:42 +02:00
Aurindam Jana
baafc89dfc Debugger: Fix build break on Windows
Removed inclusion of parser.pri from qml.pri and added QML_PARSER_EXPORT
to QmlJSGrammar.

Task-number: QTCREATORBUG-6292
Change-Id: I6a1fb3e038a6c154c4c3b368d7c7e6eda9975698
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2011-10-13 09:25:42 +02:00
Aurindam Jana
cb0b3424b3 QmlJSScriptConsole: Refactored ScriptConsole, added functionality.
The ScriptConsole is renamed to QmlJSScriptConsole. The console can be used
to evaluate expressions during a QML application debug session.
Changes:
* Console can be used even when application is not on a debug break
* The object context is the currently selected object in Inspector
* ContextMenu has a Clear option
* Multiple line expressions are supported
* Traverse Command History using up and down arrow keys

Change-Id: I4e1cd8763d60be43dbba395ead2a9a086d6bab7d
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2011-10-12 15:03:00 +02:00
Kai Koehne
4cd119a985 QmlJsDebugClient: Compile it as separate library
Should boost build times.

Change-Id: I35c9fd32d2df6dbdadf4d324eb87dbfb491e5ef2
Reviewed-on: http://codereview.qt.nokia.com/2673
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Christiaan Janssen <christiaan.janssen@nokia.com>
2011-08-05 12:17:24 +02:00
Aurindam Jana
ab574ba88d Delegate javascript debugging to Script and V8 debugger clients.
The appropriate client handles the debugging based on the service available at the server side.

Change-Id: I46b66036f700fc7e45e8b38cef7f1ce1445b1122
Reviewed-on: http://codereview.qt.nokia.com/2497
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2011-08-03 11:27:38 +02:00
Olivier Goffart
fc1be8b488 Qml Javascript Debugger: add a script console widget.
The scriptconsole layout come from the old qmlinspector
2010-08-26 17:49:10 +02:00
Lasse Holmstedt
b557c58eac Qml Debugger: Enable debugging qml+cpp standalone applications
A new debugger engine, QmlCppEngine, is introduced, which wraps gdb
and qml engines into one. Alternatively, if using Windows, Cdb is used
instead of Gdb.

Most of the debugger ui switcher is now rewritten, and it is tailored
for the QML and CPP layout case, the only one supported anyway.

Reviewed-by: hjk
2010-08-24 17:46:22 +02:00
Lasse Holmstedt
b71c3c62ba QML Debugger refactoring
Now, QmlEngine creates the connection to the inferior (debuggee), and
notifies QmlInspector when a connection is established. Before,
inspector created the debugger engin, which was wrong.

QmlEngine's responsibilities are connecting to the debuggee and basic
QML/JS debugging features like locals & watchers, breakpoints etc.
QmlInspector takes care of Live Preview and other fancy inspection
features.

Reviewed-by: hjk
2010-08-13 14:20:39 +02:00
Olivier Goffart
9df9695a7f debugger: get rid of the private header dependency
Removed the CanvasFrameRate class as it is not used, and
depends on private Qt API
2010-08-10 10:10:39 +02:00
Olivier Goffart
f3cdbeff63 QmlJsInspector: remove private header dependencies
A copy of the client debugging code is made in src/libs/qmljsdebugclient/
(this comes from the qt code from commit 65642dd343bf61)

So the qmljsinspector plugin does not require anymore Qt private headers.
2010-07-29 14:36:11 +02:00
hjk
3fa694e08f compile fix after c969b6e1c 2010-07-21 13:36:03 +02:00
Kai Koehne
c969b6e1cc Fix compilation if no private headers are available 2010-07-21 12:34:29 +02:00
hjk
77cf419d77 debugger: make qml debugger start talking to qmlviewer 2010-07-02 11:18:34 +02:00
hjk
17a2f6711e debugger: start second shot at Qml debugging 2010-06-10 14:45:31 +02:00