Commit Graph

355 Commits

Author SHA1 Message Date
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
Kai Koehne
d75d70c552 Debugger: Fix "attach to QML port"
In this case we don't get any application output / message
telling us that the server is waiting, so let's try to connect
directly.

This is a regression introduced in commit 742019e301

Change-Id: I85d9f846c72e8b227dae5d6e847ab9366a34e2cc
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
2012-02-27 10:13:42 +01:00
Kai Koehne
742019e301 Debugger: Fix QML-only debugging on Harmattan
Actually wait for the 'Waiting for debugger on port ' ... message
to appear in the application output before connecting, and also
use the port specified there.

Change-Id: Ib498e5306bc49f2f3d468353b1c5d1ea38a809e6
Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com>
2012-02-23 15:46:46 +01:00
Aurindam Jana
9720c0d737 QmlDebugging: Show Object Tree in Console
Show QML/Javascript objects as a tree when
evaluated in the console.

Change-Id: I42901bf9bda3f18fb9fb1ca309a8370ccbe37c0a
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-02-21 12:51:42 +01: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
Erik Verbruggen
3fa55b7ab9 Removed module names from #include directives.
Getting the #include directives ready for Qt5. This includes the
new-project wizards.

Change-Id: Ia9261f1e8faec06b9285b694d2b7e9a095978d2b
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2012-02-15 16:24:46 +01:00
Kai Koehne
fe8cead2d0 Debugger: Make language to debug (QML/CPP) explicit
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>
2012-02-01 12:14:02 +01:00
Kai Koehne
2a02841383 Debugger: Simplify handling of requestRemoteSetup in QmlCppEngine
Just emit the requestRemoteSetup on your own in QmlCppEngine. Also
properly check the related state transitions in DebuggerEngine.

Change-Id: I15dc4236303911126de7eee63ed996bdd8e5c5a8
Reviewed-by: hjk <qthjk@ovi.com>
2012-01-31 14:14:05 +01:00
hjk
4a21f0c3c8 Use new static ICore interface.
Change-Id: I9b690d9b150c8d162b15370f9f8986267c9128f1
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-01-24 18:48:47 +01:00