Commit Graph

387 Commits

Author SHA1 Message Date
hjk
10c2de0797 Utils: Even more treeview column size fine tuning
Do it manually now, directly. Changing behavior flags and waiting
for the view to act by itself turned out to be too fragile.

Change-Id: I31014219b8b20582401bf0431fb805b683aa953f
Reviewed-by: Tim Sander <tim@krieglstein.org>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-06-27 10:42:09 +02:00
Nikita Baryshnikov
12103e0f67 Reinvent deprecated qSort as Utils::sort
Change-Id: I4f6011cc2b6127037249aabc2426a88ad7108ebf
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-06-19 14:00:32 +02:00
hjk
99271c2343 Debugger: Some infrastructure for stricter watch model testing
Targeting re-use for tooltips, and potentially sorting.

Change-Id: I1ce8f4da73ab5ca13cd70d7c651bc76c67f91a39
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-06-03 16:50:14 +02:00
hjk
be25be4705 Debugger: Better handling of the tabbed extra views
Closing with the [x] now resets the Display mode of the associated
iname, and the view hides if there are no visible tabs left.
Also, remove the long-unused DisplayProcess format.

Change-Id: Ibd3308549af75e345c672c07f6714d26e7196e5a
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-06-03 10:53:01 +02:00
hjk
252048ef01 Debugger: Make char * displayable in separate windows
Task-number: QTCREATORBUG-7313
Change-Id: I8d475dd94a48e7a1d5efe4c2c0d90cb6bdf9b3e2
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-05-28 15:07:59 +02:00
hjk
4fefb1ca2a Debugger: Restrict non-negative display convention to non-decimal bases
Change-Id: I95421efa219a85cb81bf1d6a4acbc71eef5736ac
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-05-23 13:06:12 +02:00
hjk
62904f32ef Debugger: Also allow formatting negative numbers as hexadecimal
Change-Id: I0324c53b42424f25b1c70c10d3f31b515398712d
Reviewed-by: Tim Sander <tim@krieglstein.org>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-05-22 17:12:24 +02:00
hjk
40052046fd Debugger: Rework display length limitation systems
There are two values now, one to limit an entry in the L&E view
(default 100) and a hard upper limit (at 1 mio).

If displayed values are elided, the true length is shown in addition.

Change-Id: I180b70446c18e258c164e5af75b88d4c8b6c53f2
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-05-16 17:50:18 +02:00
hjk
3f0d02ad7f Debugger: Rework display type selection
The previous index based way was getting too brittle, use enums instead.
Also add a switch between exponential and flat display for floating
point types.

Task-number: QTCREATORBUG-12050
Change-Id: I86addbac5a80e8b79b176c6107b251b466503fe7
Reviewed-by: David Schulz <david.schulz@digia.com>
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-04-29 09:18:00 +02:00
Friedemann Kleint
e0272aefd8 Fix array format message in Debugger.
Change-Id: Ibd0a1dd6b4a48342eed5b889eff786fbebae7063
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-02-28 13:11:11 +01:00
hjk
8e50ff5b7a Debugger: Fix non-decimal display of negative numbers
Task-number: QTCREATORBUG-7322

Change-Id: Iabef05a8f9e77ce9ee3d6f7a456e876a0f823fd4
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-02-14 12:33:00 +01:00
hjk
06f35cbbd0 Debugger: Split type simplification into file of its own
This still needs to use a proper parser at some time.

Change-Id: Ia0afe593dd9dc32f22f80adb7232c04f4db79cf6
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-15 12:15:52 +01:00
hjk
df2ecb4edd Move the textual simplification of container type to debugger again
This is the only user, and likely will stay so for a while, and
eases the linking of the debugger autotests.

Change-Id: I822fa892f105a5b7985370b26e50aa94cac74bb3
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2014-01-08 14:49:35 +01:00
Eike Ziller
236ea9efb9 Merge remote-tracking branch 'origin/3.0'
Conflicts:
	share/qtcreator/debugger/dumper.cpp
	share/qtcreator/debugger/dumper_p.h
	share/qtcreator/debugger/test/main.cpp
	src/plugins/debugger/gdb/classicgdbengine.cpp
	src/plugins/debugger/gdb/pythongdbengine.cpp
	src/plugins/debugger/lldblib/guest/lldbengineguest.cpp
	src/plugins/debugger/lldblib/guest/lldbengineguest.h
	src/plugins/debugger/lldblib/guest/main.cpp
	src/plugins/debugger/lldblib/ipcengineguest.cpp
	src/plugins/debugger/lldblib/ipcengineguest.h
	src/plugins/debugger/lldblib/ipcenginehost.cpp
	src/plugins/debugger/lldblib/ipcenginehost.h
	src/plugins/debugger/lldblib/lldbenginehost.cpp
	src/plugins/debugger/lldblib/lldboptionspage.cpp
	src/plugins/qbsprojectmanager/qbsstep.cpp
	src/plugins/qbsprojectmanager/qbsstep.h
	src/plugins/qmlprofiler/canvas/qdeclarativecanvas.cpp
	src/plugins/qmlprofiler/canvas/qdeclarativecanvas_p.h
	src/plugins/qmlprofiler/canvas/qdeclarativecontext2d.cpp
	src/plugins/qmlprofiler/canvas/qdeclarativecontext2d_p.h
	src/plugins/qmlprofiler/canvas/qmlprofilercanvas.cpp
	src/plugins/qnx/blackberrycheckdevmodestep.cpp
	src/plugins/qtsupport/debugginghelper.cpp

Change-Id: Ie9fd0a885fb6264a6a8a72daee071b75bcbd2e9d
2014-01-08 11:01:06 +01:00
Robert Loehning
746c5d8863 Incremented year in copyright info
Change-Id: Ib5423fdd064e4546f848c0b640b0ed0514c26d3a
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2014-01-08 08:29:47 +01:00
hjk
c3e69ef0c1 Debugger: Remove some unused functions from WatchHandler
Change-Id: I8be7b06c44ebb83385ecb9cc8b5c9aa684d97458
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2014-01-06 16:25:29 +01:00
hjk
05f47cd451 Debugger: Make also individual formats persistent
I am not fully convinced this is a good idea, but it looks like
the different behaviour of type formats and individual formats
is unexpected.

Task-number: QTCREATORBUG-7412
Change-Id: I5aae39939dfe75b3d9ff6c1025bd3d9c9222695a
Reviewed-by: David Schulz <david.schulz@digia.com>
2013-12-20 19:09:51 +01:00
hjk
848af02753 Debugger: Add more options for pointer display
Change-Id: Iaceefc5da11a03052e5a2eb50dab7a85588813b0
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
Reviewed-by: David Schulz <david.schulz@digia.com>
2013-11-27 10:42:24 +01:00
hjk
47575dc5d1 Debugger: Remove some dead code
Change-Id: I715744621e5e74fcd6cd0e2b9fba0c5881cd8da8
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-11-08 13:51:00 +01:00
hjk
8c02d6e0dd Debugger: Fix QChar dumper with Python 3
Change-Id: I7da412c9bdaf3a8f65484ac99f06fc31a5cdc1c3
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-21 14:15:56 +02:00
hjk
11bf267604 Debugger: Offer base changes for all integral looking values.
If it talks like a duck, and walks like a duck...

Change-Id: I166a452a9d067285467b346a4ef5d4de646d3a31
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-21 14:05:22 +02:00
hjk
6669e8ea75 KitChooser: Add a 'Manage' button for quick setting access
Change-Id: I0f90075ed6549b1e5093d8cc81975bc46acf38fb
Reviewed-by: David Schulz <david.schulz@digia.com>
2013-09-13 11:35:43 +02:00
hjk
5e5d840b53 Debugger: Streamline settings access pattern
Change-Id: Ie73b8d9fa945ee9dcbab67177410cc782979c8ad
Reviewed-by: David Schulz <david.schulz@digia.com>
2013-09-05 11:07:00 +02:00
Christian Kandeler
15d1048ef2 Fix some include statements.
In several places, it says '#include "..."' for headers
from different libraries/plugins.

Change-Id: I96cd74fef9b30163adefe3e1720e0847bed9553a
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-09-04 15:51:36 +02:00
hjk
6ef5aaad67 Debugger: Set model object names at construction time
Change-Id: Ib1d273ef2c2bb97a2343da6d361fde7c01012040
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-08-19 17:16:06 +02:00
hjk
1c5c51c91d Debugger: Disable # characters in watched expression
They are not useful and break the dumper protocol.

Change-Id: Ice7e21575e371ee3f8bb8cfb80b73aed47542932
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-08-10 21:23:00 +02:00
hjk
abc6e351b8 Debugger: Make QImage dumper work with release versions
This accidentally also allows non-debug Qt users to reproduce the
http://blog.qt.digia.com/blog/2010/04/22/peek-and-poke-vol-3/
smiley drawing.

Change-Id: Ica436f55494d012d5516ef9d00d6310f2ac2d4ee
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-01 14:21:43 +02:00
hjk
84b72f8974 Debugger: Add option to display pointer as arrays
Task-number: QTCREATORBUG-8904

Change-Id: Ic4129bff89afb6b3f6d210cbd738c3281c174884
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-07 17:12:57 +02:00
Kai Koehne
6902ee2617 Debugger: Fix warnings on qt creator startup
Predefined entries like "Locals" do not have a value.

Remove asserts on every startup:

SOFT ASSERT: "!result.isEmpty()" in file
/home/kkoehne/dev/creator-2.8/src/plugins/debugger/watchhandler.cpp,
line 956

Change-Id: I16b97c61256c6083440b9fa228113be9d0867e5d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-04-02 13:26:56 +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
Friedemann Kleint
68cd15382d Fix Krazy warnings about includes/header guards in Debugger.
Change-Id: If547a0002d37710fac58c1a13bacc48cf531bed7
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-03-12 12:49:48 +01:00
hjk
e1f8ed7384 Debugger: Sort out the 'address' vs 'origaddr' fields
Now 'address' always refers to the address of the object or
field mentioned in a WatchItem whereas 'origaddr' is
optionally used for the address of the pointer (not its
value) pointing to the object/field in case of "autoderef"
pointers.

Change-Id: I718eb13e6147dafca016c85db6c8b31c631cc764
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-03-08 17:29:06 +01:00
hjk
717f237ea0 Debugger: Better usability of separate displays
Close separate displays when watch models get destroyed, make
geometry persistent in the session.

Change-Id: I67a22b0a17fa63441073f8ad0b06bcc0f49b348c
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-02-11 13:27:45 +01:00
Tobias Hunger
255f9fb372 Fix warning about use of uninitialized values
Clang complains that these values may be used uninitialized if both
conditions are false. This can actually not happen, so just initialize
them to 0 to quiten up the compiler.

Change-Id: I32530b974058e3484b5e7005717b7cd389cf7305
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-02-06 14:49:00 +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
hjk
63439a5f21 Debugger: move MI decoding to debuggerprotocol.{h,cpp}
Change-Id: I9d2eaf43b66f0db74ba2584157d6df8280d76652
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-01-24 12:22:31 +01:00
Friedemann Kleint
78d134cdcd Debugger: Add Image viewer with color picker and context menu.
Change-Id: I31673da5ba85e87c9819059a9e6806b5deecff1e
Reviewed-by: hjk <qthjk@ovi.com>
2013-01-08 17:16:28 +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
Ryan May
577fe8a49f Debugger: Make tabs in separate view closable.
Refactor the separate view from directly using a QTabWidget to a subclass
so that the necessary signal can be hooked up.

Change-Id: Ibc2653d554882a36a85162708021422843057bc1
Reviewed-by: hjk <qthjk@ovi.com>
2013-01-01 01:09:31 +01:00
Ryan May
45cd2d1e8f Debugger: Set current tab in separate value display
As widgets are added and deleted from the tab widget, they can end
up in almost any order. As a result, when the window is raised, the
current tab does not necessarily reflect an item currently in the
watch view. Instead, make a tab the current one as it is added,
ensuring one of the currently relevant values is displayed by default.

Change-Id: Ia2d2eb60c844a008f8086820564dd20389ce519b
Reviewed-by: hjk <qthjk@ovi.com>
2012-12-29 13:09:03 +01:00
Friedemann Kleint
82b781f5a7 Auto-detect Endianess of image data by looking at width value.
Change-Id: I403fe7dcf841129e4c24b2c2787f58aa94540c6e
Reviewed-by: hjk <qthjk@ovi.com>
2012-12-28 19:25:42 +01:00
Friedemann Kleint
7bc0818d7a Fixes to edit format handling.
- Close window after last tab has been removed.
- Remove type name from tab title (results in too-long tab titles
  for templates).

Change-Id: If4b55423261ed4992b8a7e983704006fdda86843
Reviewed-by: hjk <qthjk@ovi.com>
2012-12-28 19:21:30 +01:00
Friedemann Kleint
a9ea71c26f Use switch in showEditValue().
Change-Id: I37c628ea18663eb8fec5351e3b2d580617ff7c35
Reviewed-by: hjk <qthjk@ovi.com>
2012-12-14 12:59:13 +01:00
Friedemann Kleint
224eaa817a Fix separate window for Utf8 strings.
Change-Id: Ibb355923f71a9c9a387edecb8e67760561b13117
Reviewed-by: hjk <qthjk@ovi.com>
2012-12-14 11:12:18 +01:00
Friedemann Kleint
fe6be533bc Debugger: Add a tab widget for separate value display.
Debugger display in separate windows currently opens several
widgets without title at the same location that disappear
below the main window when stepping.

Put them in a tabwidget and raise it when setting new values.

Task-number: QTCREATORBUG-8344
Change-Id: Icb6dd8942ab851aeeb6a9248c4a1360e8841cf61
Reviewed-by: hjk <qthjk@ovi.com>
2012-12-13 15:19:21 +01:00
Eike Ziller
387f5a7006 Merge remote-tracking branch 'origin/2.6'
Conflicts:
	src/plugins/cpptools/cppcompletion_test.cpp
	src/plugins/projectexplorer/kitmanagerconfigwidget.cpp
	src/plugins/qmlprojectmanager/qmlprojectapplicationwizard.cpp
	src/plugins/qtsupport/baseqtversion.cpp
	tests/auto/cplusplus/findusages/tst_findusages.cpp

Change-Id: Idd2abc09753a71a6c252bfa9914274459b2c7e63
2012-11-26 10:52:28 +01:00
Aurindam Jana
32a0afb9df Inspector: Fetch objects lazily
QML objects are fetched lazily when constructing the object tree.
Incase parents have not been previously fetched, we fetch the
required data to construct only the relevant branch of the tree.

Task-number: QTCREATORBUG-8246
Change-Id: Id529c3b2334d33ff4eb46b14f50cf042ad2960e2
Reviewed-by: hjk <qthjk@ovi.com>
2012-11-24 22:51:19 +01:00
Eike Ziller
3e7d94c362 Merge remote-tracking branch 'origin/2.6'
Conflicts:
	qtcreator.pri
	qtcreator.qbs

Change-Id: Ib5e7c433606406d123b4a384ae1b48e2dbb26824
2012-11-16 15:31:02 +01:00
Aurindam Jana
bc5cda03e4 Inspector: Do not disable Locals and Expressions
Inspector follows a different cycle and its contents are
always valid during a debug session. Show the values in
Locals and Expressions as valid for user to interact
with them.

Task-number: QTCREATORBUG-8167

Change-Id: If2f622de5b8bf6da78571bc007efd19602a5f389
Reviewed-by: hjk <qthjk@ovi.com>
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2012-11-09 16:23:12 +01:00