We relied on the reserve function but this is a little bit brittle. So we
create now two container and merge them later. This can be sometimes
slower or even faster but anyway I think it does not matter.
Change-Id: I78dca39c84cc82de17c1efe0b202b6662734d56d
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Otherwise we try to get access a negative index. The real implementation
will never return a negative value, so the shouldn't the mock function.
Change-Id: I369e168bd18530b39fa5e2a622a716b30b8b344c
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
If we prefetch data from the database to the caches we reduce the database
transaction calls which are quite expensive.
Change-Id: I617a0d886807402e0a94291a913a77f989970b55
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This project part container generation because there is not anymore one
single access to the database for every file path.
Change-Id: I5f82022262fe89a976729d48ee4f098b74a1e1d1
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
We use it in worker threads and there should be no access from different
threads.
Change-Id: I62874761221c45f88ce4d7cfda4fbda4bc446cac
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
We now fetch all directories and sources from the database at file
path cache creation.
Change-Id: I92510b49a234128f4c82b840611db82ead3f1a54
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
We will move that code to an other place where we will implement the tests
for the sorting.
Change-Id: Ia6e868466e2c43acdc0f5a8ed73b32cfc24613c1
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
If there is a newer file than the last indexing or if a file is added or
removed from the project or system PCH we have to reindex the project and
maybe the system PCH.
Change-Id: Ibce2a244190a79b5c422c469c065ddc11e44b2cb
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
It is not needed anymore. If we need it again we can reintroduce it.
Change-Id: If8897ddb404daaf52b249ddd3763deb685c35fe5
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Instead of deleting the path and time stamp of the project PCH we always
set the time stamp but delete only the path if PCH creation failed. A
failed PCH will be no rebuilt if the files changed. We have to add that
feature later.
Change-Id: I1094271f9ead5d906e94b68ac91c0becd2371ca9
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Instead of using the time stamp from clang we simply set one time stamp
for all dependent sources.
Change-Id: I0adbe59d46c88ddd1ac491a7f7db568bcf2ac540
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
It's done by a left join which is creation null entries for missing
right join values.
Change-Id: I61715791d454546834ad3dcfc4c4bee92c31b0e5
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
We call the function anyway only isolated from other queries, so we can
move the transaction guards to the project storage.
Change-Id: I7cca26b25c2258856c68821671085c0a68044693
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Otherwise the doxygen generation will not work.
Fixes: QTCREATORBUG-12411
Change-Id: I3e887dfeb5caba727da6e56a056c092c5a2e23f9
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
This patch fixes an issue were a temporary value wasn't properly
written to the backend, when another item was selected in the form
view.
* Add a dirty flag to track user modifications
* Utilize onEditingFinished and onTextEdited from internal TextInput
* Add full qualification to a few property and function usages
Change-Id: I9afcc17018a03549504b8d38b83fac221145794e
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This patch fixes an issue were a temporary value wasn't properly
written to the backend, when another item was selected in the form
view.
* Add a dirty flag to track user modifications
* Utilize onEditingFinished and onTextEdited from internal TextInput
* Add full qualification to a few property and function usages
Change-Id: Ib595d32bbc7f4caf92fbef5829aead50958fd830
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This unifies the remaining paths of RunWorker creation to always
use RunWorkerFactories in the plugin pimpls.
There were, and are, still effectively three basic kinds of workers:
- "toplevel" tools corresponding to the run modes, that are often all
that's used for local runs and directly started via the fat buttons
or e.g. entries in the analyze menu, with factories already previously
located in the plugin pimpls
- core "tool helpers", providing tool specific functionality typically
used in conjunction with a remote device specific run mechanism,
set up via RunControl::registerWorkerCreator
- target/device specific runhelper like port gatherers contructed e.g.
via *Device::workerCreator(Core::Id id)
Worse, these categories are partially overlapping, so it was not
clear how a "clean" setup would look like, instead some ad-hoc cobbling
"to make it work" happened.
In some cases, the runMode id was used throughout the whole ensemble
of run workers for a given run, and which worker exactly was created
depended on which of the mechanism above was used in which order.
With the new central setup, the top-level runmodes remain, but the
second kind gets new ids, so the implicit dependencies on order
of setup mechanism are avoided.
This also helps in the cases where there was previously unclarity of where
and how to set up worker factories: It's always and only the plugin
pimpl now.
Change-Id: Icd9a08e2d53e19abe8b21fe546f469fae353a69f
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
... on a kit update.
Our default build directory template references the kit name, so changes
to the name should update the default value.
Fixes: QTCREATORBUG-19453
Change-Id: Iffbdd95043be5137696e5af021d4735f494d47d7
Reviewed-by: hjk <hjk@qt.io>
- Suppress reflections
- Keep selection when updating the model
Change-Id: I0e165f0019c8c24802193f3a59902876d4cb5060
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>