Paths passed to Qt Creator API must be cleaned. Make sure that the file
path that is opened from stack view and when stepping etc, is cleaned.
Task-number: QTCREATORBUG-10119
Change-Id: Iaac9b15e76cf8dff514889f201c4f65330145d16
Reviewed-by: hjk <hjk121@nokiamail.com>
A lot of our build system files specify unneeded include
paths. These roughly fall into the following categories:
a) Paths that are already set in more general files
such as qtcreator.pri.
b) Paths that serve no purpose at all, possibly
left over from earlier versions of the project.
c) Paths that act as workarounds for wrong include
statements of the form '#include "xyz.h"', where
xyz.h is not in the same directory as the including
file.
This patch removes such path specifications and fixes the offending
include statements from case c).
Tested on Linux, Windows and OSX with qmake and qbs.
Change-Id: I039a8449f8a65df0d616b4c08081145c18ae4b15
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Make methods static and add a instance() method for Signals/Slots.
Remove ProjectExplorerPlugin::taskHub() method and use the new
ones instead.
Change-Id: Ifae24ff19579fc524cbd61bddc826095c443adfa
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
And where using editors is necessary, take *all* editors into account,
not a random set of what previously was called "original" editors (when
using splits).
Change-Id: Id6bbad08f3083b6744fc2edcf0b87ba504d3257b
Reviewed-by: hjk <hjk121@nokiamail.com>
Fix capitalization and punctuation. Make some strings shorter.
Change-Id: Ic018d9905d855c6694d3d63e703e772d63d75c71
Reviewed-by: hjk <hjk121@nokiamail.com>
#!/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>
When an object is selected in the Inspector, the
Editor is updated to show the relevant code.
Task-number: QTCREATORBUG-8246
Change-Id: I4f7fbcccdeb22849682fa72c63e87a78f48d185b
Reviewed-by: hjk <qthjk@ovi.com>
Reviewed-by: Christiaan Janssen <christiaan.janssen@digia.com>
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>
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>
This is closer to internal gdb state. There are still a few workarounds
for gdb < 7.0 which probably should be dropped as BFD 2.18.50.20080226
yields "assertion fail elf32-i386.c:366" on stock Ubuntu 12.04 gcc,
so stock gdb 6.8 cannot be used with that compiler anyways.
Change-Id: I22c4e0ce91f634cc171d65f0ad07d68d679af10c
Reviewed-by: David Schulz <david.schulz@nokia.com>
Reviewed-by: hjk <qthjk@ovi.com>
Script will be used if and only if there is one given. No extra bool.
Change-Id: I095e01b2243f0fa1f7ba2ce9591e3d67b6de5241
Reviewed-by: hjk <qthjk@ovi.com>
Remote dumpers are not used anymore, there's also no need to
have it in the engine base class anymore.
Change-Id: If0b6930b07e468d5973d848e02696bc5da40a197
Reviewed-by: hjk <qthjk@ovi.com>
This replaces the debugger command, sysroot and target abi fields
with a profile id.
Change-Id: I831c42ff8624fcfa520c2f28f6f06d73191b2680
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
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>
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>