If a derived test case implements the same private slot as one of
its base classes one of these information got lost as both were
using the same key to store the information at.
Additionally take care of what is possible and sensible when using
QtTest and deriving test cases from others.
Task-number: QTCREATORBUG-17522
Change-Id: I0d2a47c820d5eb002f8bdd851a07a4774e9838f0
Reviewed-by: David Schulz <david.schulz@qt.io>
The Control of the Document "exprDoc" in ResolveExpression::visit(
SimpleNameAST*ast) owns names that are passed on further as part of the
LookupItems. However, the life time of that Document and thus the
Control ends in that function.
Fix by using the appropriate Control object.
Task-number: QTCREATORBUG-16731
Change-Id: I5a7af0a67613fff79f7e07865801585c13bb9b45
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
While I understand that the term "execute" is techically accurate, to
execute has many meanings, not all of them are positive. Execute can
also mean to kill someone. We should try to have more geopolitically
neutral terms in an IDE like QtCreator since it is used all over the world.
Change-Id: Icd6742865afa7a4469764e38eee961d7a96c7d5f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
The move only patter is quite powerful but has the drawback that some
STL algorithms get quite complicated. For short string or const references
should be not difference to a move. So we activate them for all cases.
Change-Id: I959c13796e69c45f31bb0ecbbe64a70d39961e3f
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Comparing file paths can be quite expensive because the start very likely
with the same string. Sorting for size and only compare the string is less
expensive. For many algorithm we need a sort order, so making the less
operator cheaper is quite desirable.
Change-Id: I33e7abc7a65264e80376f445f8b6dcada0625ab9
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
At startup, qtcreator prints an error:
% qtcreator
"The command \"/qmake\" could not be started."
This appears to be because of an off-by-one error in
BuildableHelperLibrary::qtChooserToQmakePath(const QString &path) which
parses the output of a call to "qtchooser -print-env" to extract the
value of the QTTOOLDIR variable. The code attempts to move past the
prefix string to find the end quote, but by moving one too few
characters it finds the starting quote instead, resulting in a zero
length string result.
Change-Id: I74368f10a81eda2286ae735bdc595c0f92e4e665
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Hide core plugin, hello world plugin, and plugins that only provide the
base for other plugins.
Change-Id: I7f4a29a265d760b2a759122be153c7f06bd40bd2
Reviewed-by: hjk <hjk@qt.io>
Plugins can be hidden in the "About Plugins" view by default. Users can
still make them all visible, but the default view can be made less noisy
by hiding plugins that only exist as a base for other plugins.
Plugins that can not run on the current platform are hidden by default
as well.
Change-Id: Iaf2f751c4ea4b3afc605bbbea6611eea042e62c7
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Display "Waiting for data" instead of "No differences" when creating new
instance of an editor for the same document (e.g. by splitting the view)
during document reload.
Change-Id: If254006de3914ad4416c7405874e8cbea57ddd8d
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
The colors don't play very well with the theme support. We want to
switch the colors according to the current theme if the user doesn't
care for them. Not saving the default colors achieves that.
Change-Id: Idafc13e561d33736eb21b26944756291449594b5
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This was not an issue before, because it was not possible in the ui.
Change-Id: I98e0634bdb667dae5a8589c5b1f70c2d87527ae6
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
When an item is selected in the navigator we move the cursor.
Change-Id: Ia6d41e4d7bdf38688cf0cd73f134c349126eb68e
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
We always the select the item that contains the cursor,
so the user can use the property editor.
This even works for non visible items.
Change-Id: I5573e6d9be4b478f764ab6960a3b5742136dcee9
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
When we rename an id we actually trigger a refactoring
operation on the qml text.
Due to recent changes we delay and compress qml changes
from the text side using a 400ms timer.
This is fatal for renaming ids.
When we trigger refactoring operations on the text we have to ensure
the update is done instantly without delay.
To ensure this we use the memeber m_instantQmlTextUpdate.
Change-Id: Ie007ee99f201cd444033c38630d7e7a9f5a673b5
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
* Using smart pointers
* Renaming DummyWidget to TextEditorWidget
* Moving TextEditorWidget to separate file
Change-Id: Idbe0e50f976bf39beac8632d4254d6d9a5afd5b2
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
In case the base class is defined outside of the file with the
derived class we are missing the correct entry point.
Work around this by getting alternative entry points beforehand
and using them if we cannot find a valid entry point.
Task-number: QTCREATORBUG-17522
Change-Id: I07ef87b2fcdac4f78240da9e57eaa518ff0f4d20
Reviewed-by: David Schulz <david.schulz@qt.io>
Preparation for later detection and displaying inherited functions
for Qt tests.
Task-number: QTCREATORBUG-17522
Change-Id: I2af1f758a837049ef676840b03f9cd73a2cb9873
Reviewed-by: David Schulz <david.schulz@qt.io>
* Icons are not the final ones.
* I fixed a couple of glitches and cleaned up the code.
- Action for copy and paste/delete were not properly updated
- Delete had no icon
- Using std::function for action predicates and operations
- The context menu has no icons. This way we avoid having to define 2
icons.
Change-Id: Ic23cbc78ba299c19e07e8de775eb813aae55db9b
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
We made a implicit const cast. Like it is said C-style can be harmful
because they are not const safe etc..
Change-Id: I6b41c10c18d37af4caf58574359fdce7d4a420ca
Reviewed-by: hjk <hjk@qt.io>
This makes the code a bit simpler, at the cost of the factories not
having access to the fully specialized RunConfiguration anymore. This
is apparently never used and the factories can still use the Id to decide
what to do if they really need to.
Change-Id: I7d94f85e984ac87e62c6d341c1038e1538aa15df
Reviewed-by: hjk <hjk@qt.io>
The check is already done by numberOfChildren.
Change-Id: I2dfad4e283546acb87d17ec63e47c43a0b0d467d
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This has the nice property of dropping trailing zeroes and allows us
to simplify the code a bit.
Change-Id: I4ac98743960ba552c8e3e72e02f594ba910ab81b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
The way to extract them from Qt is somewhat funny, but this leads to
clearer messages in the debugger log and other places.
Change-Id: Ib458d5ec796a2e69a6543d405593be8e54016946
Task-number: QTCREATORBUG-17492
Reviewed-by: hjk <hjk@qt.io>