Using the logic from the landing page in design mode.
Users can select Qt Design Studio from the Open With... menu, or even
set it as the default editor in Preferences > Environment > MIME Types,
"application/x-qt.ui+qml"
Task-number: QTCREATORBUG-30754
Change-Id: Idd4e688f722dcf38735db7c1b9b31af02caeb045
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
and suppress warnings about .hints files not being part of the project
Fixes: QDS-12507
Fixes: QDS-12508
Change-Id: If3c2f5ce716b8744dd4fee91ec7bba5293163a97
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
when opening the root CMakeLists.txt with QtCreator
Change-Id: Ia448dab1b3161471fe2bb7870ffb79e68dd579fc
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
write qtquickcontrols file if it does not exist
and minor cleanup of the cmake generator.
Change-Id: I9b7523f32e5a9b41904c02a398a6f924623f949a
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
- Add writer interface in order to support the current and the new
project structure in parallel. Using the new one if
qdsVersion is >= 4.5
- Separated templates for the new generator from the old one
- Add file name validity check
- Generate files in the folder src and cmake if they do not exist yet.
Only re-generate files in src/autogen.
- Add action to enable or disable the cmake-generator
- Add function that checks if a resource file is within the
project folder but not part of the project
Change-Id: I3d75dbee1043ed28e6126cf0b2c83994cb70ed45
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Rename process.h back to qtcprocess.h
MSVC's "threads" standard header includes <process.h>, and that ends up
including our process.h from Utils.
There already was a hacky workaround in place for a similar issue with
MINGW, but that doesn't work with MSVC because that doesn't have
Simply use a name that doesn't conflict.
Change-Id: I1159cd2096b4f2dbc4a1728d0131dd6edd30ebd3
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
(cherry picked from commit 5af531cd39)
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Rename process.h back to qtcprocess.h
MSVC's "threads" standard header includes <process.h>, and that ends up
including our process.h from Utils.
There already was a hacky workaround in place for a similar issue with
MINGW, but that doesn't work with MSVC because that doesn't have
Simply use a name that doesn't conflict.
Change-Id: I1159cd2096b4f2dbc4a1728d0131dd6edd30ebd3
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
It's the "persisted" form of the content of the original aspect's data,
calling it 'aspect' already confused me a few times.
Change-Id: I88a6f76f0ca39d3d36dde9b84287032ceecf7033
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
- Consider qmlModules file like any other qml module
- Use ${CMAKE_PROJECT_NAME} when possible
- Break up big functions into smaller ones
- Reorder arguments for tpl files
Change-Id: Ie73cca8596b22adf67eba1019610a00c34976421
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
According to https://wiki.qt.io/Things_To_Look_Out_For_In_Reviews
QSharedPointer impl is poor and it's going to be removed from Qt 7.
Replace QWeakPointer with std::weak_ptr.
Replace QEnableSharedFromThis with std::enable_shared_from_this.
Use std::static_pointer_cast and std::dynamic_pointer_cast
for casts used with QSharedPointer before.
Change-Id: If255a100c790860934f36d52906b93f33c31cfe8
Reviewed-by: hjk <hjk@qt.io>
Instead of relying on the QmlPreviewRunWorkerFactory to match for all
RunConfiguration, every plugin needs to create a WorkerFactory for
its own RunConfiguration.
Similar to the SimpleTargetRunnerFactory there is now a
SimpleQmlPreviewRunnerFactory which makes the setup easy.
Change-Id: I350e5a047033a259dae91045486d4f41e7f58994
Reviewed-by: hjk <hjk@qt.io>
Add helper function getStartupBuildSystem() to avoid code duplication.
Task-number: QDS-11544
Change-Id: Id8d752d63171838ac9ea6402ff9f2b179d0d8f53
Reviewed-by: Aleksei German <aleksei.german@qt.io>
We currently cannot support anything than running for devices with iOS
17 and later.
Make it possible for RunConfigurations to state that they are disabled
depending on run mode.
Change-Id: I13df4dd482f6381cda15168c38ede00d95e1d692
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
The reason for the split is unknown, maybe just an accident.
Change-Id: I4fadd003ee2e6f8d91ed9494bd2304b2d35eff81
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
It's not really related to the "Plugin-ness", and I'd generally like to
get away from exported ExtensionSystem::IPlugin derived classes as
"entrypoint" with the resulting fat plugin pimpl in favor of more
separate isolated access points.
Change-Id: I445df6109f4231e37750aa15eaa210d6669805e3
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Instead of relying on the QmlProfilerRunWorkerFactory to match for all
RunConfiguration, every plugin needs to create a WorkerFactory for
its own RunConfiguration.
Similar to the SimpleTargetRunnerFactory there is now a
SimpleQmlProfilerRunnerFactory which makes the setup easy.
Change-Id: I504ca5afe232cb4e3aa0bb0b67271637a7e7a9d0
Reviewed-by: hjk <hjk@qt.io>
Instead of relying on the DebuggerRunWorkerFactory to match for all
RunConfiguration, every plugin needs to create a WorkerFactory for
its own RunConfiguration.
Similar to the SimpleTargetRunnerFactory there is now a
SimpleDebugRunnerFactory which makes the setup easy.
Change-Id: I25aaabcd70f7ac649baeab4eb4c7e88d53dac91e
Reviewed-by: hjk <hjk@qt.io>
This get rid of two instances of FilePath::toString and allows now
to opens the default wizard-generated "Qt Quick UI Prototype"
.qmlproject.
As the QmlBuildSystem is still heavily tied to the local file system
this here is only a baby step towards fully functionial remote
.qmlproject support.
Change-Id: I940f99472d45d9ade4966cf4f15b0692a51f2e7b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Qt for MCUs uses several features in the qmlproject files which
are unknown to QDS. It is important that this information does
not get lost when converting to and from the internal JSON
project format, to avoid breaking MCU projects.
The following changes were made:
- Files nodes keep the type (ImageFiles, QmlFiles...)
- Added support for more Files node types used by MCU projects
(ModuleFiles, InterfaceFiles, FontFiles...)
- Files nodes can have child properties
- Added a JSON object to store properties unknown to QDS.
They may be used by Qt for MCUs, and new properties may
be added between versions
- Added support for the MCU.Config and MCU.Module nodes
- Added a test project for MCU. This project is also tested
with Qt for MCUs. Both the original and the converted
project build correctly
- Added instructions for notifying the MCU team before
modifying the MCU test cases to avoid breaking changes.
Fixes: QDS-10774
Task-number: QDS-10969
Change-Id: I0dfd7f3b150a8661fc0398a8a3d575c7e8777ef3
Reviewed-by: Burak Hancerli <burak.hancerli@qt.io>
Reviewed-by: Yasser Grimes <yasser.grimes@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
They are reasonably standardized, and generally usable cross-plugin,
so this can help to avoid a few cross-plugin compiletime dependencies.
Change-Id: Icb2b010c3e12dee69df54ab16f6f8e90d9cffba6
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
qtbase removed some indirect include somewhere.
Change-Id: I477e6dccebda4fbb81f6fffd179115840c67002f
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This patch fixes issues with adding files to the project by
providing the absolute paths in the .qmlproject file.
- If a directory is given without an explicit file list,
then that directory wil be searched recursively.
- If explicit file list given without a directory, then each
file will be added to the project separately.
- If both provided, then each file wil be prefixed with given
directory, and added project separately.
Task-number: QDS-10636
Change-Id: Ia13964ce2b3f6364d1def1aa71e20ec29f6f3542
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>