Commit Graph

100 Commits

Author SHA1 Message Date
hjk
adc9817671 Debugger: Remove some deprecated methods
Change-Id: I67254bb6d3d23e9fa9e121df0b3b923330cfe84a
Reviewed-by: Aurindam Jana <aurindam.jana@digia.com>
2013-08-19 12:17:41 +02:00
Eike Ziller
8c2e3fd2cb Fix usage of EditorManager::editorsForFileName
And move to using the corresponding method in document model.

Change-Id: I80b12ceab8a91c5393b9c0422d660a8896ae09d8
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-07-18 14:51:39 +02:00
Eike Ziller
5563604876 Merge remote-tracking branch 'origin/2.8' into HEAD 2013-07-18 11:54:02 +02:00
Eike Ziller
746e4f4119 Fix marking JavaScript lines that threw an exception
Since EditorManager::openedEditors doesn't exactly do what one would
expect, it was only marking a single editor even if there were multiple
editors on the same document.

Change-Id: Iae579c2cfd8455de2783d39fa69944fe92dfc60a
Reviewed-by: Aurindam Jana <aurindam.jana@digia.com>
2013-07-16 14:51:27 +02:00
Aurindam Jana
378d0cd119 QmlDebugging: Reset exception code highlighting
Clear code highlighting when debugging session ends.

Change-Id: I32844444161bbb609864926e12220f9fb0f492e2
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-07-16 14:43:57 +02:00
Eike Ziller
21f63c24c7 Merge remote-tracking branch 'origin/2.8'
Conflicts:
	qtcreator.pri
	qtcreator.qbs

Change-Id: I1310d473584f1e2cd44008d45747c868103bbde1
2013-07-12 10:39:18 +02:00
Aurindam Jana
9e8cd1eb1f QmlConsole: Check for duplicate children
When constructing the console item tree, check for
duplicate entries.

Change-Id: Ibc5aa150287ef5e2ee4b691a71bb170308a1fde7
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-07-11 10:54:17 +02:00
Aurindam Jana
fd685138c7 QmlConsole: Fix infinite recursion bug
The queried v8 object sometimes returns a child item that
refers to itself triggering an infinite recursion.

Task-number: QTCREATORBUG-9747
Change-Id: I30dfbb834ebeb39c33a6050d4b4860b1b47f34d9
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-07-11 10:53:06 +02:00
Eike Ziller
dd43d9908f Rename IDocument::fileName --> filePath
That is what it actually is, wrt how Qt API calls it.

Change-Id: Ied02055debf6aad75556b0d9d22e8ba2f72be555
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-07-09 13:51:42 +02:00
Friedemann Kleint
85d12bb409 Clean headers in debugger plugin.
Change-Id: Ia50e61a82101b699390b23b4f1ea9509619314bb
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-03-22 10:00:00 +01:00
Eike Ziller
99b2eb1ca9 Merge remote-tracking branch 'origin/2.7'
Conflicts:
	doc/src/debugger/qtquick-debugger-example.qdoc

Change-Id: If9a6ac2db76773c50aae26c5156e6aa2603329b3
2013-03-18 10:19:14 +01:00
Friedemann Kleint
225c21a0f2 Fix Krazy warnings about values or keys iteration in QML code.
Change-Id: I78be5ec702d06ecc155842e9f092a13fc1cd6197
Reviewed-by: Aurindam Jana <aurindam.jana@digia.com>
Reviewed-by: Christiaan Janssen <christiaan.janssen@digia.com>
2013-03-15 11:14:34 +01:00
Aurindam Jana
3c8602f9b3 QmlDebugging: Expand watch data that were previously expanded
The watch data model is cleared on every debug step. Hence,
tracking of expanded watch data is lost. Now, we keep track
of expanded watch data when stepping. However, we still lose
track of this data on a scope/stack change.

Task-number: QTCREATORBUG-8901
Change-Id: I1dc609cae1c3a36d8320864f71336b655eaa09d1
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-03-14 13:22:03 +01:00
Debao Zhang
f5dcd55117 Qt5: Don't use the deprecated {QString,QChar}::fromAscii()
Change-Id: Ic1d302c2186b11ffec5139f4f491d477d334ec8f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-02-26 15:24:26 +01:00
Oswald Buddenhagen
1fda2111d4 Merge remote-tracking branch 'origin/2.6'
Conflicts:
	src/plugins/autotoolsprojectmanager/AutotoolsProjectManager.pluginspec.in
	src/plugins/debugger/qtmessageloghandler.cpp
	src/plugins/debugger/qtmessagelogwindow.cpp
	src/plugins/madde/maemodeployconfigurationwidget.cpp
	src/plugins/qmldesigner/components/integration/designdocumentcontroller.cpp
	src/plugins/qmldesigner/designercore/include/widgetqueryview.h
	src/plugins/qmldesigner/designercore/metainfo/metainfoparser.cpp
	src/plugins/qmldesigner/designercore/model/modelnodecontextmenu.cpp
	src/plugins/qmldesigner/designercore/model/modelnodecontextmenu.h
	src/plugins/qmlprojectmanager/qmlprojectapplicationwizard.cpp
	src/plugins/qnx/bardescriptormagicmatcher.h
	src/plugins/qt4projectmanager/profilekeywords.cpp
	src/plugins/remotelinux/deployablefilesperprofile.cpp
	src/plugins/remotelinux/deployablefilesperprofile.h
	src/plugins/remotelinux/deploymentinfo.cpp
	src/plugins/remotelinux/deploymentsettingsassistant.cpp
	src/plugins/remotelinux/profilesupdatedialog.cpp
	tests/auto/icheckbuild/ichecklib.cpp
	tests/auto/icheckbuild/parsemanager.cpp
	tests/auto/icheckbuild/parsemanager.h

Change-Id: Ie465a578446a089e1c502d1cb1096e84ca058104
2013-01-31 16:25:33 +01:00
Robert Loehning
298531e370 Incremented year in copyright info
Change-Id: Ic6a9ff0359625021ebc061d22db6811814534205
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-01-29 16:27:03 +01:00
Orgad Shaneh
29a93998df Remove braces for single lines of conditions
#!/usr/bin/env ruby

Dir.glob('**/*.cpp') { |file|
  # skip ast (excluding paste, astpath, and canv'ast'imer)
  next if file =~ /ast[^eip]|keywords\.|qualifiers|preprocessor|names.cpp/i
  s = File.read(file)
  next if s.include?('qlalr')
  orig = s.dup
  s.gsub!(/\n *if [^\n]*{\n[^\n]*\n\s+}(\s+else if [^\n]* {\n[^\n]*\n\s+})*(\s+else {\n[^\n]*\n\s+})?\n/m) { |m|
    res = $&
    if res =~ /^\s*(\/\/|[A-Z_]{3,})/ # C++ comment or macro (Q_UNUSED, SDEBUG), do not touch braces
      res
    else
      res.gsub!('} else', 'else')
      res.gsub!(/\n +} *\n/m, "\n")
      res.gsub(/ *{$/, '')
    end
  }
  s.gsub!(/ *$/, '')
  File.open(file, 'wb').write(s) if s != orig
}

Change-Id: I3b30ee60df0986f66c02132c65fc38a3fbb6bbdc
Reviewed-by: hjk <qthjk@ovi.com>
2013-01-08 10:48:18 +01: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
Eike Ziller
db4311d5b5 Merge remote-tracking branch 'origin/2.6'
Conflicts:
	dist/gdb/Makefile.osx
	src/libs/qmldebug/qmldebug.qbs
	src/plugins/android/androidsettingswidget.cpp

Change-Id: I85627130b575f7d08f416dea52031fa72019b217
2012-10-04 12:23:39 +02:00
Leena Miettinen
28c0929f9e UI text: fix capitalization and punctuation
Change-Id: I7a974072096689aaa4b1ec1cca93dcd9febe14d9
Reviewed-by: Aurindam Jana <aurindam.jana@digia.com>
2012-10-01 12:00:54 +02:00
Aurindam Jana
6067411db4 Debugger: Remove old code
Version specific snippets were introduced to
avoid incompatibilities during Qt5 development.

Change-Id: I60fa9beafc9d55b687c08e13cdf531baecb10fbb
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2012-10-01 11:07:15 +02:00
Christian Kandeler
3d9e492860 Do not use the fromAscii() and toAscii() functions.
They are deprecated in Qt 5. Use fromLatin1() and toLatin1() instead. In
Qt 5, these always do the same thing as their "Ascii" counterparts. The
same goes for Qt 4, provided QTextCodec::setCodecForCStrings has not
been set, which it hasn't.

Change-Id: I04edeb376762b6671eff8156094f0d5e2cb8e1ea
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2012-09-21 21:03:48 +02:00
Friedemann Kleint
5b69bee198 Use QT_NO_CAST_FROM_ASCII for debugger plugin.
Fix gdmi escape routine by using a traits class to adapt
QByteArray/QString.

Change-Id: Ic6d2a0c927e4613aec9f69095bbb04a393e9edb9
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-24 09:46:25 +02:00
Friedemann Kleint
2f51579fe4 Debugger: Fix string usages.
- Compile with QT_NO_CAST_FROM_ASCII.
- Remove single character string constants.

Change-Id: Icece98619b6c30e047d3fce00e6ae74bbcd53c67
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-22 12:24:24 +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
Aurindam Jana
88dcefe0e1 QmlDebugger: Edit breakpoints
Remove and add breakpoint when a breakpoint is edited.

Change-Id: Idb231c0e9d44fe295007b299660fcbe3a980a252
Reviewed-by: Christiaan Janssen <christiaan.janssen@nokia.com>
2012-06-06 14:15:46 +02:00
Aurindam Jana
45540a30db QmlDebugging: Save few cycles
Change-Id: I6d094605e3983128b844f2156909b98a4016509f
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-31 16:03:28 +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
9d5cf49630 QmlV8DebuggerClient: Remove unused code
Change-Id: I4b0e04f6914629cc706831515839ecca99079909
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-05-02 15:15:42 +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
459f00642b QmlDebugger: Refactor QML Signal Handler
Refactor QML Signal Handler to QML Signal Emit. This is because the
debugger breaks when a matching signal is emitted irrespective of
whether there is a handler connected to the signal.

Change-Id: I852ace75c1962290717ed127ac5938d7505b9a7e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: hjk <qthjk@ovi.com>
2012-04-16 12:40:59 +02:00
Aurindam Jana
a7c1f55eba QmlV8DebuggerClient: Skip internal frames
Change-Id: Id7555807a0fc4d796035c922c04d5d7ced512d81
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-04-10 14:37:07 +02: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
380a32d4fa QmlDebugging: Fix 'this' in Locals And Watchers
Incase of global object, query the children only when
needed as the response takes a lot of time. Remove cached
requests when switching stack frames so that stale responses
are not parsed.

Change-Id: I70887773952ecaa61da21077ffec321fd5fabbb1
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-03-21 16:29:47 +01:00
Aurindam Jana
44de30e769 QmlDebugging: Fix Watched Expressions
The data response was incorrectly parsed for watched expressions.
This patch fixes the parsing. It also fixes removal and readdition
of a watched expression.

Change-Id: I1a9e2db3d4963d7fe12ed468ae5466a106011487
Reviewed-by: hjk <qthjk@ovi.com>
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-03-21 15:03:14 +01:00
Aurindam Jana
41a66d7478 QmlV8DebuggerClient: Make breakpoint non-pending
Make breakpoint non-pending when the breakpoint is accepted
by the v8 debugger.

Change-Id: Id67ce764ef6be9279d3fcc0f34734e5ac9541425
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-03-14 14:47:36 +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
2cf515d8f2 QmlV8DebuggerClient: Change breakpoint line number
V8 Debugger does not support changing line numbers of active
brekpoints. Remove the existing breakpoint and add a new one.

Change-Id: I0e6302d6d911887890d674960cc241f89c4cdc96
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-03-12 14:00:37 +01:00
Aurindam Jana
45b806564d QmlDebugging: Fix Regression
Fix Run to Line functionality. Regresseion was introduced by
fd82e54a5b

Change-Id: Ie2d3eb3d0df7ba73950c4d3c70ab25b9e7f7ab36
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-03-01 12:07:53 +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
6488b69ef3 QmlV8DebuggerClient: Remove code for older service version
The base service version of QV8DebugService is now 2.0
Support for older versions is not required anymore.

Change-Id: I5eb58ea64b1a621c853bdf236abf5412a704cbac
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-02-28 15:44:57 +01:00
Aurindam Jana
0a2140f5e8 QmlCppDebugger: Handling Stack
Use a common stackhandler in the mixed engine
instead of individual stackhandlers in qml engine
and cpp engine.

Change-Id: If363fabb32ae7c6e652452ca2b2fbf8593e684a5
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-02-28 15:44:48 +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