Commit Graph

835 Commits

Author SHA1 Message Date
hjk
794b41581b Debugger: remove isEditorDebuggable
It was returning 'true' unconditionally for a while.

Change-Id: Ia99bdb3c525641f757dacbba148b68d677f4d632
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-01-24 16:10:10 +01:00
hjk
2a0bb34911 Debugger: split fixCppExpression into some common and some cdb part
Task-number: QTCREATORBUG-8446
Change-Id: I79abc7f75779db15bd8700c085b9cd57411bb2e1
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-01-09 16:02:46 +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
hjk
cbf75f676a Debugger: de-noise
Change-Id: I48c9b1353d80ebd85c81aa8a03d0be200781122a
Reviewed-by: hjk <qthjk@ovi.com>
2012-12-30 12:55:52 +01:00
hjk
e833b794b3 Use Core::Id in ICore::showOptionsDialog
Change-Id: I3865fde2347d687a7dee76dd5ca62db69cc4dd04
Reviewed-by: hjk <qthjk@ovi.com>
2012-12-29 19:04:30 +01:00
Eike Ziller
a8a33b9a3b Merge remote-tracking branch 'origin/2.6'
Conflicts:
	src/plugins/qt4projectmanager/qt4buildconfiguration.cpp
	src/plugins/qtsupport/baseqtversion.cpp

Change-Id: I288eeb1137e1b08d6c0d69f394cbb0fe1a937b68
2012-12-14 08:20:49 +01:00
Aurindam Jana
d1ad1c303b Inspector: Add tools to debug menu
Task-number: QTCREATORBUG-3812

Change-Id: Ifa0ff5d030d6dc3e88df64523a81847314ff26ed
Reviewed-by: Christiaan Janssen <christiaan.janssen@digia.com>
2012-12-11 23:19:28 +01:00
Aurindam Jana
1b916719d0 Inspector: Enable/disable tools on engine state
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>
2012-12-11 10:05:45 +01:00
Orgad Shaneh
a44aa55502 Add whitespace after control keywords
find -name \*.cpp -o -name \*.h | \
  xargs sed -Ei 's/ (for|foreach|if|switch|while)\(/ \1 (/g'

Change-Id: I9efdff4bf0c8c01a52baaaeb75198483c77b0390
Reviewed-by: hjk <qthjk@ovi.com>
2012-11-28 20:20:46 +01:00
Orgad Shaneh
b7fea5fe53 Debugger (qbs): Compile with QT_NO_CAST_FROM_ASCII
Only comments were adapted

Change-Id: Id1393d512ed950ca747267c1e024d54e3bfc279d
Reviewed-by: hjk <qthjk@ovi.com>
2012-11-27 08:48:38 +01:00
Orgad Shaneh
7c4e2b6c60 Id: Add QByteArray constructor
Distinguish from const char * one.

QString ctor is yet to be removed

Change-Id: I2da231036c6417353b0566d39666d918ad141c6d
Reviewed-by: hjk <qthjk@ovi.com>
2012-11-20 08:57:35 +01:00
hjk
6841976aa8 debugger: give access to the section names in a shared object
Via context menu in the modules view, gdb-only for now.

Change-Id: I1163540cd9894c52243bb1bf0c2afc881e793863
Reviewed-by: hjk <qthjk@ovi.com>
2012-11-09 11:44:22 +01:00
Eike Ziller
fe74a9a722 Merge remote-tracking branch 'origin/2.6'
Conflicts:
	qtcreator.pri
	qtcreator.qbs
	src/plugins/fakevim/fakevimhandler.cpp
	src/plugins/qtsupport/baseqtversion.cpp
	tests/auto/cplusplus/cxx11/cxx11.pro
	tests/auto/cplusplus/cxx11/tst_cxx11.cpp
	tests/auto/icheckbuild/icheckbuild.pro

Change-Id: I3c8351ad35617f56d15b788c8a46d8a6f453ef70
2012-11-09 11:20:10 +01:00
Aurindam Jana
86c14292d2 QmlDebugger: Fix Remote QML Debugging
The host address is now retreived from the kit info.
Incase, a device is not associated with the given kit,
the host is assumed to be localhost.

Change-Id: I659d2d64ec78dc1b10c80c97390994a56ff26344
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: hjk <qthjk@ovi.com>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2012-11-07 15:40:15 +01:00
hjk
97bcf9ea96 Debugger: Make autotests auto-configure and compile test project
Change-Id: I2b939409374508687f4ea2e0d4cae65ac62498c7
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2012-11-06 16:27:50 +01:00
Friedemann Kleint
2e40c54ea3 Debugger: Remove #ifdef Q_OS_WIN from hostutils.
- Provide stubs for Non-Windows
- Reduce #ifdefs, check Abi if possible.
- Remove unused winGetCurrentProcessId().

Task-number: QTCREATORBUG-8141
Change-Id: I80558ca4e52e87c7371597ea07c091af08097b34
Reviewed-by: hjk <qthjk@ovi.com>
2012-11-02 15:40:41 +01:00
Eike Ziller
67b0637934 Merge remote-tracking branch 'origin/2.6' 2012-10-29 15:13:06 +01:00
Friedemann Kleint
0ae5695649 Try to watch local variable in watchwindow-DND, too.
Fix codepath overlooked in
6886e485de by introducing
a WatchHandler::watchVariable().

Task-number: QTCREATORBUG-8120
Change-Id: Ibab2619754e0006f3c81810a6bfdf758261c169e
Reviewed-by: hjk <qthjk@ovi.com>
2012-10-29 13:29:56 +01:00
Eike Ziller
0a1bdf4257 Merge remote-tracking branch 'origin/2.6'
Conflicts:
	share/share.qbs
	tests/auto/icheckbuild/icheckbuild.pro

Change-Id: I13bc737c981aaeb615ab1a3571cc8a18f60a7cd6
2012-10-25 10:45:58 +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
hjk
7728ed4af1 debugger: allow using a local core file with a remote kit
This is a common use case when examining core files from devices without
ssh access or "externally" created core files and used to work with 2.5.

Change-Id: Ie8ee5e2e0216c1e8c3265cf01e59f2c92d8730ef
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2012-10-23 08:25:31 +02:00
Aurindam Jana
5af9e2f46a Debugger: Validate debugger for C++ debugging
Task-number: QTCREATORBUG-8059

Change-Id: Icc277f47f46c1d7276d860e8bf1c133198020d78
Reviewed-by: hjk <qthjk@ovi.com>
2012-10-16 15:59:30 +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
Christian Kandeler
6c1b0fc80d SSH: Add infrastructure for passing additional connection options.
So far, the only option is whether to use the default proxy or not. More
will follow.

Change-Id: Icd1ec407a0269cc8e7577901853d3873fd03015c
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2012-10-04 12:07:48 +02:00
Eike Ziller
6faede0860 Merge remote-tracking branch 'origin/2.6'
Conflicts:
	share/qtcreator/qml/qmlpuppet/commands/changenodesourcecommand.h
	share/qtcreator/qml/qmlpuppet/commands/tokencommand.h
	share/qtcreator/qml/qmlpuppet/container/reparentcontainer.h
	share/qtcreator/qml/qmlpuppet/qml2puppet/instances/componentnodeinstance.h
	share/qtcreator/qml/qmlpuppet/qmlpuppet/instances/nodeinstanceclientproxy.cpp
	src/plugins/git/gitsettings.cpp
	tests/manual/ssh/remoteprocess/remoteprocesstest.h

Change-Id: I00c294e6d911d272615e65fed58562399af97a4e
2012-09-27 20:38:57 +02:00
Eike Ziller
069ad73fb6 Mac: Fix insource build
Change-Id: Iadbb51b48ea82afc398b59148d603867b0439448
Reviewed-by: Aurindam Jana <aurindam.jana@digia.com>
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
Reviewed-by: hjk <qthjk@ovi.com>
2012-09-27 12:22:11 +02:00
Eike Ziller
a55d47544a Merge remote-tracking branch 'origin/2.6'
Conflicts:
	qtcreator.qbp
	src/plugins/qtsupport/baseqtversion.cpp
	src/tools/tools.pro

Change-Id: I43c391328ae747b3dc566f9db2384fedc1a6d0a5
2012-09-26 10:01:04 +02:00
hjk
2f3b010d4b debugger: fix recent regression in command line parsing
A -debug <pid> or -debug core=... wasn't properly handled anymore.

Change-Id: Ia976eccc0924e8e22168d8be35d7c24e1d566487
Reviewed-by: hjk <qthjk@ovi.com>
2012-09-21 15:53:23 +02:00
Oswald Buddenhagen
e730e2bb8a Merge remote-tracking branch 'gerrit/2.6'
Conflicts:
	src/libs/utils/environment.cpp
	src/plugins/android/androidtoolchain.cpp
	src/plugins/projectexplorer/gcctoolchain.cpp
	src/plugins/qt4projectmanager/qt4buildconfiguration.cpp
	src/plugins/qtsupport/baseqtversion.cpp
	src/shared/proparser/qmakeevaluator.cpp

Change-Id: I554e96445a4d2b9ba0cc173ecd766091ee921aa2
2012-09-12 17:27:37 +02:00
Orgad Shaneh
4ef2fbd4ce Profile -> Kit variable renaming
Change-Id: I6cc06684134030bd527d9dcce21ad17938a56927
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
2012-09-11 17:08:52 +02:00
Eike Ziller
5ac721dd58 Merge remote-tracking branch 'origin/2.6'
Conflicts:
	qtcreator.pri
	qtcreator.qbp
	src/libs/utils/utils.pro

Change-Id: I6f0aba746f915d8c51dcf9372f7d9f593562fc2b
2012-09-11 14:02:03 +02:00
hjk
15ea29533a debugger: use DeviceProcessesDialog directly for attaching
Change-Id: I916c42bc141f5bfbf5dd163b3d9dfeed3703ed94
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-09-07 15:26:06 +02:00
Friedemann Kleint
c3f50e3192 KitChooser: Introduce virtual methods for Debugger.
Introduce virtual methods such that it is possible to
write derived classes for specific KitInformation classes,
allowing for filtering and setting text and tooltip.

Remove debugging-specific code of KitChooser from
the ProjectExplorer.

Move populate() away from the constructor as not to call
virtuals from it.

Implement DebuggerKitChooser. It should no longer be
possible to to choose an invalid kit for debugging
from the debugger starter dialogs.

Add a protected constructor to DeviceProcessesDialog
allowing to pass a KitChooser.

Change-Id: I8c683a2da7d69bfbccdc08213cb47d69a0df8b3e
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
2012-09-05 15:49:20 +02:00
Friedemann Kleint
af6bbc442e Add debugger engine type to configuration.
Introduce a struct DebuggerItem as a debugger configuration
item, containing debugger engine type and binary. Store
information as a variant map. Add a combo box.

Remove engine guessing logic. Parts of it are still required
when checking the suggested debugger from the SDK.

Split error checking to be able to do a quick error check
and find only valid profiles in the matchers.

Pass on errors up to RunControl::create().

Change-Id: I08653e2a76ca2c371701082f8173b0b8f8ed462e
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
2012-09-05 15:49:11 +02:00
Daniel Teske
7657dd3a47 Add error string to IRunControlFactory::createRunControl
And add a few helpful error messages

Task-number: QTCREATORBUG-7826

Change-Id: Ia9f9fa476cecf2cff198bc460408bc062e119338
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-09-05 14:38:51 +02:00
Eike Ziller
887456e38a Merge remote-tracking branch 'origin/2.6'
Conflicts:
	src/plugins/madde/maemodeployconfigurationwidget.cpp
	src/plugins/madde/maemoglobal.cpp
	src/plugins/madde/maemoinstalltosysrootstep.cpp
	src/plugins/madde/maemopublisherfremantlefree.cpp
	src/plugins/madde/qt4maemodeployconfiguration.cpp
	src/plugins/qt4projectmanager/librarydetailscontroller.cpp
	src/plugins/qt4projectmanager/qt-desktop/qt4runconfiguration.cpp
	src/plugins/qt4projectmanager/qt4buildconfiguration.cpp
	src/plugins/qt4projectmanager/qt4project.cpp
	src/plugins/qtsupport/baseqtversion.cpp
	src/plugins/remotelinux/abstractremotelinuxdeployservice.h
	src/plugins/remotelinux/deploymentinfo.cpp
	src/plugins/remotelinux/remotelinuxdeployconfigurationfactory.cpp
	src/plugins/remotelinux/remotelinuxrunconfiguration.cpp
	src/plugins/remotelinux/remotelinuxrunconfigurationfactory.cpp

Change-Id: I2560b528596f284e7b45a2260d8d3037891c5d17
2012-09-04 18:04:16 +02:00
Tobias Hunger
8ba422d07c s/profile/kit/
* Rename profiles to kits.
* Update some strings:
   * projects mode has a Kits tab, not a Targets tab.
   * " Settings" was dropped from the sub-tabs of the Kits tab
   * menu entry "Build/Open Build/Run Target Selector" was renamed
     to "Build/Open Build and Run Kits Selector".
   * Use "Kit" instead of "Target" in miniprojecttargetselector.
     (The class was not renamed as it does indeed select targets,
      not kits)

Change-Id: I0727e086e2dfa0e8aaaf89fdc6f2e3596c7a4314
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2012-09-04 15:24:25 +02:00
Friedemann Kleint
71ea54c036 Fix debugger detection when attaching from output pane.
Obtain RunConfiguration from RunControl add logic to
use the ABI if that fails.

Task-number: QTCREATORBUG-7677

Change-Id: Iebf053e6b7a25644a4d4c02b80bf952ef9e6a078
Reviewed-by: hjk <qthjk@ovi.com>
2012-09-03 11:56:33 +02:00
Eike Ziller
a225e5b867 Merge remote-tracking branch 'origin/2.6' 2012-09-03 09:08:49 +02:00
Friedemann Kleint
6886e485de Handle watching/tooltips of C++ editor tokens consistently.
For editor tooltips and the editor context menu
'Watch expression', always try to find a local variable first
and use its expression.

Change the tooltip manager/widgets not to rely on the debugger
model enum and obscure expression, filter by complete iname
instead. Remove obsolete enumeration.

Change gdb's handling of tooltips such that local variables
are displayed immediately without creating additional tooltip
items.

Change-Id: I9b55823428029ba50d84d3a8cab55eb58942e72b
Reviewed-by: hjk <qthjk@ovi.com>
2012-09-03 09:02:56 +02:00
Eike Ziller
25dea9a393 Merge remote-tracking branch 'origin/2.6' 2012-08-31 09:28:19 +02:00
Friedemann Kleint
e67e58378d Debugger: Use gdb's tooltip expression fixup for CDB and editor.
Factor out to watchutils.

Change-Id: I8cf316be819d765dcea964ac6405bfa9b075de59
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-31 08:56:22 +02:00
Oswald Buddenhagen
a32e243e61 Merge branch '2.6'
Conflicts:
	src/libs/utils/consoleprocess_unix.cpp

Change-Id: I196f61e882bfce94e165d9c724bffee9df1011b7
2012-08-30 20:43:02 +02:00
Friedemann Kleint
3797595c31 Fix 'Attach Debugger' in output pane.
Bring back the slot, suppress a warning about empty binaries
in the release check.

Task-number: QTCREATORBUG-7677
Change-Id: I2f1703b38b68995a1e2533ed8a6c94985cc3b430
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-30 11:53:35 +02:00
Christian Kandeler
e669f05406 Utils: Introduce HostOsInfo class.
The class' member functions are intended to be used
instead of the Q_OS_* macros in all contexts where
the latter are not syntactically required.
This lowers the likelihood of changes made on one
platform breaking the build on another, e.g. due to
the code model missing symbols in #ifdef'ed out code
when refactoring.

Change-Id: I4a54788591b4c8f8d589b8368a6c683d4155c9fa
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-27 17:00:03 +02:00
hjk
29ec32a531 ProfileChooser: make more robust in case of no configured profiles
Change-Id: I53945617cc616d2bfe4726b4e6e45cad7b400c44
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
2012-08-24 15:33:09 +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