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>
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>
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>
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>
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>
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>
BaseStringAspect and ExecutableAspects were leaking their extras.
Change-Id: I6dc2a66e4f3e9910f1c460d40056d68cf12b9774
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
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>
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>
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>
By making some of the underlying PathChooser etc. functions
accessible.
Change-Id: Iaea1543af8b6711bd7594a029e0612d6c6fc4b4b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
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>
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>
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>
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>
Use the same code pattern as in asynchronous branch of
CppUseSelectionsUpdater::update.
Change-Id: I7c06b883a5abe1324cb63fa410247ef7f50321ae
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
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>
Use nullptr, do explicit double/float/int conversions, use constFirst.
Change-Id: I269718ade5c54ac613357f59c774e2f47e18a9df
Reviewed-by: David Schulz <david.schulz@qt.io>
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>
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>
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>
... and use it in the ExecutableAspect implementation.
Change-Id: I0d242d9969323e495e16997e1ca46cfc10e8eb4b
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
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>
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>
Clicking in an empty area closes the details window now.
Change-Id: I7108b6339021707097bd2a852230fa60473d18e5
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This is redundant, now that we have registerFeatures().
Change-Id: Ia56c28b8892ab6da694570fe4b9ea5c96fe194f1
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
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>
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>
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>
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>
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>