On the user-visible side, only the 'Analyze' mode button disappears,
and instead a combobox to switch between different tools in appears
in the Debug mode toolbar.
Internally, that's quite some re-organzition: The centralized
'Analyze mode is busy' flag is gone, allowing us to run e.g.
ClangStaticAnalyzer and MemCheck in parallel.
Analyzer tools and debugger now share the same mechanism to
generate/load/save dock widgets.
Analyzer tools now create and handle their own start/stop button
when appropriate. In general, Analyzer tools can create/handle more
than one run control at a time.
Further consolidation is possible, e.g. RunControl state handling
could be merged into the base ProjectExplorer::RunControl to
avoid the still existing duplication in ~15 instances.
Change-Id: I91e5940ebc4211f98056d507cf2f7b5f8efe7f07
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
- Remove old experimental native mixed approach.
- Move some common stack parsing to Stackhandler.
- Mark gdbbridge.py debug output explicitly to remove it
from actual reponse handling
New native mixed needs QtDeclarative changes and
QTC_DEBUGGER_NATIVE_MIXED=1 for now.
Change-Id: I09eed1da51cea878636d36756015b7bfaed34203
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Got unwieldy, leading to duplicated values.
Task-number: QTCREATORBUG-14393
Change-Id: Id60fde5d62a8d4293eda0dadf78b6ad4a616844d
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
There are now several possible orders of events between sending a 'kill'
and receiving something that indicated a properly shut down inferior.
Coordinating the InferiorExited state during engine ramp down is not
worthwhile as that state had only a forced transition to InferiorShutdownOk
anyway. For the user (and user code), only the fact that ramp down is
finished is interesting.
Change-Id: Ic22131d5a1066dc62bd069f532c28b773f231088
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Also adding a color for each category.
Change-Id: I3627d13913951a95804b5a816f087a822c01bd86
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
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>
This paves the the way to mixed QML/C++ debugging
through the native backends. Currently this requires
QTC_DEBUGGER_NATIVE_MIXED to be set in the environment.
Change-Id: I126ad945e84806f3b548408318007351628c912f
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Add language field to stack frame.
Add virtual for loading QML stack invoked by stack window
context menu, implement for CDB, GDB.
Task-number: QTCREATORBUG-11144
Change-Id: Ic39be3978b40d96ed18cb69a8355296ec572ece7
Reviewed-by: hjk <hjk121@nokiamail.com>
That's dead code now that we go with the Python interface.
Change-Id: Ie10393d6adf5d25540c4082aeccf683e88bcdc89
Reviewed-by: hjk <hjk121@nokiamail.com>
Was used by the semi-automated tests which have been merged into
the autotests now.
Change-Id: I899ac95b7134b8c5a838c29d4c16904e85118abf
Reviewed-by: hjk <hjk121@nokiamail.com>
On a debug break, inspector tools cannot be used as the
gui thread is blocked.
Task-number: QTCREATORBUG-5466
Change-Id: I808d751b1ade7e4a5c98e87fec7bb4cb02715ad8
Reviewed-by: Christiaan Janssen <christiaan.janssen@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
The console is now a part of qmljstools plugin. The console
appears as an output pane. A dummy QScriptEngine evaluates
expressions when a declarative debug session is not in
progress. During a debug session, the expressions are
evaluated by the debug services.
Task-Number: QTCREATORBUG-7402
Change-Id: Ic2eeac44fb335c706be03b89f8672b0356efe984
Reviewed-by: Christiaan Janssen <christiaan.janssen@digia.com>
Reviewed-by: hjk <qthjk@ovi.com>
The actions were added to the object pool so that QmlJsInspector
plugin can access them. This is obsolete now.
Change-Id: I7c33428b834c372fab354b39ffeb6c8d181c162a
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
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>
QmlJSPropertyInspector is a part of the debugger view and
has dependencies on some of the actions in DebuggerSettings.
Add the needed actions to the object pool so that
QmlJSPropertyInspector can access them.
Change-Id: Iad492f1195721b5e3a9033584b1a3bf64e320b18
Reviewed-by: hjk <qthjk@ovi.com>
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>
Getting the #include directives ready for Qt5. This includes the
new-project wizards.
Change-Id: Ia9261f1e8faec06b9285b694d2b7e9a095978d2b
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
Make the choice of language part of the DebuggerStartParameters,
instead of deriving it indirectly from the current project. This
prevents e.g. the QmlCppEngine to be used when loading core files.
Change-Id: I9d1c9ab318ba789abe3a6ea0478ebda71857e793
Reviewed-by: hjk <qthjk@ovi.com>