If the user tries to add a sub project the decision for the
parent project must happen directly on the intro page
to avoid asking for build system or kit information later on.
Any of these information are provided by the parent project
and can therefore be skipped in case of having a sub project.
So, move this decision to the first page and on the last page
only let the user decide to which sub node of the chosen
project the new project will be added to.
The old approach set the IsSubproject marker quite too late
to handle this appropriate, so explicitly set this already
on the first page.
For now there should be only qmake based projects which are
capable of adding sub projects at all, but this patch should
be a generalized preparation for having similar functionality
in other build systems.
Fixes: QTCREATORBUG-30281
Change-Id: I8f1de4fa05f46d68ac2ddec788840d473adb015e
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Qt Creator due to the usage of CMake File-API was already requiring
CMake 3.14.
Qt 6.7 now requires CMake version 3.16, thus the version requirement
bump.
Note that Qt SDK is shipping CMake version 3.27.
Fixes: QTCREATORBUG-31079
Change-Id: Ife26d178b80949941cb808a1fbd91389d6d723bc
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This is the de facto standard way of defining project dependencies. And
those files can be used to install dependencies via pip.
Change-Id: Ibfe37624b66d757cd331aee9c51090200b3bad39
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
The "import qbs" stanza has not been required for probably a decade now.
Change-Id: I92aadc9fd7a95c3fddd38b8a1d86e473ce421b48
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
..for the major build systems. CMake build system will get further
improvements. For now this only works for adding ts files to the
target after the project had been created with QC's wizard with
some translation already added.
Qbs and qmake just work.
The C++ sources obviously will not change automatically to
integrate translation support for the application.
Task-number: QTCREATORBUG-29775
Change-Id: I80e4c21156f4bb8d5ef0bd6edf805021a55770ee
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
- Fix the bug which disables the live preview
- The singleton of the DataStore is defined once
- Also modifies the template file formats of the DataStore files
Fixes: QDS-11430
Change-Id: I67e0f64355dccdc32c031bb4dc0fb8edf3fdf64a
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Added the new files to all wizards, since the change of the
qmldir file otherwise breaks the wizard.
Adding json files to qmlproject for cmake generation.
New files have to be added to cmakefiles.txt.
Change-Id: If00eb4507b6f1364ce3cfa00db39632635febd09
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Create plugins that use the Tr::tr pattern for translations.
Change-Id: I9b6e6222951936c614c5ac45248e3d0bb58104ec
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
- Matches other commands in other templates (e.g. PROJECT_SOURCES).
- Makes it that little bit easier for users to add more files.
- Encourages users not to cram everything onto one line.
I didn't change qtquickapplication_compat/CMakeLists.6.x.txt
because I assume %{AdditionalQmlFiles} expands to many entries
per line anyway (and if so, that should be changed too).
Change-Id: I0cd33181e7000f070aa563e2341f739df8956e6d
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
We now support Catch2 in two different versions which means
we need different include directives depending on the version.
Let the user choose the correct version instead of providing
a fixed one that may be correct or not.
Change-Id: I0199070b4f4602b8e08b7ac60731071f0cd33141
Reviewed-by: David Schulz <david.schulz@qt.io>
...if the respective kits have no Qt configured.
GTest and Catch2 get fixed with separate patches.
Change-Id: Ib3eb92e97fd683f42e3666bd41728a3824e230ec
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Since version 3 of Catch2 it is recommended to use the
approach to link against Catch2 instead of using a single
include.
Make both variants work. There is still a third variant of
using a single include for version 3, which is left out
here, but can easily be fixed for Catch2 users.
Change-Id: I2c25837cb1df4b460b662466dde68563fa7d713c
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
It is possible to use the header-only approach as well
as linking against googletest, so make this explicit
inside the wizard and fix the projects for the
respective choice. The old approach could work, but
mostly coincidentally.
Change-Id: I5b1c0b8dfd9a2ffac3268fc4c724ba47c2bf124c
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Options with contain %{Macros} (sometimes with JavaScript code) should
not be translatable, since a translation can easily a prevent a wizard
from successfully working.
This change turns a couple of trText, trDisabledText and trPlaceholder
options into their non-translatable pendants.
Fixes: QTCREATORBUG-29649
Change-Id: Ia46ab7ac35f78d6368868d78e24179197744921d
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Split off the single wizard into separate wizards listed
inside a separate projects category.
Simplifies maintenance and additional handling to be added
in a later patch.
Minor drive-by fixes for the cmake based projects.
Change-Id: I4f2f83c3892ea9a0f31691770a927294922c382d
Reviewed-by: David Schulz <david.schulz@qt.io>
Remove option for enabling C++11 for gtest. C++14 is minimum
nowadays when using a recent gtest version.
Change-Id: Iaa1c07be37fba0ee80d3bc46cef7238e91a541cd
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: David Schulz <david.schulz@qt.io>
Fixes creation of test projects for GTest, Boost Test and
Catch2 when not using qmake as build system.
Change-Id: I2fee3bcacf310e6dc4dbdd50bf8bd445dfb74328
Reviewed-by: David Schulz <david.schulz@qt.io>
This should match Creator style, no matter what the users uses for
own projects.
Change-Id: I32e052b24ed6d029cd3c7a466bdf8191d1657e4e
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
They were still using variables in qmake style.
Directly use CMake variables in the json.in files and remove the no
longer needed escaping of quotes.
Adds a fatal message if it detects the old style in a .json.in file for
easier porting.
Change-Id: I8de88d8db2da55781f0e9d72eda03f943723188e
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
If an iOS developer doesn't have a wildcard app identifier registered,
the app identifier must be in some sense "unique". So just
"my.example.com" creates issues in this situation.
Qt >= 6.1 tries to set a better bundle id, reading Xcode settings for
the last used prefix there, and Qt 6.4 improves on that in case this
Xcode setting is not available. So, try to use this mechanism in the
wizards.
Even with the automatic deduction of a bundle id, this might be
completely wrong (the Xcode setting is whatever was used last in a Xcode
wizard, regardless of target platform, it can be different for different
users, or for different teams that the user works in), and Qt doesn't
set it for macOS, so aside from out-of-the-box experience the user
should set an explicit bundle at some point.
So, keep the CMake property mentioned with a comment in any case.
Fixes: QTCREATORBUG-29340
Change-Id: I9dacae5c693ec2e23a9cf8bad660ad939303dbf3
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Qt 6.4 automatically includes GNUInstallDirs, but before that it didn't.
And for the "plain" projects Qt isn't even used. Since the project
templates use CMAKE_INSTALL_LIBDIR etc, they must ensure themselves that
these are actually available.
Fixes: QTCREATORBUG-29067
Change-Id: Id304b829301a33720d8f6c4a9c89157e8fc1c4a9
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This adds the newly introduced insight file to the file list.
Fixes: QTCREATORBUG-29234
Change-Id: I1d10e48a03d1147c4633b77e2a7384a073b5c1de
Reviewed-by: David Schulz <david.schulz@qt.io>