Commit Graph

264 Commits

Author SHA1 Message Date
Christian Stenger
4872532ef1 Fix build
Change-Id: I2edadc699c7177f3239a686dd01f92e54fa56bf9
Reviewed-by: hjk <hjk@qt.io>
2023-09-28 07:15:26 +00:00
hjk
d6fe357d81 Utils: Use a proper class as Key
The Key encapsulates now a QByteArray.

Plan is to use QByteArray::fromRawData on literals, but that's not
active yet due to an unclear ASAN report, see the gerrit discussion.

For now we also paddle back when interfacing QSettings, instead of mimicing
writing a QVariantMap (and fail in some corners), always convert
the Store. This is meant to go away in the future when code paths
are better controled.

Change-Id: Id1206a434d511f8003903d5322c7c9bd5f5fb859
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2023-09-27 09:41:44 +00:00
hjk
8d0aa34bfc Plugins: A bit more Keys and Store
Change-Id: Iee55eeaa881dd9f2047fdbe95ad8d827f4ba34e0
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2023-08-25 08:00:02 +00:00
hjk
323e94c2fa Debugger: Use AspectContainer directly for L&E settings page layout
Change-Id: I538362541e67499ee1a93fbd5452bdd76694f87b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-07-27 06:05:32 +00:00
hjk
59ce7c14f7 Debugger: Use CommonSettings::setLayouter
... instead of a IOptionsPage-derived class.

Change-Id: Ica45b1752fc4e6f83e9dfae25c5e9dcd1fd9c9ba
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-07-26 09:39:22 +00:00
Christian Stenger
370bd18dc6 Debugger: Fix persisting of common options
I have some notion where this should lead to, but we are not
there yet.

Change-Id: I402618a64dfef43c8e2089bface44ec5c822eb0b
Reviewed-by: hjk <hjk@qt.io>
2023-07-25 05:20:20 +00:00
hjk
5d67ad37cf Debugger: Simplify code path leading to .writeSettings()
Change-Id: Iaea1159305507e10adf2b448a774e2b528eaef80
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-07-24 08:16:39 +00:00
hjk
ece7ae6bb5 Debugger: Avoid now unusual external trigger of readSettings()
Change-Id: I5a3c9f07e7b07184916b5ca3b95a8966c62193eb
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-07-21 10:35:27 +00:00
hjk
11e1c7b1a4 Debugger: Move CommonOptionsPage to new settings scheme
Change-Id: I851931d3b0536659dc2e53a67b9879caad2f3166
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-07-20 13:47:24 +00:00
hjk
e157ac82a1 Debugger: Paddle back on multiple inheritance for settings
This is fairly close to the new "standard" pattern for an
individual page but still allows flat access using the same
'settings().' stanza.

Change-Id: I1edbbd64a857a3d3936fb2c21fdc7e3c8ae7a44c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-07-19 06:39:56 +00:00
Christian Stenger
381ff44f66 Debugger: Fix post mortem action on Windows
Change-Id: I411853098f3bb7c410b4446bb6f2ed61fb11b217
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2023-07-14 12:09:35 +00:00
hjk
a5e773aeee Debugger: Adapt to latest settings access style
Change-Id: I14f737612b4fe6a37e650190b587ef0b04e559ea
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-07-14 08:39:08 +00:00
hjk
91513a53dd Utils: Make aspect settings access implicit
Generally, aspects should use fromMap/toMap, but some older pages
use {from,to}Settings with always the same ICore::settings().

To make that less intrusive on the user code side, make that globally
implicit.

Task-number: QTCREATORBUG-29167
Change-Id: I29a8e23a31eb8061bb143e93931a07c6741eb7f9
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-07-07 09:02:29 +00:00
hjk
379e7f906e Utils: Rework aspect implementation
This avoids some repetition and could be a step towards
having type storage in (or rather accessible from) the base,
so we can have aspects for more complex data (treemodels...)
that are not easily converted to QVariant.

Change-Id: I9797b3d5646195705212db1830d2b415291ac651
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-06-29 11:25:44 +00:00
Eike Ziller
dff9e1463b Reduce usage of app_version header
Most information is available via Q(Core|Gui)Application.
Add an AppInfo structure for the things that are not.

This avoids that the information ends up duplicated and
hardcoded in the plugins, which is not needed or desired.

Change-Id: I4d565e75c42a7b8facafa90c27096ea49359215d
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2023-06-26 06:57:46 +00:00
hjk
0cf1477324 Debugger: Split out gdb related options into own page object
Goal is to make option setup more similar to the other "simple" pages.
The GdbOptionPage is now separated in the setup code, but aggregated
into the old place and accessed there.

The per-backend separation seem quite weak, a full split would currently
need to have include gdb/* in several places now is an indication
that the gdb/non-gdb split in the options is dubious at best.

Change-Id: Iad210016739aa4a63645731e16825f546bdd5e8a
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-06-22 15:22:38 +00:00
Eike Ziller
bc52355f98 Tr: Move some html out of texts
Change-Id: I46c8d81630e18e244f16cefe696d662632340008
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2023-05-30 08:51:04 +00:00
hjk
d685fbccf0 Debugger: Use a FilePathAspect for extra dumpers
Change-Id: Ideb779cc5ef0d679667b635efe8c1a2859c6e608
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-05-25 09:49:05 +00:00
hjk
75710fa369 Utils: Remove LabelPlacement::AtCheckBoxWithoutDummyLabel
This is identical in remaining functionality to AtCheckBox after
the recent layout builder changes (or rather, can be adjusted on
the layouting side by having appropriate empty cells)

Task-number: QTCREATORBUG-29167
Change-Id: Ic357de6fb756acb5926afe1fd361ee4b18b17afd
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2023-05-24 09:53:05 +00:00
David Schulz
ae2690e4b1 Debugger: make default number of array elements configurable
Change-Id: Iad7b653d66f9f87d818f8cce612a82a5fc391b23
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2023-03-07 11:14:54 +00:00
Eike Ziller
6bb756ba1c Debugger actions: Move <p> out of tr()
This is just there at the front to force word-wrap on the tooltips, it
shouldn't be part of the translated text.

Change-Id: I62157aba303071677ca89929f9e56c03ee1f21e7
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2023-02-27 13:38:27 +00:00
Eike Ziller
0dfa542bee Merge remote-tracking branch 'origin/9.0'
Conflicts:
	src/plugins/cppeditor/cppcodestylesettingspage.h

Change-Id: I1aa4e2f9efc6d9cf9f284aef1abf148be9b93a60
2023-01-10 15:44:55 +01:00
Robert Loehning
c2788b0f05 Debugger: Add missing space
Change-Id: Ibb8623392c1b0e759df198fab87a6059558236e9
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-01-10 12:07:05 +00:00
Kai Köhne
56baf8c058 Remove GPL-3.0+ from license identifiers
Since we also license under GPL-3.0 WITH Qt-GPL-exception-1.0,
this applies only to a hypothetical newer version of GPL, that doesn't
exist yet. If such a version emerges, we can still decide to relicense...

While at it, replace (deprecated) GPL-3.0 with more explicit GPL-3.0-only

Change was done by running

  find . -type f -exec perl -pi -e "s/LicenseRef-Qt-Commercial OR GPL-3.0\+ OR GPL-3.0 WITH Qt-GPL-exception-1.0/LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0/g" {} \;

Change-Id: I5097e6ce8d10233993ee30d7e25120e2659eb10b
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2023-01-06 11:15:13 +00:00
hjk
2b97f69796 Debugger: Merge GDB and GDB Extended option pages
Change-Id: I0d4c041cec9ea01e1310f08a4ee87ed8080976bd
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-12-20 13:26:09 +00:00
hjk
c83e66d45f Debugger: Update "known functions" to skip
Fixes: QTCREATORBUG-26821
Change-Id: I12e895034bcf3896caef75f38364cbc9a4484ae5
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-12-20 08:51:14 +00:00
Leena Miettinen
b9e45d7b30 UI text: Fix spacing in multi-line messages
You need an empty space at the end of a line (before quotes),
but no empty space after \n.

Task-number: QTCREATORBUG-28334
Change-Id: I192836cb10b819a359778879c64e6b80aaa059f2
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-10-20 07:02:52 +00:00
Lucie Gérard
a7956df3ca Use SPDX license identifiers
Replace the current license disclaimer in files by
a SPDX-License-Identifier.

Task-number: QTBUG-67283
Change-Id: I708fd1f9f2b73d60f57cc3568646929117825813
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-08-26 12:27:18 +00:00
hjk
9894c6eaf0 Debugger: Convert to Tr::tr
Change-Id: I5d2475c790851c68f9997ac6af72b5eaca58482d
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-07-08 12:32:38 +00:00
Jarek Kobus
2853660a59 Utils: More forward declarations / drop unused headers [D-G]
Round 1 - focus on headers.
For classes with initial in range [D-G].
Try to keep the same separators between different kind of headers.

Change-Id: Id42cd7b3743a816f75cecb6b576c0e37cb057473
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2022-05-25 07:13:52 +00:00
Leena Miettinen
99ceebe695 Debugger: Remove extra words from tooltips
Task-number: QTCREATORBUG-27055
Change-Id: Ic7b447da2de3267ad897cdef0275a2faa4474099
Reviewed-by: hjk <hjk@qt.io>
2022-02-17 12:12:02 +00:00
hjk
579e643f71 Debugger: Increase the default string display limit to 300
This helps especially with paths that often exceed 100 characters
nowadays.

Change-Id: I0a4cd62803178a129e8ced723e5422bf9eb21a08
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-07-05 05:31:05 +00:00
hjk
c8241c12d0 Debugger: Add an option to enable newer gdb's symbol index cache
GDB 8.3+ can automatically save indices of DWARF symbols on disk
to speed up further loading of the same binaries.

Make this option available to the user and switch it on by default.

No harm is done for gdb builds without this feature.

Task-number: QTCREATORBUG-23207
Change-Id: Id0d467eee429a94f1d8e826a883179796732d31e
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-06-11 11:35:01 +00:00
Eike Ziller
863260f1fd Merge remote-tracking branch 'origin/4.15'
Conflicts:
	src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp
	src/plugins/debugger/gdb/gdboptionspage.cpp

Change-Id: I4149e860b6842ea63bff3a7eb9632b7a6c2919d8
2021-03-22 09:52:14 +01:00
hjk
9943146cfe Debugger: Introduce an option to force QT_LOGGING_TO_CONSOLE=1
Debug output is ephemeral in nature, and does not belong into system logs.
It happens, however, on Arch. Let people override this.

Fixes: QTCREATORBUG-25421
Change-Id: I5686e256d76e5a127e3269c5f407daf39bad683f
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-03-10 09:59:02 +00:00
hjk
641604429a Debugger: Use an aspect for the source path mapping
More in line with the other settings.

Change-Id: I86494f1955120cddda7d2f2eec8ba0fdbfd99585
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-03-09 12:40:12 +00:00
hjk
7ccd9d6943 Debugger: Move interpretation on nature of source path mapping to user code
Change f0e2708 introduced the ability to specify source path mapping
containing regular expressions and used this in the elf reader.

To simplify the code, this change here moves the decision which paths
are considered regular expressions to the user. The other users which
are not aware of the special handling of paths starting with '(' in
the elf reader will interpret them as plain string, which appears to
be the right thing.

Change-Id: I31f10ed866fe7582d44307a923b6db10206acc9a
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2021-03-05 10:52:57 +00:00
hjk
ee13340bdc Debugger: Fix a few left-over FIXMEs from the aspectification
We can have action icons now, and there's setDisplayName for
BookStyleCapitalized text to be used in the right places.

Change-Id: I9f2bdcd0cc738d2f8169c669a41d5309ab69ecd5
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-03-05 07:36:39 +00:00
hjk
2152564329 Utils: Remove BaseAspect base from AspectContainer again
Turns out to get into the way more often than it helps, e.g.
'setAutoApply' operated on the base class' m_autoAspect flag
instead of spreading it over the items in the container.

Change-Id: I2711f2a488d1a6c30ec21d3fc481563cec6e55d4
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-03-05 06:01:34 +00:00
hjk
93a5803956 Debugger: Aspectify settings
Change-Id: I527be79965250b82a0928171b17aa93bac9fa2a0
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-03-03 07:39:17 +00:00
Mattias Johansson
2081038953 Add gdb tracepoint support for Linux
Change-Id: Id2e46bae576a730f8c1b64a247aeed12e6d721af
Reviewed-by: hjk <hjk@qt.io>
2021-02-02 07:36:07 +00:00
hjk
79ade10c4a Debugger: Add an option to show simple values as text annotations
Change-Id: I726d8559d7e28abd776ce483d5f670be5af09412
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-01-20 09:45:03 +00:00
hjk
afde217f28 Debugger: Convert a QRegExp use in source path map
Task-number: QTCREATORBUG-24098
Change-Id: I1ee441a60cbf362d38459bcef869e02d7fca9b7e
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-06-10 07:07:23 +00:00
Robert Loehning
ec79f42701 Debugger: Update references to Locals and Expressions
These are two separate views now

Change-Id: I010ad0b937982704310d102d1f4338ec0c29a370
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2020-04-09 09:01:16 +00:00
hjk
06b2023420 Debugger: Remove "IdentifyDebugInfoPackages" feature
This was only ever working with SuSE and GDB, and nobody
ever tests it, nor asks for extension to other setups.

Change-Id: I7b1e3cc8c9f71df4c86b957a79d5afe02eec0758
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-02-25 14:13:01 +00:00
hjk
4bd26c3e4b Debugger: Add ability to hide view columns
Not perfect, e.g. one would probably expect the items to
appear in the context menu of the header views, too, not
just on the main background of the view, but better than
nothing.

Task-number: QTCREATORBUG-23342
Change-Id: Ifdc44dcfd390112faa7b15bb8a51d809e42d7b29
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-12-13 08:07:31 +00:00
hjk
375c3209e7 Debugger: Save a few bytes in DebuggerSettings
Doesn't have to be a QObject.

Change-Id: I9a78d5c8103b74e34c202ad652016cec956298b0
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-12-10 09:01:39 +00:00
hjk
7705fbb701 Debugger: Code cosmetics
Remove uses of foreach, ...

Change-Id: I3997d4dffc63d58c386c70b08063ecb894ef1abb
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
2019-07-26 10:13:27 +00:00
Orgad Shaneh
147a3c27c4 Debugger: Strip QLatin1* where possible
Change-Id: Idcab23875b5dc2ecf55e3303f417b995e2252720
Reviewed-by: hjk <hjk@qt.io>
2018-10-13 16:32:31 +00:00
hjk
36b654567d Debugger: Finalize moving Operate by Instruction to engines
Fixes: QTCREATORBUG-21211
Fixes: QTCREATORBUG-21212
Change-Id: I6c0259052336f2141462157c319abeaec9a1e483
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2018-10-05 12:54:44 +00:00