This was implemented for QAbstractItemModel based classes, but
forgotten for QAbstractListModel and QAbstractTableModel based
classes.
Change-Id: I807f445e48d2906580abd0a65bb794d6e766c1a7
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
... with "Find Usages", as we do in the built-in code model.
Note 1: This is very slow, so it's for now only enabled if the
search results come from a small number of files.
Possible ways of speeding up the operation
to be investigated.
Note 2: All test cases from the old code model also pass here,
but checking with non-trivial real-world projects
shows a lot of mis-categorizations.
Well will fix them one by one.
Note 3: This functionality requires clangd >= 13.
Change-Id: Ib3500b52996dbbf9d7d9712d729179bcbd3262fc
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: David Schulz <david.schulz@qt.io>
By setting CMAKE_TOOLCHAIN_FILE to the qt6 toolchain file all the
needed bits to compile agains Qt6 get resolved automagically.
Change-Id: I43084842f98a4385acedd4865aaf7e26f25a351e
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
The latter is now used to compile Qt Quick projects. Also update
the docs accordingly.
Task-number: QTBUG-93766
Change-Id: I22a928bc1acfd3c58ed068fc2d07c36fb57b0a09
Reviewed-by: Vladimir Minenko <vladimir.minenko@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
for the changed location of build_plugin.py
Fixes: QTCREATORBUG-25727
Change-Id: I6bda26b1820b86ac4cf12a55821eed879ee818bc
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
... when attaching to a running gdbserver.
This enables use of gdbservers that have been started with --multi,
by adding to the "Init Commands" something like
run /path/to/binary <args>
Change-Id: I498b2287f8ab1dee68edf6f29a1b7261b17897ca
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
QmlPreview should be initiliazed before qmldesigner
Change-Id: I43f093e9af0728068e939a95a40c9405ff585283
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This reverts commit 7a2e49435c
as it broke handling clang-cl toolchains on Windows.
Fixes: QTCREATORBUG-25690
Fixes: QTCREATORBUG-25693
Fixes: QTCREATORBUG-25698
Change-Id: Idfc7bc86ad8dd97f645908d4fe9530c760085347
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Drop top-level static of consts, namespaces.
Change-Id: Ibc902e41278b78843a8f5aeced8321e76296ca1b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Move the remnaining two members into QtcProcessPrivate, its
only user.
Change-Id: I8e0c23e1a56b36b750b5b4bd4e88d762260e42a1
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
The data was present in the ChannelBuffer
Change-Id: Ica645ba58bb2e86d0ef4cf5387f0a228f132e07d
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
MouseArea3D::applyFreeRotation only takes four arguments, so remove
the unused _targetPosOnScreen property.
Change-Id: I10940f6954de89cb7a01bdbea6a0a55e69cb9c65
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
The timeout and exit code interpreter properties are already
accessible via the SynchronousProcess parameter.
Change-Id: I1ba9c768a781009df65b5070a1d017c41d7e2663
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This was requiring parameters the process object already knows.
This is a slight behavior change in most cases, it now includes
always the command line arguments, which previously only happened
in gcctoolchain.cpp and iarewtoolchain.cpp.
Change-Id: Id25a68c397e2f1d8bf52ab29210e215b1de46c6d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This was broken for tokens with characters that take up more than one
byte.
Fixes: QTCREATORBUG-25715
Change-Id: Ic9842b960af8d6f12487f582b100cb2edcf48cc1
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
No need to pass some QtcProcess properties in parallel with a
QtcProcess object.
Change-Id: I0c04e5d7db5fd27d8855e661547ec45f417f0fd5
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
The result is fully stored in the object anyway. Using the extra
SynchronousProcessResponse structure only causes copies of
the data and complicates access on the user side in
a lot of cases.
The result bits are now also accessible individually.
There's obvious room for follow-up changes on the topic, e.g.
ShellCommand::runCommand's parameter list could shrink to
just a SynchronousProcess parameter.
Change-Id: I45aa7eb23832340be06905929280c012e1217263
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
We standardize on Utils::Environment nowadays.
Change-Id: Icaf2fac21d237686a63cb60fdaf1b5900bf9fe1c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Otherwise we may have race condition.
Reference: documentation for QFutureWatcher::setFuture()
and the implementation of
QFutureInterfaceBasePrivate::connectOutputInterface(
QFutureCallOutInterface *interface).
Change-Id: I5b483baaf1b844871a162f47ce7683e9ff495acb
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
If the parser processes a test with an empty test name
it crashed QC.
Change-Id: Ic377f609ecdd74724ee7a272be3d5b60f0101afa
Reviewed-by: David Schulz <david.schulz@qt.io>
While at it correct a typo for the inner class name.
Change-Id: I9026f4c35ccf43744e64b1337f056b5e43669502
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
Make sure that multiple edits are in order.
The SemanticTokensEdit start is relative to the start of the data and
not to the position of the previous edit.
Do not try to be smart when calculating the start of the modification,
but assume that start is always a preedit index.
Change-Id: I3e1513f5fe631aac21fecb5e0611d987355e2c21
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Set the current index of SearchResultWindow to a valid one
_before_ deleting the last SerachResultWidget inside the m_widget
QStackedWidget, as this triggers the call to
updateFilterButton() which uses in turn the current index of
SearchResultWindow (out or range in case it's not adjusted beforehand).
Fixes: QTCREATORBUG-25713
Change-Id: Ie155c5f9bacee8d647e4fa7f622ff403192cb6bc
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This is not necessarily a permanent solution, but does something
sensible and suppresses warnings about non-existent build devices.
Alternatives would be to always enforce the existence of a build
device (fallback to "Desktop") as done for the run device, or
enforce a build device only and consider "no run device" as
"same as build device.
Change-Id: Ib84670c63a6c416524ab4740419ede6b99981c43
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Cancel and wait for all threads started by FindReferences
in its destructor.
Task-number: QTCREATORBUG-25711
Change-Id: I83c3ea832a173a7fff5c52e0c0136dfff2234afe
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
The API is nearly the same as QFutureSynchronizer.
The differences are:
1. We don't make this class a template class, however,
we are leaving some template methods, like addFuture().
For the scope of future synchronizing there is no need
for QFuture<T> API, the QFuture<void> is sufficient.
2. Renamed cancelOnWait() getter to isCancelOnWait()
in order to conform more to Qt API naming rules.
3. Removed futures() getter and provided isEmpty() instead.
4. Removed c'tor that takes a future and setFuture().
These 2 methods were superfluous and may easily be
substituted with other methods from the existing API.
The additional feature is about flushing finished futures.
This can be done on demand by a call to flushFinishedFutures(),
or is done automatically on every call to addFuture().
Change-Id: I6a323c9481eeeea9235e6b6e3048cef02873da08
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
The QNX paths are constructed from a base path, if the base path
is ending in / you can have a path with two // as delimiter.
When doing some comparisons the path with / is not the same as
the path with //.
Change-Id: I335a50d8a9d381a886eb0c3d24b5dca610bd98df
Reviewed-by: hjk <hjk@qt.io>
Otherwise, locator results for template specializations appear to be
duplicates when they really are not.
Change-Id: Ief20c876ec6e7d41a7d4c9dc8e35bcf1e7e60ced
Reviewed-by: Christian Stenger <christian.stenger@qt.io>