* The QtTest include is not available in release builds.
* Make the batch file mode only available in debug/test builds as that
one uses test utilities that are only available in debug builds.
Change-Id: I441c51ec00b14b81a396ad0199882cf46fff10b0
Reviewed-by: David Schulz <david.schulz@qt.io>
The wizard got forgotten during some cleanup.
I changed the name and description to emphasize prototyping.
Task-number: QTCREATORBUG-17771
Task-number: QTCREATORBUG-17708
Change-Id: I1d46737aba40abf3cd13effc50991cdb789980e6
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Fixes regression introduced in f8ad72deb3: Slave engines don't
have a RunControl pointer of their own, use the master pointer.
Change-Id: I1c695a1454cafc3532fb1b79374fac4f3ead607e
Reviewed-by: hjk <hjk@qt.io>
Retrieve output from Journald more reliably.
Change-Id: Ic733698e7ed3717841a5a902c4f1e9e94d952885
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: hjk <hjk@qt.io>
This is needed for REST, which never returns user name (only account id,
full name and email)
Change-Id: Ia4e3cca15a80a26b26f5f69edfc83a18e4c1fa1b
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This has several advantages:
1. It removes duplicate logic.
2. It is now clear where we use username and where full name.
3. Reviewers now appear with full names (broke by
9f697128c3).
Change-Id: I5729abc9006cec0d0cb615b01c8ace5def60ce27
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
- Avoids the hassle of QRC files and manually registering mime types
- Avoids performance regressions because of mime types that are
registered after mime database has been used
- Makes it technically possible to detect that a disabled plugin could
handle a mime type if it was enabled
Change-Id: I373008b1b56e9c6b4853055f20b3eeb112a6eff9
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: hjk <hjk@qt.io>
This allows to start Qt Creator in batch processing mode:
$ export QTC_CLANG_BATCH=/path/to/file
$ export QT_LOGGING_RULES=qtc.clangcodemodel.batch=true
$ ./qtcreator -load ClangCodeModel
The batch file will be executed and Qt Creator will exit. Advanced
logging output can be activated as stated above.
Note that it is required that the project was already configured/set up
properly with the used settingspath, otherwise the wrong configuration
will be taken or a pop-up dialog will block the execution.
A small example follows that covers all the understood and so far needed
batch file commands in order to train libclang for profile guided
optimization. ${PWD} expands to the directory of the batch file.
openProject "${PWD}/calendarwidget.pro"
# Initial parsing
openDocument "${PWD}/window.cpp"
closeAllDocuments
openDocument "${PWD}/window.cpp"
# Reparse
setCursor 478 1
insertText " "
insertText " "
insertText " "
# Completion
complete
complete
complete
# Member completion
insertText "comboBox->"
complete
complete
complete
# Wait in order to inspect the result
processEvents 3000
Change-Id: I7dc5dddc6752272ecc2fb4f30497b17cee3f9a9f
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
Broken by
commit d6e81eb49e
CppEditor: Emit member variable for qproperty refactoring
Change-Id: I5e86f0fb1942a497c4242b6f1890e74eb55b687c
Reviewed-by: David Schulz <david.schulz@qt.io>
All other functions using d->m_modelManager already have
such a guard so I assume it makes sense here, too.
Change-Id: Ie503d126230d266f57fceba9d9bae1b49849c7cd
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
Will be used for REST queries.
Change-Id: Iad5c70c8451764da691120b42e45d0991a757149
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
... and the need temporarily storing them by creating them when needed.
Change-Id: I930dd34bc7682f3d4fb40bd8da132f52ba32414b
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This reverts commit 07f4ae6227,
which broke compilation
clangbatchfileprocessor.cpp:170:27: error: ambiguous overload for
'operator==' (operand types are 'const QChar' and 'char')
and only worked in QT_TEST=1 cases.
Change-Id: I089427359958221882cb4e4369c4b88d71779acf
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Access on-the-fly is cheap and guaranteed to not produce outdated
data.
Change-Id: I770760f0216a61309d65ddc29b405991d95fc64b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
For a line like
Q_PROPERTY(bool foo READ isFoo WRITE setFoo NOTIFY fooChanged)
the generated setter will now "emit fooChanged(m_foo)" instead of "emit
fooChanged(foo)".
Change-Id: I417607ea614bfde0aafa6de401ffa888daf37c4c
Reviewed-by: David Schulz <david.schulz@qt.io>
This discourages storing the pointers needlessly. The items
are still easy accessible by the static ProjectTree::currentNode()
Change-Id: I3c0cd019e9fdc382afacbc9d9de3b97d5f58ae1e
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
SCXML specify that the <if> tag contains elements separated by tags
<else/> and <elseif/>.
The SCXML Editor used to nest instruction inside the <else/> and
<elseif/> tags.
This patch implement the correct behavior, so each new inserted element
is appended inside the wrapping <if>. Note that the new elements are
always inserted as last child of <if>.
Task-number: QTCREATORBUG-17674
Change-Id: I327941bbbd8b0cc04b0c26553257ccb2a24c8306
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
There is no need to keep them separate as the data model is not
accessed from the outside anymore. This removes a lot of indirection.
Change-Id: I91da4dfa816295300c8cfcca22430d5c5b3298c0
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
We keep it private to QmlProfilerModelManager and proxy the last few
methods that were directly called on the model. This enables us to
remove the QmlProfilerDataModel class by integrating what is left of it
into QmlProfilerModelManagerPrivate in a next step.
Change-Id: Ie9b4e03fb286e5a0040374d00b7b26f810426278
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
The inserting of events into the buffer is not the bottleneck here.
The book keeping is probably more expensive than just always using
all the events contained in a chuck from the file for one batch.
Change-Id: I75a936fdf9e3a1d9675b44d67b98f14594f87ffd
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
If we cannot open a temporary file to cache a trace or retrieve a
previously cached trace, the QML profiler won't work correctly. Show
an error in this case.
Change-Id: I468d74d9c33033b9ad19501bccbd69a9fe164fed
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Clear the trace and send the loadingFinished() signal when loading
fails or is canceled. loadingFinished() re-enables the UI, which is
in fact important.
* Check more consistently for whether the operation was canceled and
add a separate signal for that.
* When saving fails or is canceled, remove the half-written file.
* Don't try to guess the number of events for progress reporting when
saving. Use the event timestamps and start/end time instead.
* Properly initialize the progress range in all cases.
* Drop the bool return value from the load methods. Nobody uses that.
* Send loadFinished() only after loading a file, not every time we
reach the Done state.
Change-Id: I507f11c667e20534ea335e84798de11aa06fb6f2
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
This allows to start Qt Creator in batch processing mode:
$ export QTC_CLANG_BATCH=/path/to/file
$ export QT_LOGGING_RULES=qtc.clangcodemodel.batch=true
$ ./qtcreator -load ClangCodeModel
The batch file will be executed and Qt Creator will exit. Advanced
logging output can be activated as stated above.
Note that it is required that the project was already configured/set up
properly with the used settingspath, otherwise the wrong configuration
will be taken or a pop-up dialog will block the execution.
A small example follows that covers all the understood and so far needed
batch file commands in order to train libclang for profile guided
optimization. ${PWD} expands to the directory of the batch file.
openProject "${PWD}/calendarwidget.pro"
# Initial parsing
openDocument "${PWD}/window.cpp"
closeAllDocuments
openDocument "${PWD}/window.cpp"
# Reparse
setCursor 478 1
insertText " "
insertText " "
insertText " "
# Completion
complete
complete
complete
# Member completion
insertText "comboBox->"
complete
complete
complete
# Wait in order to inspect the result
processEvents 3000
Change-Id: Ib30526036f999e530f0c01d42a196a1e311e2c4c
Reviewed-by: David Schulz <david.schulz@qt.io>
Do not call makeEmpty() as part of buildTree(). That makes it
impossible to combine buildTree with manual tree setup.
Change-Id: If0a0d9432fe39870917a6ba31594e8dcd6d31868
Reviewed-by: hjk <hjk@qt.io>