Commit Graph

413 Commits

Author SHA1 Message Date
Aurindam Jana
c2c58fecd7 Inspector: Set the context of console
The current selected item in the inspector view
is set as the context of the console.

Task-number: QTCREATORBUG-7439

Change-Id: Ibc980218751ce4afacf714cf1ab34f0a36550b2c
Reviewed-by: hjk <qthjk@ovi.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2012-10-25 14:11:47 +02:00
hjk
0d9a56ab3f Debugger: Rework thread data aquisition
Listen to gdb/MI notifications when possible. This is more
granular, gives access to the thread group id and takes
care of thread changes at any time.

Change-Id: I8c67f6f19b204059deefdf7e07fe3b4ce13ed963
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2012-10-23 19:35:14 +02:00
Eike Ziller
720cb9f35e Merge remote-tracking branch 'origin/2.6'
Conflicts:
	qtcreator.pri
	qtcreator.qbp
	src/libs/ssh/sshconnection.cpp

Change-Id: I2946cbec1b5159eef9e47949860b28fba1e51529
2012-10-11 21:11:40 +02:00
Aurindam Jana
388a21c826 QmlDebugger: Insert locals correctly
The watchhandler needs to be reset for locals before
inserting the values of a new frame. Also the DebuggerTooltipManager
needs to be notified. The values of the locals in the
LocalsAndExpressions window should be editable.

Task-number: QTCREATORBUG-7992
Change-Id: I556e23b408db09b510f1f2bc350ff55187ec87c2
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
Reviewed-by: Christiaan Janssen <christiaan.janssen@digia.com>
2012-10-10 16:55:07 +02:00
Aurindam Jana
1d04c4c3df Debugger: Remove the dependence on QmlJSTools
Change-Id: I26765134c19b9a6cf1e7ad26f313e2d4f8faf258
Reviewed-by: Christiaan Janssen <christiaan.janssen@digia.com>
2012-10-09 18:22:00 +02:00
Eike Ziller
6fd252b0a5 Merge remote-tracking branch 'origin/2.6'
Conflicts:
	share/qtcreator/qml/qmlpuppet/commands/endpuppetcommand.cpp
	share/qtcreator/qml/qmlpuppet/commands/endpuppetcommand.h
	src/plugins/debugger/qtmessageloghandler.cpp
	src/plugins/debugger/qtmessageloghandler.h
	src/plugins/debugger/qtmessagelogwindow.cpp
	src/plugins/madde/maemodeployconfigurationwidget.cpp
	src/plugins/madde/maemodeployconfigurationwidget.h
	src/plugins/remotelinux/deployablefilesperprofile.cpp
	src/plugins/remotelinux/deployablefilesperprofile.h
	src/plugins/remotelinux/deploymentinfo.cpp
	src/plugins/remotelinux/deploymentinfo.h
	src/plugins/remotelinux/deploymentsettingsassistant.cpp
	src/plugins/remotelinux/profilesupdatedialog.cpp
	src/plugins/remotelinux/remotelinuxdeploymentdatamodel.h
	tests/auto/icheckbuild/ichecklib.cpp
	tests/auto/icheckbuild/ichecklib_global.h
	tests/auto/icheckbuild/parsemanager.cpp
	tests/auto/icheckbuild/parsemanager.h
	tests/manual/ssh/tunnel/tunnel.h

Change-Id: I04d7761df6bd936ad00e0547974284c967d39580
2012-10-05 21:20:50 +02:00
hjk
386ca7c8dd Adjust license headers
Change-Id: Ice592c6de9951ee3b2c4cb52ed0bb3b6770e0825
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2012-10-05 17:12:56 +02:00
Aurindam Jana
9ac25a2932 ScriptConsole: Move from Debugger to QmlJSTools
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>
2012-10-05 11:03:01 +02:00
Jarek Kobus
4c96bd6791 Fix source strings
Change-Id: Ib56082091a1f7e3062ff48e981bb4ee8e2dd9357
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-08-28 14:16:10 +02:00
Alessandro Portale
ae23d50576 Removal of Symbian support
Qt Creator's support for Symbian was at its peak in version
2.4.x. Nobody really verified it in Qt Creator 2.5 or 2.6.
It is most likely rotten. Let's remove it!

Also, the Symbian support code was spread throughout the whole
Qt Creator code base. The plugin interfaces evolved in the
meantime and target platforms like Android or QNX have 99% of
their code in separate plugins.

In case anyone wants to revive Symbian support in Qt Creator,
please create a plugin for it.

Change-Id: I56a758a3e2fd5b8c64d9aeb8f63d8e916c4883be
Reviewed-by: Alessandro Portale <alessandro.portale@nokia.com>
2012-08-22 13:42:42 +02:00
hjk
8184d8e703 debugger: simplify DebuggerEngine construction
The master engine pointer can be given later.

Change-Id: I4d72679dcbd5fe7291067a5e78c984d26cc187aa
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-16 11:56:10 +02:00
hjk
776fd73e30 debugger: don't store active languages twice
Change-Id: I6517b42b4cfd0d2d919fa2971c3ea0995443cbf3
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-15 13:30:51 +02:00
Konstantin Tokarev
d18bf468ad Changed return type of :ICore::mainWindow() to QWidget*
Also removed all <QMainWindow> includes which are not needed
anymore.

Change-Id: I393c9a62a5c6df95d9f35d872e1473a4f13bcdc4
Reviewed-by: hjk <qthjk@ovi.com>
2012-07-19 15:15:53 +02:00
Eike Ziller
e0e8cf3ada Contact -> qt-project.org
Change-Id: I7134d7de30bcf9f9dcfad42520dd45ee083a852d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-19 13:23:21 +02:00
Eike Ziller
e3c354d8f2 Make PluginManager mostly static.
Change-Id: Ib938aa4999c7c418a82304c5cca2e8748ef9d228
Reviewed-by: hjk <qthjk@ovi.com>
2012-06-19 16:11:40 +02:00
hjk
ceb575741c debugger: merge notifyEngineRemoteSetup* and handleRemoteSetup*
Change-Id: I89abcb0dcceef6767cb3e78f4e85c1cd718e78c1
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
Reviewed-by: hjk <qthjk@ovi.com>
2012-06-13 17:11:58 +02:00
Aurindam Jana
e85886d638 QmlEngine: Attach to Remote Process
In the case of Attach to Remote Process, try connecting immediately.
While, in the case of Attach to Remote Server, wait for output message
or timeout.

Change-Id: I94570a2ab05bb069ea64819fcbb0055555fe0f33
Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com>
2012-06-13 12:51:37 +02:00
Aurindam Jana
07f10a025e QmlEngine: Connect to port for remote setup
In the case of remote setup, the application output
may take a while. The timeout is increased to 60s.
Additionally in the case of mixed debugging, we check
the state of the master engine to determine if we should
keep waiting for the application output.

Change-Id: I237a3501c1e70dbe62870929e50f12ede80e7c56
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@nokia.com>
Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com>
2012-06-12 20:05:32 +02:00
Kai Koehne
ee76110cf2 Debugger: Fix automatic connection to QML when we don't get app output
Change-Id: I34dff23401c34d3d0c940fac40a6d1d95e830ccb
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
2012-06-07 13:27:11 +02:00
Aurindam Jana
a79e38ac6f QmlJSInspector: Set property values
QML property values could be set in the inspector.
Regression introduced by 7f09d0b756.
This patch is a partial fix. Only values can be assigned currently.
For expressions, use the console.

Change-Id: I945b11109cd7788dd0f5277af206bf9658844aee
Reviewed-by: Christiaan Janssen <christiaan.janssen@nokia.com>
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-25 11:20:49 +02:00
hjk
e11a3a7697 debugger: rework WatchModel
It's one model for all locals, watch, return, tooltip and inspector
data. This allows more streamlined code paths and better isolation
of the model data from the WatchHandler. WatchItems are now registered
in a hash indexed by iname, so inames can be used as the primary
handle to watch data in the WatchHandler interface.

Change-Id: Idac0a808b5d785307496d1de4198a1f2e9ce3880
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
2012-05-24 14:33:34 +02:00
Aurindam Jana
9eb539469d WatchHandler: Add isInspect()
Change-Id: I237f77554a06bf7c139a8ae5cfef79c6fb4c8507
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-15 11:35:20 +02:00
hjk
21bf0046c3 editormanager: simplify use of interface
Less code on the user side, same meaning.

Change-Id: I14e54a5d2ed8e024a51cce74eaf7c8419ad544be
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2012-05-11 13:51:14 +02:00
Kai Koehne
e6fb0179f3 QmlEngine: Stop connection timer if setup fails
Change-Id: Ibc2a0a311fb1b1af3fc7a6bf486010b31117475b
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
2012-05-10 13:26:59 +02:00
Kai Koehne
49830c48fc QmlEngine: Cleanup
Merge private class back to public one.

Change-Id: I3255036ff60738418e2997dbeba97642afe87558
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
2012-05-10 10:15:20 +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
Aurindam Jana
2d612a252b QtMessageLogView: Optimize performance
Performance is hit when rendering a large number of messages.
Show text contents that fits a line and expands to show the
complete text when clicked.

Change-Id: I803a8b2da12830172f9e75f86546adf121799a67
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-05-08 10:13:35 +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
hjk
5b0bf61640 qtcassert: move actual printing to separate function and enforce style
This also allows simple setting of breakpoints on failed asserts.

Change-Id: I6dd84cbfaf659d57e39f3447386cebc0221b2b84
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-04-17 09:53:44 +02:00
Aurindam Jana
3d32f42b7d Debugging: Pass a DebuggingLanguage arg in executeDebuggerCommand()
Change-Id: I99eedc86c987615072b7400051b61700b98ebab3
Reviewed-by: hjk <qthjk@ovi.com>
2012-04-10 13:12:10 +02:00
Aurindam Jana
ef643d48ea QmlEngine: Remove unneeded message log
Introduced by 2.5 merge with master
dbcaadd8af

Change-Id: Id85df5a4f6400850cf36453e4e641f7a25ead888
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
2012-03-23 13:24:24 +01:00
Oswald Buddenhagen
dbcaadd8af Merge remote-tracking branch 'origin/2.5'
Conflicts:
	src/plugins/debugger/qml/qmlengine.cpp
	src/plugins/qtsupport/gettingstartedwelcomepage.cpp

Change-Id: I9157b9b9c05564ddeb3c72cec6b59523b8165d76
2012-03-22 15:09:50 +01:00
Kai Koehne
b6cb86eb53 QmlDebugger: Fix automatic connection setup
Make sure we only try to connect when we're in the right state
(EngineRunRequest). Specifically, stop to connect when the engine
is finished.

Change-Id: Ia4f1f79e8ac5b32ff436e63195516e242d4c120c
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
2012-03-22 14:36:48 +01:00
Aurindam Jana
4cd2e32659 QmlEngineDebugClient: Simplify the client and utility classes
Change-Id: I86033bdbdef94c6f17e706f8e13ce390969171c6
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-03-22 14:21:34 +01:00
Aurindam Jana
b9dfbd8ec3 QtMessageLogHandler: Sorting child items
Insert child items in sorted order if the "Sort Members and
Classes Alphabetically" is set in Locals And Expressions.

Change-Id: Ib21803326ec3f35c9541c08d876c4a38c0202a9f
Reviewed-by: hjk <qthjk@ovi.com>
2012-03-22 12:04:48 +01:00
Aurindam Jana
10478246a9 QtMessageLogHandler: Insert child items in alphabetical order
Change-Id: I644207f5e8b149364e73abf7512240e918260072
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-03-22 11:03:18 +01:00
Aurindam Jana
3d1f5bd85c QtMessageLogHandler: Fix crash
Set a parent when creating QtMessageLogItem.

Change-Id: I8faf76059dcc517794a4eb3d202bc14cd1632ca8
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-03-22 10:53:10 +01:00
Aurindam Jana
06ae4b3512 QDeclarativeEngineDebug: Rename class
Renamed to QmlEngineDebugClient

Change-Id: I200e8ccf23a3464e2b6ad07288d17228118e905f
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-03-21 14:29:33 +01:00
Kai Koehne
fdbdf2d14f QmlEngine: Fix crash when trying to connect
Since we directly called beginConnection in connectionStartupFailed
we got a stack overflow over time. Instead, only try to connect
every 3 seconds.

Also remove special logic for mixed debugging: They should behave
the same (except maybe where you're breaking inside QQmlDebugServer,
but that's a corner case).

Change-Id: Idf2f55e3d905a01065c123c708b50dbb88388d1f
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
2012-03-19 12:06:09 +01:00
Aurindam Jana
d97768f96b QmlDebugging: Connect for Run In Terminal
Connect to Qml Debug Server for Run In Terminal.

Task-number: QTCREATORBUG-7057
Change-Id: Ieb166e4fc74cad2ef7a3774e0156cdbf07e8dc56
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@nokia.com>
2012-03-15 10:35:59 +01:00
Kai Koehne
ccc55a6149 Debugger: Properly exit when engine run failed
Instantly stop the engine if e.g. the port is blocked. If we let
it running until the user closes the dialog, the timeout for automatic
connects would be triggered, and we'd get yet another dialog afterwards
telling the user that the connection failed.

Change-Id: Ifd0e9d743f3b8f4ba853be032d9527559ef6004e
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
2012-03-15 10:21:32 +01:00
Aurindam Jana
6e0caec046 QmlDebugging: Assign Value in Debugger
Call EXEC instead of SET_PROPERTY for assigning a value
in Locals and Expressions. Also check if the id of the
object is valid before calling EXPAND.

Task-number: QTCREATORBUG-7089
Change-Id: I2769e5345cfb7ecf87e36125821f141821556690
Reviewed-by: Christian Stenger <christian.stenger@nokia.com>
2012-03-14 13:55:15 +01:00
Aurindam Jana
f7caba3923 QMLDebugging: Fix crash
Check for null pointers when parsing AST to relocate breakpoint

Change-Id: I484048d9e8a7aabdeffc4e18049c9b9b6f030366
Reviewed-by: Simjees Abraham <simjees.abraham@nokia.com>
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2012-03-09 09:59:58 +01:00
Kai Koehne
30c21397a6 QmlDebugger: Close connection already in shutdownInferior
Doing it in shutdownEngine was too late for the mixed debugger
case: The client has already exited in this case, leading to
error messages on the (system) console.

Change-Id: Id31214cb7a1bc9530c1da78b872531bc79894f3b
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
2012-03-08 10:11:17 +01:00
Robert Loehning
b41171c847 Normalized connect()s
Change-Id: Id353ab140a46e06ffc3abf667ab3b234e749e17c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2012-03-06 12:46:52 +01:00
Aurindam Jana
41cbb6cdee QmlDebugging: Fix breakpoint states
For mixed debugging, the ownership of breakpoints is with
the mixed engine so that it can set the state of the breakpoints
correctly on DebuggerFinished.

Change-Id: I0e03493ac997dbca0a34ca65de1eba3690faceba
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-03-02 12:25:51 +01:00
Aurindam Jana
fd82e54a5b QmlV8DebuggerClient: Relocate breakpoints
Walk the AST to find probable "breakable" code positions
and relocate breakpoints.

Change-Id: I3033bb85b21436face8265661aa8779c63dcf960
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2012-02-29 18:51:30 +01:00
Aurindam Jana
6668ee1317 QmlCppDebugger: Shutdown engine on port busy
Shutdown the debugger engines when the qmljsdebugger port
is busy.

Change-Id: If7f470b04bae26f3bac11863f697b260b463ca4e
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-02-28 15:44:38 +01:00
Aurindam Jana
a167498ea1 ScriptConsole: Show File and Line Info
Show File and Line Info for items that have the info. Clicking
on the item opens the file and sets the cursor position on
the line. The context menu also provides option to copy contents
and option to clear the view.

Change-Id: I161de392ba35e37d323b049371619b01c617c798
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-02-27 11:01:13 +01:00