Hide some of the QML files that we not marked as generated by the Qt QML
CMake code
Fixes: QTCREATORBUG-29631
Change-Id: I01fb571c0c3ff7d8a3861ddaaf7c6d6817c8cc51
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
CMake does have a few default source groups (cmMakefile.cxx):
this->AddSourceGroup("", "^.*$");
this->AddSourceGroup("Source Files", CM_SOURCE_REGEX);
this->AddSourceGroup("Header Files", CM_HEADER_REGEX);
this->AddSourceGroup("Precompile Header File", CM_PCH_REGEX);
this->AddSourceGroup("CMake Rules", "\\.rule$");
this->AddSourceGroup("Resources", CM_RESOURCE_REGEX);
this->AddSourceGroup("Object Files", "\\.(lo|o|obj)$");
This commit will get Qt Creator to display the actual subfolder
structure only if the CMake setting "Show subfolders inside source group
folders" is set and for "Source Files" and "Header Files" source groups.
Any other source group or a custom source group defined by `source_group`
will not get this treatment, since this what the oder IDEs (e.g. Visual
Studio) and what the users expect to have.
Task-number: QTCREATORBUG-27432
Fixes: QTCREATORBUG-30620
Change-Id: I3c30814df2f76d18ee5fd4fd1356d4dfc4b9b09b
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Add a checkbox to the qmljseditingsettingspage that generates qmlls
ini files by default for new projects.
If this checkbox is checked, then initial CMake configurations (when
enabling a kit for a project) and reconfigurations (when pressing the
"Re-configure with Initial parameters"-button) will set
QT_QML_GENERATE_QMLLS_INI to ON if QT_QML_GENERATE_QMLLS_INI was not
set yet.
Fixes: QTCREATORBUG-30394
Change-Id: I58f89558d25ef107e501bd67702f26554bd6aeaa
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Projects that have dll artifacts need to have the build paths added to
PATH so that the dependent executables would start.
Previously the code checked only if the dlls were present on disk, now
it also checks if the dlls are part of the project's build artifacts.
Fixes: QTCREATORBUG-30644
Change-Id: I924753ffaf0a9720acb70585ccd589abab1b9cc1
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Give each editor a context and register editor actions individually for
that context. This removes the need to tell the action handler the
current editor. Additionally all actions are now available in editor
widgets outside of the EditorManager.
Change-Id: I0109866b180889762f8bd8aa07874d8d7c55bfa6
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
In cases when a CMake project is using a CMake preset with a toolchain
file, the CMAKE_C|XX_COMIPLER value was not set in the CMakeCache.txt.
This commit makes sure that the cache from the CMake preset probe
contains CMAKE_C|XX_COMPILER values.
Task-number: QTCREATORBUG-30474
Change-Id: I63ac6fe2b043e49dda98e286b6d85950e34be920
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
If no CMake is found, show an error message (reusing an existing
translated string).
Fixes: QTCREATORBUG-30505
Change-Id: I6e3037ee97dfba21791191483fffab769a451125
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
It turns out caching the information is unreliable due to a variety of reasons.
We remove the cache for now as its less dangerous than trying to fix each
use case.
Change-Id: I8238166486a2fb29c101f700af1c8d7e4ad7a172
Reviewed-by: hjk <hjk@qt.io>
Skip targets list if function name is add_subdirectory
Fixes: QTCREATORBUG-30510
Change-Id: I8c601fb2134fc8a9b2814df01f6ec5eec380c51a
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
All the CMake files the belong to packages found with `find_package` are
part of the project tree, but we shouldn't include them when searching
through "files in the project".
Set listInProjects to false for these files.
Fixes: QTCREATORBUG-30372
Change-Id: If39d477f14dc3207f4e2dd66b2f3969811dbd863
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Skip adding object libraries paths to runtime PATH.
Also add only the paths that contain the dll files.
Fixes: QTCREATORBUG-29662
Change-Id: I58cd9b24c6c079b99ed51ae2ebd315a1aa195f04
Reviewed-by: Alessandro Portale <alessandro.portale@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>
This is for projects that use CMake Presets, and matches the expectations of the users using CMake Presets.
The user can still enable a Kit from the left list of Kits, which is not filtered.
Amends 87c67fc6d7
Task-number: QTCREATORBUG-29535
Change-Id: If97eef867a687c877b1cbd08cd4537fe6459136f
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Regarding QTCREATORBUG-30288, before this change I was getting on macOS
presets for Linux and Windows.
Fixes: QTCREATORBUG-30236
Fixes: QTCREATORBUG-30288
Change-Id: I4772ab7d14dec857b68164d4c24e6e904f20c88b
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Since the CMake presets is built upon Imports, when loading the presets
it's better to only use the candidates from preset Kits and not any
matching Kit that could handle the build directory.
This makes working with CMake Presets a bit easier.
Task-number: QTCREATORBUG-29535
Change-Id: I895e2e9162763e4cf3af5cdef5c9d5b228211fab
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
This allows the user to reload the presets kits after editing
CMakePresets.json without configuring the project first.
Fixes: QTCREATORBUG-30238
Change-Id: Id448dd8e821591f6357ec9618f114733c13a3121
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This way we have fixed small (max 64 bytes) paths for CMake's configure
/ build / install steps.
This allows the user to have longer paths and still compile with MSVC /
GCC MinGW compilers.
Fixes: QTCREATORBUG-26786
Task-number: QTBUG-117413
Change-Id: I0cff6521626dd2ce78d0223d46f0b480e977d5c5
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Some connects() in the CMakeToolManager ctor triggered accesses
to the s_instance there before it was assigned. Solve the issue
by moving the triggering code (CMakeKitAspect setup) out of the
class.
Change-Id: Ied0fc6b0b0eb87c29503ecb20e337289edecd203
Reviewed-by: Christian Stenger <christian.stenger@qt.io>