Mostly done using the following ruby script:
Dir.glob('**/*.cpp').each { |file|
next if file =~ %r{src/shared/qbs|/qmljs/}
s = File.read(file)
s.scan(/^using namespace (.*);$/) {
ns = $1
t = s.gsub(/^(.*)\b#{ns}::((?!Const)[A-Z])/) { |m|
before = $1
char = $2
if before =~ /"|\/\/|\\|using|SIGNAL|SLOT|Q_/
m
else
before + char
end
}
if t != s
puts file
File.open(file, 'w').write(t)
end
}
}
Change-Id: I1aa1a2b6ccbafeb1a8f3053fffa39b3f96992591
Reviewed-by: hjk <hjk@theqtcompany.com>
This is experimental for now and requires QTC_USE_PTY=1
in the environment to be used.
Change-Id: I460ce7b9283467d481e903f731f4243b7e5ec094
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@theqtcompany.com>
Reviewed-by: hjk <hjk@theqtcompany.com>
The actual data is now in a TreeModel. As interface to
individual breakpoints there's a new Breakpoint class
essentially providing a checked handle.
On the user code side breakHandler()->foo(bpId) is
replaced by bp.foo().
Change-Id: I82f435bad6301fce85a1d82bf6bf39e9ddba511e
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Use register names as handle, not their index in the view.
Store the raw real values, not some stringified version
as primary data. Use subentries to break down bigger
registers into smaller entities. Also remember the
previous value of a register and show it in a tooltip.
Change-Id: I8ae3cc8766a7b211bc7cc827c734e5cf6060825c
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
Nested event loops can lead to crashes, so it is better to use a dialog
which does not have have its own event loop.
Change-Id: Icd2390c9026bc1ef88e72a570df5813fe5cbdaa2
Reviewed-by: hjk <hjk121@nokiamail.com>
For now, only the gdb engine can handle complex tooltips
requiring async re-evaluation, cdb and lldb will show
and expand only items that are available in the Locals view.
This patch disables also the save/restore feature for
pinned tooltips.
Task-number: QTCREATORBUG-13255
Task-number: QTCREATORBUG-13052
Change-Id: Ic25616fede0f5c4343a92b631f01e60bfc5e9d81
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Broke with 3bafbe710f
We need to have the attachPid set with the inferiorPid after we got it
from the iossim tool.
Task-number: QTCREATORBUG-13261
Change-Id: I4f876817bed5566b5025d23416dd85676bc2e68b
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
One indirection less on the user code side, and easier to export
if needed (partially addressing QTCREATORBUG-13187)
Change-Id: I13ab9f471a3a34da7a6331aefc83f6d02413bfab
Reviewed-by: David Schulz <david.schulz@digia.com>
Export factory, de-export plugin, to remove one indirection
Change-Id: I13a46460d07d5ded6b26f2b5ceccd01142fb10e8
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
The base functionality is good enough.
Change-Id: Ie39398828733245e0e74ca9a2941c069116014f0
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
Allow multiple expanders to be registered for lineedits, e.g. a
local and the global ones, and actually show them.
Use a tree view in the chooser for somewhat more structured display.
Change-Id: I769f92144e5249f45e54381de52aa6973eb20118
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
This allows a MacroExpander also to describe an expansion it can
do which was restricted to the global VariableManager only.
The global is now just a thin (unneeded) wrapper about new "standard"
functionality.
Change-Id: Ida7ca70cf3d319eae4220ea8d12f3dd1c0d4042c
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
... and some of the related implementation details
Change-Id: I1f03aa5acf2d3fb2cfc2a6a7845f3d3578b0408d
Reviewed-by: David Schulz <david.schulz@digia.com>
Conversion of QList to QVector required further adaptations.
Instead of trying to match all expressions, break on first match.
Change-Id: I76d67ae876687ac15f3099a0a26eac582ad73c76
Reviewed-by: hjk <hjk121@nokiamail.com>
Useful for e.g. substituting any build dir to current project dir.
Change-Id: I50e8c101fa39bd45e55eef65776b18ef76bfd6ad
Reviewed-by: hjk <hjk121@nokiamail.com>
This is useful when there are multiple build machines with different
path, and the user would like to match anything up to some known
directory to his local project (variable support will also be useful -
will try to add that later).
Syntax: (/home/.*)/KnownSubdir -> /home/my/project
Capture group will be replaced by the value.
In this example the substitute path will be (in case a source string
found such as /home/SomeUser/SomeProject/KnownSubdir/foo.cpp):
/home/SomeUser/SomeProject -> /home/my/project
Change-Id: I19d03c9388161d8456a86676086dcb06dc3d7370
Reviewed-by: hjk <hjk121@nokiamail.com>
Move some function out of the DebuggerCore "namespace", to avoid one
indirection and removes clutter in the calling code.
Change-Id: I1c870d5c7eeade32fa63dedf581490fbb090cd6a
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
Turns out we don't even need two-phase initialization,
by transparently postponing registration until we get
a non-empty file name, either at constuction, or at
file name change times.
Change-Id: I3e87e47c820066e6707e946fc474ab9c1993e61f
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Fix expansion and updating.
Persistence and non-locals are still lacking.
Change-Id: I74e25199d50350516afc686a05836e239bfc8acb
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
Instead of broadcasting for each resolution we ask the code
that knows about a specific variable directly.
Change-Id: I2f0f4f2acceba85a236995d236980594a3166bd8
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
Also slightly change meaning (now all stops may cause raising).
Change-Id: Ie3fee7371ab119e4e9747dc44a4d8ef2cd62c8d8
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Added an option to change the behavior of the debuggercore so that
the current editor isn't always centered on the current line, to stop
unnecessary jumping of the code.
Change-Id: I9406df518bb1b977e39a0265ee7fd6fae2069ed9
Reviewed-by: hjk <hjk121@nokiamail.com>
Add language field to stack frame.
Add virtual for loading QML stack invoked by stack window
context menu, implement for CDB, GDB.
Task-number: QTCREATORBUG-11144
Change-Id: Ic39be3978b40d96ed18cb69a8355296ec572ece7
Reviewed-by: hjk <hjk121@nokiamail.com>