Commit Graph

61421 Commits

Author SHA1 Message Date
Eike Ziller
9c2568b8e8 QtVersionManager: Small code cleanup
No QLatin1String, foreach -> for, a few other things.

Change-Id: I80aaff6855e4a38c29d43db917fc37eb975a6de0
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2019-10-18 12:08:17 +00:00
Eike Ziller
91d785a123 Help: Unregister documentation when unregistering Qt versions
While doing we must take care that we do not remove documentation that
is used by other, still registered Qt versions (since for example
desktop & mobile Qt versions share the same documentation).

Fixes: QTCREATORBUG-16631
Change-Id: I77a38c89698cb3050d4a0a6963ab12d3238e2068
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
2019-10-18 12:08:08 +00:00
Christian Kandeler
ab355bb157 QbsProjectManager: Fix document filtering
This was broken in 929083e7b6.

Change-Id: I5341a90bf8067d93485a75827309840b5212d2b4
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-10-18 12:06:24 +00:00
David Schulz
383ea95889 Debugger: Avoid recreation of breakpoint markers
Change-Id: Ie3b160a7b7137257b2028d03878700675142102f
Reviewed-by: hjk <hjk@qt.io>
2019-10-18 12:01:06 +00:00
Christian Stenger
89dbb44fcb Debugger: Prohibit multi selection on debugger presets
To avoid confusion regarding context menu items limit the
selection mode to single selection.

Change-Id: I220d97fee65180a497f21e5921f832076235acb5
Reviewed-by: hjk <hjk@qt.io>
2019-10-18 11:29:27 +00:00
Christian Stenger
482c53d11a Debugger: Fix display of stack
When switching between interrupted and continue while
debugging the stack was not updated when the engine
states it is running again, but immediately did so
when clicking into the stack view.
Fix by explicitly updating the stack when the engine
reports it is running.

Change-Id: Ie8cb445e87fe6e45f9ae86b8ee2eec386be78a5c
Reviewed-by: hjk <hjk@qt.io>
2019-10-18 11:29:18 +00:00
Alessandro Portale
b5942847e2 McuSupport: Set ARM debugger in MCU kits
... create one if necessary.

Change-Id: I0b89d54429834db7b76be0a76d260152efd1ad03
Reviewed-by: hjk <hjk@qt.io>
2019-10-18 10:56:25 +00:00
Denis Shienkov
f723531f8f BareMetal: Handle details preceding it message in the KEIL parser
We need to handle a multi-line error messages from the KEIL A51
assembler:

 http://www.keil.com/support/man/docs/a51/a51_er_nonfatalerror.htm

This assembler produces an error messages in the form like:

 00B0                 114         ljmp    usb_stub_isr     ; (B0) GPIF operation complete.
 *** _____________________________________^
 *** ERROR #A45 IN 114 (autovec_keil.a51, LINE 114): UNDEFINED SYMBOL
 00B4                 116         ljmp    usb_stub_isr     ; (B4) GPIF waveform.
 *** _____________________________________^
 *** ERROR #A45 IN 116 (autovec_keil.a51, LINE 116): UNDEFINED SYMBOL

where the details places before than a main message text.

This patch handles this error messages, but with an one limitation in that a details
should start with a four hexadecimal letters (in a common case it can not
contains that letters at all).

Change-Id: I0c9bf7ab72e1aef32498af5a1ef29c9221c185d5
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-10-18 09:45:34 +00:00
Laurent Montel
36a422e7be Core: Remove unused forward declaration
Change-Id: Ic469d0079eeb8e6729ef1f58b2b8b4f246932f49
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2019-10-18 08:01:45 +00:00
Laurent Montel
3decb2fc58 texteditor: Remove unused forward declaration
Change-Id: I5edbbbecef472230a81827aa0206533918d97230
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2019-10-18 07:47:10 +00:00
David Schulz
8b04019270 Python: Fix opening document in wrong pyls
The document was always opened in the first of the configured python
language servers.

Change-Id: If33cb4a08884b93047016be1d8cf5c27ea7950d9
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-10-18 05:23:40 +00:00
David Schulz
28c3f0c31e Python: Add info bar entry to enable pyls
Show an editor info bar entry displaying that the language server for
the current python is disabled and a button to quickly enable the pyls.

Change-Id: I3adb2e7cbfb1a32e35413b0b06dfbe66a0b214af
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-10-18 05:23:29 +00:00
David Schulz
c8ccfea225 Python: Switch pyls on interpreter change
Change-Id: I458b635986a55003a1e7254e27e2df9667704273
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-10-18 05:23:10 +00:00
Laurent Montel
b9b2d5ef5d Remove extra setMargin(..) Some lines after we can see a
setContentsMargins

Change-Id: I376129566c7df466a3413f001b42c670ee7c7022
Reviewed-by: hjk <hjk@qt.io>
2019-10-17 21:11:22 +00:00
Alessandro Portale
5b2ca680a7 McuSupport: add /bin path of "stm32CubeProgrammer" to Path
... and make the detection a bit more explicit.

Change-Id: I8dc4f6dbdcc44e4e3cd56e332dd6d5ca6fa12021
Reviewed-by: hjk <hjk@qt.io>
2019-10-17 16:53:30 +00:00
Alessandro Portale
17354cebad McuSupport: Allow PackageOptions to return different path than selected one
... by adding a relativePathModifier property

Change-Id: I5e4a13ffb43566f7ed221dfc926731abc0460853
Reviewed-by: hjk <hjk@qt.io>
2019-10-17 16:53:15 +00:00
David Schulz
fa8ff4108f Debugger: further untangle of breakpoint item and marker
Change-Id: I9331912c1b53a0110479f46ef1e576676441ab75
Reviewed-by: hjk <hjk@qt.io>
2019-10-17 13:19:10 +00:00
Christian Kandeler
139196b93c Fix restoring cmake run configurations
Amends 5bcd59c94f.

Fixes: QTCREATORBUG-22932
Change-Id: I46b42f0e15eaf1fe4bd2f1ea4a87286ee68cfee8
Reviewed-by: hjk <hjk@qt.io>
v4.11.0-beta1
2019-10-17 13:11:09 +00:00
David Schulz
cc1399a4b6 Debugger: Fix crash after breakpoint marker drag&drop
The updateMarker function deletes the marker of the global breakpoint so
don't call that function from the marker.

Fixes: QTCREATORBUG-23107
Change-Id: I377608f1a08b61451be1fc0be5bc15252252a4a7
Reviewed-by: hjk <hjk@qt.io>
2019-10-17 13:04:20 +00:00
David Schulz
bfc65cee98 LanguageClient: create TextMarks only for active clients
Fixes that marks from all running clients are shown after splitting the
editor.

Change-Id: Ia76a084e5b133d5f7205ac79f9584b211d73b501
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-10-17 08:04:47 +00:00
Thomas Hartmann
0942f2e1ec QmlDesigner: Keep qml2puppet alive, if local socket is not processed
In case Qt Creator did not process the events from local socket,
e.g. when a modal dialog was executed, we did kill the qml2puppet.

In this patch we first check if there are really no pending data
anymore. If there was pending data we restart the timers for each qml2puppet.

Change-Id: If19161636ee05835e01f082dd992e49f39d366bd
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2019-10-17 08:03:47 +00:00
Thomas Hartmann
0bde9b14cb QmlDesigner: Fix warning
Change-Id: I6dd31b411f636df013495e15d03d47997cb24705
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-10-17 08:03:29 +00:00
Christian Stenger
418c7d108a AutoTest: Fix handling of parameterized boost tests
Setting the parameterized flag after the test case may
have been added to the found tests is useless.
Do it as early as possible to take it into account
when gathering information for location and type.

Beside this the filter for parameterized boost tests
had been wrong which in turn led to not executing
them at all.

Change-Id: I1a4345b2a751c79cc4fc6df8e201e9606c961aaf
Reviewed-by: David Schulz <david.schulz@qt.io>
2019-10-17 05:53:55 +00:00
Christian Stenger
3e56a2b81e AutoTest: Add some logging to test runner
This may help for issues which are not easily
reproducible.

Change-Id: If8063c51f69bd24f12afdcdd0648790f1a0668da
Reviewed-by: David Schulz <david.schulz@qt.io>
2019-10-17 04:41:09 +00:00
Christian Kandeler
f5e25c50db QbsProjectManager: Fix build
BuildStepList: :allOfType() was newly used in 4.10 and removed in 4.11.
Change-Id: I3129f4a8aa411547e018c88eec02df58f56285f9
Reviewed-by: hjk <hjk@qt.io>
2019-10-16 15:59:38 +00:00
Christian Kandeler
f7808af946 Update qbs submodule
To HEAD of 1.14 branch.

Change-Id: I3106078a808ddddc0211d46e871c66383746aec3
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2019-10-16 15:40:12 +00:00
Eike Ziller
d56df8da18 More change log for 4.11
Change-Id: I0069a74715a77d91a8f931e2efb62f6e67d299ee
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-10-16 14:40:51 +00:00
Thomas Hartmann
e2e18ff625 QmlDesigner: Implement combobox to disable 3d editor
The combobox is in the toolbar of the form editor.
For pure 2D scenes the combobox is disabled.

Since auxiliaryData is persistent, this setting is
also persistent.

Change-Id: I1bf1d9acba7320b8503311ca785410df27d650db
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2019-10-16 14:10:35 +00:00
The Qt Project
3f5af7545d Merge "Merge remote-tracking branch 'origin/4.10' into 4.11" into 4.11 2019-10-16 13:35:04 +00:00
Eike Ziller
fcb12a275f Merge remote-tracking branch 'origin/4.10' into 4.11
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri
	src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp
	src/plugins/projectexplorer/deploymentdata.cpp
	src/plugins/projectexplorer/msvctoolchain.cpp

Change-Id: I64c304fc71435629a6a0060a9df71e8952699508
2019-10-16 15:27:22 +02:00
hjk
50deb50069 Debugger: Introduce a checkbox
... to propagate breakpoint changes from a running debugger
back to the original preset breakpoint.

This is currently unused as some changes are already propagated,
and some not, so a bit more diligence is needed.

For now it is there to have the new label string in safely
before string freeze.

Change-Id: I8ee4d07bab5a4f66e59bf992ebfd81c56fdb3ecf
Reviewed-by: David Schulz <david.schulz@qt.io>
2019-10-16 12:46:48 +00:00
Tobias Hunger
a28f57abb9 CMake BuildSystem: Fix visibility handling for PCH
Change-Id: Ib91f03cf4f13ddefe365cf1e59cc083d700f0672
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2019-10-16 08:44:47 +00:00
Denis Shienkov
1e54d45139 BareMetal: Minimize nested blocks of code in KEIL parser
Change-Id: I420eb67683413730f67fce9dd103487380296548
Reviewed-by: hjk <hjk@qt.io>
2019-10-16 08:31:40 +00:00
Michael Weghorn
e2e96cab52 GDB: Handle 'pretty_printer.to_string()' returning None
The documentation for the GDB pretty printer function
'pretty_printer.to_string' says [1]:

> [...]
> Finally, if this method returns None then no further
> operations are peformed in this method and nothing is printed.
> [...]

Therefore, skip this part if the printer's 'to_string' method returns
'None' and only fall back to assuming LazyString otherwise.

This e.g. fixes the std::pair pretty printer (for gcc-9 libstdc++6) for
which "<not accessible>" was shown previously in the debugger's
locals/expression view. Now it shows the object's address and allows
expansion to see the values for the 'first' and 'second' members.

[1] https://sourceware.org/gdb/onlinedocs/gdb/Pretty-Printing-API.html

Change-Id: I33b1af82f731c347314af76c533b096b8a5afe21
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2019-10-16 08:23:30 +00:00
Christian Kandeler
e90a48e639 ProjectExplorer: Fix some problems with plugin unloading
It was not possible to return false from
ProjectExplorerPlugin::initialize() without triggering crashes.

Change-Id: I96b2f80c835e69769f64f9b9c61f473e9ff88623
Reviewed-by: hjk <hjk@qt.io>
2019-10-16 08:16:23 +00:00
Thomas Hartmann
42fba8ee3b QmlDesigner: Only show 3D edit view if enabled
QMLDESIGNER_QUICK3D_MODE controls if the edit mode should be shown.

Change-Id: I4522dc0887486f329fdb140079e6d644f601c77f
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2019-10-16 07:49:28 +00:00
Thomas Hartmann
84c9f669ca QmlDesigner: Add missing const
Before this patch one could write node.auxiliaryData().setValue(), which
did nothing.

Change-Id: Ib8c30bf5e689f3702d52c8122081d64e7c55a6c7
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2019-10-16 07:49:16 +00:00
Eike Ziller
2c2bca924a Help: Remove functionality of unregistering namespace from public API
Only used by the options page and generally needs knowledge of help
namespaces, which requires querying QtHelp.

Change-Id: Id8eda86e5b373ab3214e8eff6e2e3ce92c1239ba
Reviewed-by: David Schulz <david.schulz@qt.io>
2019-10-16 07:19:18 +00:00
Laurent Montel
f467badc2f Port setMargins to setContentsMargins
Change-Id: Ie6b3f3e4dddbbf4bcc7ea7561ec348ff2c666907
Reviewed-by: hjk <hjk@qt.io>
2019-10-16 05:02:57 +00:00
Christian Stenger
d5320bb407 QmlDesigner: Fix compile for old gcc
Amends 1278c01c1c.

Change-Id: I85e4ac570649cdeb3a1f20c867371652f553d80a
Reviewed-by: David Schulz <david.schulz@qt.io>
2019-10-16 04:55:42 +00:00
Alexis Murzeau
c7cb7672f0 AbiWidget: Fix custom abi comboboxes' enabled state when mainComboBox is changed
When the mainComboBox is updated and its current selection changed via
setAbis, the custom ABI comboboxes weren't updated accordingly.

This is because in setAbis when doing d->m_abi->setCurrentIndex(), the
m_ignoreChanges guard is held which inhibit mainComboBoxChanged
function from doing anything for performance reasons. But the effect of
this is that custom ABI comboboxes were left in their previous state
(enabled or disabled).

This commit ensures the custom ABI comboboxes are updated according to
the new selected item in the mainComboBox at the end of setAbis
function.

Change-Id: Iedabde412a42985697d2cba33ddb6c154f10a68f
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-10-15 19:37:10 +00:00
Miikka Heikkinen
062a0a9dbd Implement support for UIA/UIP importing
Each different type of import file gets its own options tab in import
dialog. Item library icon for each imported component is generated
at import time depending on component root element type.

Change-Id: I95824b43d251d02d8e032b6a3e45a18d1d509b80
Fixes: QDS-1152
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-10-15 13:19:16 +00:00
Aleksei German
1278c01c1c QmlDesigner Tool bar for Binding Editor
Task: QDS-843
Change-Id: I8faa5816067ee8de91fd225d856d6bac2a6eda58
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-10-15 13:10:30 +00:00
Thomas Hartmann
18ff97581a QmlDesigner: Show 3D scene with multiple objects
A View3D can have multiple root nodes, which are
automatically aggregated in a single root node.

Change-Id: I3ad11eff5a8beadbd53f0fc8cdcaecd78772768b
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2019-10-15 13:08:57 +00:00
Thomas Hartmann
db3dc34a12 QmlDesigner: Introduce QMLDESIGNER_QUICK3D_MODE
We should enable the 3d edit mode only, if there is
QtQuick3D import. Additionally there should also be an option in the UI.

Change-Id: I2010f2cdd6546c63a2263b8ee02480d4f13177c2
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2019-10-15 12:43:27 +00:00
Thomas Hartmann
41a7cd15be QmlDesigner: Fix assert
TimelineWidget::invalidateTimelineDuration() is called
by TimelineView::instancePropertyChanged(), which is a callback
from the model.

Those callbacks are not supposed to mutate the model and write
access to the model will trigger an assert.
The method setCurrentFrame() calls ModelNode::setAuxiliaryData().
The reasoning for this behavior is to avoid events casades from
the get go and to avoid that a view has a side effect on
the operation of another view.
This way we also avoid any circular information flow in the application.

In theory a view should never act as a 'gatekeeper' like in this case.
The simple 'hack' for trivial cases is to use a timer.
Generally we try to move the logic into the model in such cases.

Change-Id: I0b46bb38ee0a9603d4617f1a13d8cfcd2e7378b8
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2019-10-15 09:08:13 +00:00
Christian Kandeler
c13b20f160 Target setup page: Do not dereference potentially invalid Target pointer
Fixes: QTCREATORBUG-23075
Change-Id: I60d332b3ff18cf7c83e63cb87730b44ee2a47502
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-10-15 09:03:45 +00:00
Christian Stenger
982344a799 Dumper: Remove old workaround
This part had been added for lldb provided by Xcode 8.
Even LLDB 3.10 is rather old, so probably no more necessary.

Change-Id: I823ee15869cc60cb8504fa6969758b5f7c3a74ab
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2019-10-15 04:42:06 +00:00
Thomas Hartmann
5b325b1748 QmlDesigner: Do not try to create objects with invalid version
Change-Id: I15eb8cf006bf8a58eaba4140f062fbf14e417f47
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-10-14 18:29:20 +00:00
Thomas Hartmann
9a6157becd QmlDesigner: Fix crash
There is no guarantee that the timeline is valid at this point.

Change-Id: I48a31b1f4c305c4764d8bebee9de16e51aec4a47
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-10-14 18:29:01 +00:00