Commit Graph

57165 Commits

Author SHA1 Message Date
Eike Ziller
c1bfc9d0a4 Merge "Merge remote-tracking branch 'origin/4.6'" 2018-04-26 12:28:00 +00:00
Ulf Hermann
e0c4da30a6 Valgrind: Add some missing override
Change-Id: I217be7cb4dcdaf10824ed123db3aafc9dbc99671
Reviewed-by: hjk <hjk@qt.io>
2018-04-26 12:00:55 +00:00
Morten Johan Sørvig
d87a1e7a0e Make the locator popup track the window position
Commit fe7ec249 changed the geometry update logic such
that the popup geometry is updated after the popup
becomes visible (and also on LayoutRequest), in order
to to get a correct sizeHint from the (now) populated
popup.

However, this makes the dialog show at the previous
position if the Qt Creator window has been moved and
then jump to the correct position when the zero-timer
fires.

Make both cases work by updating the geometry immediately
on show, and then with a delay on LayoutRequest.

Change-Id: I5134347da58676a94bcc1fac3cf9b555662adc70
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-04-26 10:40:49 +00:00
Ivan Donchevskii
7b2774dea1 Clang: Use current TranslationUnit follow symbol based on clang code model
It might be quite a safe replacement which can fix builtin
code model issues.

If clang code model fails to follow symbol or does not find
a definition when it's required we fall back to the built-in
code model to proceed with project-wide follow symbol.

To make it almost a full replacement tweak include paths underline
on cursor hover to match what we have in built-in code model.

SIGNAL/SLOTS macros are not yet supported but can be handled
in follow up patch.

Task-number: QTCREATORBUG-19477
Change-Id: Id1611511d661a8aaf3e93502b4e03e1792c7c1d3
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2018-04-26 10:27:42 +00:00
Eike Ziller
62050437c3 Merge remote-tracking branch 'origin/4.6'
Conflicts:
	src/plugins/cmakeprojectmanager/cmakerunconfiguration.cpp

Change-Id: Ia723411f4b5c9c90f9786223ac6a7346d7ab9b99
2018-04-26 10:16:32 +02:00
hjk
388713df12 ProjectExplorer: Make BaseStringAspect signal changes
Useful in boot2qt runconfig widgets.

Change-Id: If5557cf3e444d5d9fe0552b5917f0dafab05e423
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2018-04-26 07:25:51 +00:00
hjk
366be94ad9 Pass id to RunConfiguration constructor
It's what the base class requires, and opens the possibility to
have several factories creating the same type of run configuration.

Also move ios, winrt and android factories closer to their products,
it's the predominant pattern nowadays.

Change-Id: Iad48152f02a248d22cb18dd435a2fc34d73c7077
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2018-04-25 15:06:11 +00:00
Tobias Hunger
4146a98599 PathChooser: Remove wrong comments
Change-Id: I2cd240ff79747dc8e3bac164beb3353960d0dc1e
Reviewed-by: hjk <hjk@qt.io>
2018-04-25 14:19:49 +00:00
hjk
d2a44be0ff RemoteLinux: Fix custom runconfig executable path chooser
Change-Id: I9725151eb8496c9af58b9ae9f22de3aa2fd11165
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2018-04-25 13:57:30 +00:00
Leena Miettinen
b252043d44 Doc: Fix the path to the Kits options
Kits is now a top-level category in Options, with tabs for
Kits, Qt Versions, Compilers, Debuggers, Qbs, and CMake.

Change-Id: I7f3b37550d47dadb76cb3454cdd4bd0b115eb986
Reviewed-by: hjk <hjk@qt.io>
2018-04-25 12:59:21 +00:00
Tobias Hunger
786cb9fb6f ProjectExplorer: Improve parsing of MSVC error messages
MSVC has a good structure to its warnings/errors which enables
latching on to non-english output in a limited fashion.

Do that when possible, even though creator will force output
to english anyway starting with Qt Creator 4.7.

Task-number: QTCREATORBUG-20297
Change-Id: If8f38e8eb4fa472413d698f0c43ce79469cd5d9b
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2018-04-25 09:57:15 +00:00
Tobias Hunger
a14de75217 CMake: Use better value to initialize executable of RunConfiguration
Task-number: QTCREATORBUG-19792
Change-Id: Iacf72c71c65ffcfb3a46ca985424806a1d75f1cf
Reviewed-by: hjk <hjk@qt.io>
2018-04-25 09:51:26 +00:00
Eike Ziller
77de2c51d5 Add changes file for 4.7.0
Change-Id: I906b9489548fd4a7ae375747ab591c64fbdaf754
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2018-04-25 08:19:22 +00:00
Eike Ziller
a8aa4bbb31 More improvements of text editor tool bar
Make line/column label always visible, and move context drop down to the
right, so it vanishes first. Reduce the minimum size and stretch of the
outline drop down, so the context drop down doesn't vanish too early
either.

Task-number: QTCREATORBUG-15218
Task-number: QTCREATORBUG-19386
Change-Id: Ie2ced1cb62a27a0129438f5605d5711bfac50cd0
Reviewed-by: David Schulz <david.schulz@qt.io>
2018-04-25 07:10:52 +00:00
hjk
a09bc8d7fa ProjectExplorer: Add destructors to some run config aspects
BaseStringAspect and ExecutableAspects were leaking their extras.

Change-Id: I6dc2a66e4f3e9910f1c460d40056d68cf12b9774
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2018-04-25 06:41:53 +00:00
hjk
63eca96f99 ProjectExplorer: Fix saving of modifiable ExecutableAspects
The settings key decides on saving, the underlying BaseStringAspect
needs to know it.

This only affected RemoteLinuxCustomRunConfig so far.

Change-Id: Ic4af9fa752b0b1ae107779d88978495e511cf98c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2018-04-25 05:43:36 +00:00
Alessandro Portale
4317e350f5 Update Options dialog icons
A new set of scalable and themable icons with unified look as provided
by Diana.

Task-number: QTCREATORBUG-20325
Change-Id: I68498b034e9e43fbb61511a38d9c7fc0003ab076
Reviewed-by: hjk <hjk@qt.io>
2018-04-24 14:43:35 +00:00
Ivan Donchevskii
b5ee2773a0 CppEditor: Use QPointer to 'this' for refactoringEngine calls
RefactoringEngine does not depend on CppEditorWidget
therefore we should check that the pointer is still valid
in the lambda calls.
Hopefully fixes QTCREATORBUG-20111 though this fix does not
directly address the stack trace.

Task-number: QTCREATORBUG-20111
Change-Id: I37f996de60cebe61e290fe181d75fb266f93c1c1
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2018-04-24 14:31:45 +00:00
hjk
76312d7786 ProjectExplorer: Make string based aspect widgets more flexible
By making some of the underlying PathChooser etc. functions
accessible.

Change-Id: Iaea1543af8b6711bd7594a029e0612d6c6fc4b4b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2018-04-24 14:06:06 +00:00
hjk
f8937daf71 ProjectExplorer: Make "Manage..." kits button work again
When configuring a newly opened or created project you are
able to press a 'Manage...' button that brings up the
options page of the kits. Was broken with the rework done
on the global object pool.

Change-Id: I87d91351c5769655c1192431a53784de1bca77aa
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2018-04-24 13:42:30 +00:00
Christian Stenger
ef9c5e47bb Core: Turn soft assert into if clause
It is perfectly legal to have a plugin disabled that was
enabled before. If the respective plugin has an output
pane the respective setting had been stored and the pane
can not be restored when the plugin is not loaded.

Change-Id: I25910c44dba83faf3c52ae836f2e83d0e69236d5
Reviewed-by: hjk <hjk@qt.io>
2018-04-24 12:10:17 +00:00
Ivan Donchevskii
fd42415c05 Clang: Enable more Clang-Tidy checks
Some of the checks were activated in the Clang-Tidy
standalone application but were not in the plugin.

Change-Id: I7cb8ebc3b155b46c3f870b164790f074f6b29fb8
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2018-04-24 10:36:13 +00:00
Ivan Donchevskii
5df7c12c5e Clang: Fix mingw libclang build
Mingw miscompiles one of the static variables
in Clang-Tidy which results in clang driver
wrong return codes. Making it a local variable
solves the issue.

Change-Id: Ic834419e30bd45bbe728ffeb46181692c802fa06
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2018-04-24 10:35:40 +00:00
Ivan Donchevskii
feac99c9ac Clang: Fix possible future watcher issues in local renaming
Use the same code pattern as in asynchronous branch of
CppUseSelectionsUpdater::update.

Change-Id: I7c06b883a5abe1324cb63fa410247ef7f50321ae
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2018-04-24 10:06:17 +00:00
Robert Loehning
da47a92611 Squish: Update Options dialog
Change-Id: Id0133ac1a52ae46add284252fe024075a79575c8
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2018-04-24 08:56:14 +00:00
Nikolai Kosjar
787f0498ca Clang: Fix wrong QTC_ASSERTS
If the last editor is closed, "editor" becomes a nullptr, which is valid
value in this case.

Change-Id: Id5f92cb4367199d782e33acc37077103e9986644
Reviewed-by: David Schulz <david.schulz@qt.io>
2018-04-24 08:16:53 +00:00
Alessandro Portale
3d42f98017 Core: Make IOptionsPageProvider::categoryIcon a Utils::Icon
...just like it is with IOptionsPage

Change-Id: I033891f1a908be24b05103cb13a4ef628994d2a7
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-04-24 07:53:34 +00:00
Eike Ziller
ce84f64d1b TextEditor: Fix some static analyzer warnings
Use nullptr, do explicit double/float/int conversions, use constFirst.

Change-Id: I269718ade5c54ac613357f59c774e2f47e18a9df
Reviewed-by: David Schulz <david.schulz@qt.io>
2018-04-24 07:46:49 +00:00
Alessandro Portale
98ab9e9d6b Core: Remove unused category_locator.png
Change-Id: I1115694c9f7994eab3b0b75450ed672ac2a04574
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-04-24 07:46:06 +00:00
Eike Ziller
f0bc650768 Change build button in mode bar to stop button while building
Task-number: QTCREATORBUG-20155
Change-Id: Id2c2985b2cb14a0bd4314f0bcfe8574c75aa299c
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2018-04-24 07:42:14 +00:00
hjk
def04e88a2 Simplify runconfiguration aspect addTo... interface
The parent widget is always given by the layout, no need to pass
it as separate parameter.

Change-Id: I9e7ed3a89eb63b78a549471d839060131737ff78
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2018-04-24 07:26:22 +00:00
hjk
d6af336a7e RemoteLinux/Debugger: Use SymbolFileAspect
This is/will be optionally available independent of the concrete
run configuration type, so use it.

Change-Id: Ife0e906ff47e916d2f7a9df73af8cdd83635cd65
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2018-04-24 06:00:36 +00:00
hjk
22428af750 Utils: Use free functions in OsSpecificAspects
Generates a bit less code in debug mode and is easier to read IMNSHO.

Change-Id: Ib9c0b9a0c058327facff16600a7014207167b050
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-04-24 05:59:57 +00:00
hjk
58f0a7a3dd Utils: Introduce a OsSpecificAspect::pathWithNativeSeparators(QString)
... and use it in the ExecutableAspect implementation.

Change-Id: I0d242d9969323e495e16997e1ca46cfc10e8eb4b
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2018-04-24 05:59:26 +00:00
hjk
d269e9a492 ProjectExplorer: Factor out some common code in runconfigurations
DesktopQmake, CMake, Qbs, Nim, RemoteLinux and Qnx now have a common
understanding what should be in a runnable and how their
configuration widget should be set up. So move them over to
using shared code, too.

Several others runconfigs only lack a one or two more aspects
to follow suit in later patches.

Change-Id: Ia862c95c97d63bd0a0f2dc303435775a2fc530d3
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2018-04-24 05:58:48 +00:00
Robert Loehning
6278212346 Clang: Initialize members
Change-Id: I251c49a22f54e1d3cc8a9c0b1e6c30f2926d90a6
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
2018-04-23 15:54:53 +00:00
Robert Loehning
ef56d05069 QmlProfiler: Remove unused member
Change-Id: Ia8455ab851f50c9eb1f87ddf0b40c8d3d4e0318f
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2018-04-23 15:01:37 +00:00
Ulf Hermann
3673ebe387 Fix memory usage model details
Use the same format for all memory size strings, don't pack numbers into
QString, and adapt the test.

Change-Id: I13de737992fb64fadc61c3e3243ff83c14446e99
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2018-04-23 14:42:38 +00:00
Ulf Hermann
59e641f8e6 QmlProfiler: Fix flame graph view test
Clicking in an empty area closes the details window now.

Change-Id: I7108b6339021707097bd2a852230fa60473d18e5
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2018-04-23 14:20:35 +00:00
Ulf Hermann
1770c2ffe2 Remove TimelineTraceManager::State
This is redundant, now that we have registerFeatures().

Change-Id: Ia56c28b8892ab6da694570fe4b9ea5c96fe194f1
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2018-04-23 14:20:16 +00:00
Robert Loehning
de006655e3 Nim: Avoid deref of null_ptr
Change-Id: I1ab95285d6a96844d894dc2fa5abe8bbcb1944d4
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2018-04-23 14:08:58 +00:00
Christian Kandeler
28062f0c68 Update qbs submodule
To HEAD of 1.11 branch.

Change-Id: I2dbca6044dc421cbdfcfff1e1acb79699e39a39c
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2018-04-23 13:06:59 +00:00
Robert Loehning
de0b077443 EditorToolBar: Replace another optional::value to not throw
...to calm down static checker which
fears throwing exceptions into dtors

Change-Id: Ifc4fbbf9ea03d35e7a80188538efbcfb1b92c729
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-04-23 12:38:33 +00:00
hjk
afef329c10 ImageView: Suppress a warning if SVG is not available
Change-Id: Ic61c61ec9f9c80c930c361e71c4d4b374aa39906
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2018-04-23 11:45:04 +00:00
Eike Ziller
d1ec4c1204 Clean up options page category display name and icon set up
In cases where plugins extend an existing settings category of a plugin
that they depend on anyhow, they do not need to specify the translated
display name and icon for that category.
Some options pages were already not setting the icon, but still the
translated name, which makes even less sense.
Clean up this mess, only setting display name and icon if that is
necessary.

Change-Id: I8bc9d0c51b11d48f1d847337838704d663e70b45
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2018-04-23 11:12:26 +00:00
hjk
4b9945c329 ProjectExplorer: Rework executable display handling in runconfigs
The basic idea is to provide an easy-to-configure reusable
building block to provide an "Executable" in a run configuration.

This patch here extracts some generic from the previous
ExecutableAspect into a BaseStringAspect and bases the new
ExecutableAspect implementation on it. It also adds the
the ability to make it editable or to manually override an
executable, and adds a SymbolFile aspect for the accompanying
sources of debug information.

Use in RemoteLinux and Qnx for starters and demonstration purposes.
In the end the Qnx runconfiguration widget does not depend on the
RemoteLinux implementation anymore by replacing the previous
code-sharing-by-inheritance by direct (and less) code.

Change-Id: I91b55820455256a8526e39458364b6cb74e63cd7
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2018-04-23 10:34:08 +00:00
Ivan Donchevskii
ef660d8bd0 Clang: Simplify name and type in FullTokenInfo for functions
Take Cursor displayName instead of token name.
From now on type spelling can serve the return type
role for functions because together with 'token' member
they form the full type.

Change-Id: Ic8eec533f4a11458f99f070b6a6aa80714097b4d
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2018-04-23 07:59:40 +00:00
Christian Stenger
fccff5982f AutoTest: Reflect fatals on badge as well
So far only fails and unexpected passes had been counted
as issues for the badge number. If there are only passes
but at least one fatal you did not notice this until you
have opened the results pane.

Change-Id: I48e93850e56a5bc77e4a9ba2c35e3653ec24b19e
Reviewed-by: David Schulz <david.schulz@qt.io>
2018-04-23 06:35:07 +00:00
Christian Stenger
8c8313094f AutoTest: Make message translatable
Change-Id: I987fc5da3155040a4580546ac2eca1257d229d5b
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
2018-04-23 06:34:59 +00:00
Eike Ziller
2dff9a03ac Improve behavior of cpp editor tool bar
The parse context drop down was taking a content based, fixed amount of
space in the editor tool bar, without being shrinkable.

That was especially bad if you have a long project / target name. When
working with a small window / split, the outline drop down would be
dropped from the tool bar.

This patch makes the parse context drop down shrinkable (with a small
minimum size), and gives the outline drop down a slightly higher
priority for getting tool bar space.

Task-number: QTCREATORBUG-19386
Change-Id: I87e3ee2e411a43b1f398ffd24fe5608e4df02af6
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2018-04-20 14:15:52 +00:00