From d30dda07a12c458cf2dd86fe02c9b0293bcd4bdf Mon Sep 17 00:00:00 2001 From: David Schulz Date: Fri, 14 Jun 2024 12:08:58 +0200 Subject: [PATCH 01/30] Debugger: fix PyType::resolved function call Change-Id: I9301d7875bec68ccde5ccd480b12c0dc86b082f1 Reviewed-by: Christian Stenger --- share/qtcreator/debugger/cdbbridge.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/share/qtcreator/debugger/cdbbridge.py b/share/qtcreator/debugger/cdbbridge.py index 7674a37b710..6fc77b5ea67 100644 --- a/share/qtcreator/debugger/cdbbridge.py +++ b/share/qtcreator/debugger/cdbbridge.py @@ -124,7 +124,7 @@ class Dumper(DumperBase): pass if nativeValue.type().code() == TypeCode.Enum: val.ldisplay = self.enumValue(nativeValue) - elif not nativeValue.type().resolved and nativeValue.type().code() == TypeCode.Struct and not nativeValue.hasChildren(): + elif not nativeValue.type().resolved() and nativeValue.type().code() == TypeCode.Struct and not nativeValue.hasChildren(): val.ldisplay = self.enumValue(nativeValue) val.isBaseClass = val.name == nativeValue.type().name() val.typeid = self.from_native_type(nativeValue.type()) From d22a95bc546953f8a6835e6df4333ae5f6723b4e Mon Sep 17 00:00:00 2001 From: David Schulz Date: Mon, 17 Jun 2024 14:33:08 +0200 Subject: [PATCH 02/30] Debugger: fix some qtVersionAtLeast checks Change-Id: I681927fe5e086738f7635f7e578238c448dca2a2 Reviewed-by: hjk --- share/qtcreator/debugger/qttypes.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/share/qtcreator/debugger/qttypes.py b/share/qtcreator/debugger/qttypes.py index 1b38223c2e1..935103fde87 100644 --- a/share/qtcreator/debugger/qttypes.py +++ b/share/qtcreator/debugger/qttypes.py @@ -385,9 +385,9 @@ def qdump__QDateTime(d, value): # - [QTime time;] # - - uint mds; # - Spec spec; - dateSize = 8 if qtVersionAtLeast(0x050000) else 4 # Qt5: qint64, Qt4 uint + dateSize = 8 if d.qtVersionAtLeast(0x050000) else 4 # Qt5: qint64, Qt4 uint # 4 byte padding after 4 byte QAtomicInt if we are on 64 bit and QDate is 64 bit - refPlusPadding = 8 if qtVersionAtLeast(0x050000) and d.ptrSize() == 8 else 4 + refPlusPadding = 8 if d.qtVersionAtLeast(0x050000) and d.ptrSize() == 8 else 4 dateBase = base + refPlusPadding timeBase = dateBase + dateSize mds = d.extractInt(timeBase) @@ -1031,14 +1031,14 @@ def qdump__QHostAddress(d, value): else: (ipString, scopeId, a4, pad, a6, protocol, isParsed) \ = d.split('{@QString}{@QString}{@quint32}I16sI{bool}', dd) - elif qtVersionAtLeast(0x050600): # 5.6.0 at f3aabb42 + elif d.qtVersionAtLeast(0x050600): # 5.6.0 at f3aabb42 if d.ptrSize() == 8 or d.isWindowsTarget(): (ipString, scopeId, a4, pad, a6, protocol, isParsed) \ = d.split('{@QString}{@QString}{@quint32}I16sI{bool}', dd) else: (ipString, scopeId, a4, a6, protocol, isParsed) \ = d.split('{@QString}{@QString}{@quint32}16sI{bool}', dd) - elif qtVersionAtLeast(0x050000): # 5.2.0 at 62feb088 + elif d.qtVersionAtLeast(0x050000): # 5.2.0 at 62feb088 (ipString, scopeId, a4, a6, protocol, isParsed) \ = d.split('{@QString}{@QString}{@quint32}16sI{bool}', dd) else: # 4.8.7 at b05d05f From 56f2b1f1e8a29f316de75c3a4dcfb79a90d635e8 Mon Sep 17 00:00:00 2001 From: Eike Ziller Date: Mon, 17 Jun 2024 10:07:29 +0200 Subject: [PATCH 03/30] Process: Add information about main thread to logging Add a note if a process is started on the main thread. That adds essential information to "blocking without event loop". Task-number: QTCREATORBUG-31068 Change-Id: Iaf3bab88b79391c4ddc17d18a81e6d8ab712d22d Reviewed-by: Jarek Kobus --- src/libs/utils/qtcprocess.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/libs/utils/qtcprocess.cpp b/src/libs/utils/qtcprocess.cpp index 5e0918ed70e..05111ef8efa 100644 --- a/src/libs/utils/qtcprocess.cpp +++ b/src/libs/utils/qtcprocess.cpp @@ -2140,9 +2140,10 @@ void ProcessPrivate::setupDebugLog() static std::atomic_int startCounter = 0; const int currentNumber = startCounter.fetch_add(1); qCDebug(processLog).nospace().noquote() - << "Process " << currentNumber << " starting (" - << qPrintable(blockingMessage(property(QTC_PROCESS_BLOCKING_TYPE))) - << "): " << m_setup.m_commandLine.toUserOutput(); + << "Process " << currentNumber << " starting (" + << qPrintable(blockingMessage(property(QTC_PROCESS_BLOCKING_TYPE))) + << (isMainThread() ? ", main thread" : "") + << "): " << m_setup.m_commandLine.toUserOutput(); setProperty(QTC_PROCESS_NUMBER, currentNumber); }); From becb0af00a50aa209fde3fc88b714799e311cfa3 Mon Sep 17 00:00:00 2001 From: Leena Miettinen Date: Tue, 11 Jun 2024 14:35:07 +0200 Subject: [PATCH 04/30] Doc: Add more topics to \ingroup creator-how-to-manage-kits - Add links to the kit management topics from other topics - Always use \l{Kits} to link to Preferences > Kits This has lived a little, as I've changed the category names Change-Id: Ibcb137824a23bfe7e320a215eb461f689c43db77 Reviewed-by: Christian Kandeler --- doc/qtcreator/src/analyze/cpu-usage-analyzer.qdoc | 2 +- doc/qtcreator/src/analyze/creator-analyze.qdoc | 2 +- doc/qtcreator/src/analyze/creator-valgrind.qdoc | 2 +- doc/qtcreator/src/android/androiddev.qdoc | 3 +-- .../creator-projects-settings-run-android.qdoc | 4 ++-- doc/qtcreator/src/android/deploying-android.qdoc | 2 +- .../src/appman/creator-appman-how-to-run.qdoc | 2 +- .../src/baremetal/creator-baremetal-dev.qdoc | 4 +++- .../src/cmake/creator-projects-cmake-building.qdoc | 6 +++--- doc/qtcreator/src/cmake/creator-projects-cmake.qdoc | 7 ++++--- .../src/conan/creator-projects-conan-building.qdoc | 4 ++-- .../creator-only/creator-debugger-setup.qdoc | 4 ++-- .../src/debugger/creator-only/creator-debugger.qdoc | 12 +++++++----- doc/qtcreator/src/debugger/qtquick-debugging.qdoc | 2 +- .../creator-only/creator-language-server.qdoc | 6 +++--- .../howto/creator-only/creator-how-to-install.qdoc | 4 ++-- .../src/howto/creator-only/qtcreator-faq.qdoc | 4 ++-- .../creator-projects-incredibuild-building.qdoc | 2 +- doc/qtcreator/src/ios/creator-ios-dev.qdoc | 3 ++- .../creator-projects-how-to-run-generic-linux.qdoc | 4 ++-- .../creator-projects-settings-run-b2qt.qdoc | 4 ++-- .../creator-projects-settings-run-linux.qdoc | 4 ++-- doc/qtcreator/src/mcu/creator-mcu-dev.qdoc | 3 ++- .../src/meson/creator-projects-meson-building.qdoc | 2 +- doc/qtcreator/src/meson/creator-projects-meson.qdoc | 4 ++-- .../overview/creator-only/creator-configuring.qdoc | 2 +- .../creator-only/creator-getting-started.qdoc | 2 +- .../creator-only/creator-keyboard-shortcuts.qdoc | 2 +- .../src/overview/creator-only/creator-overview.qdoc | 2 +- .../creator-only/creator-build-settings-qmake.qdoc | 2 +- .../creator-how-to-edit-qbs-profiles.qdoc | 2 +- .../creator-projects-build-run-tutorial.qdoc | 2 +- .../creator-only/creator-projects-building.qdoc | 7 +++---- .../creator-only/creator-projects-compilers.qdoc | 2 +- .../creator-only/creator-projects-creating.qdoc | 4 ++-- .../creator-only/creator-projects-debuggers.qdoc | 2 +- .../projects/creator-only/creator-projects-kits.qdoc | 8 +++----- .../creator-only/creator-projects-nimble.qdoc | 2 +- .../creator-only/creator-projects-opening.qdoc | 5 +++-- .../creator-projects-settings-build-qbs.qdoc | 2 +- .../creator-projects-settings-build.qdoc | 2 +- .../creator-projects-settings-overview.qdoc | 7 ++++--- .../creator-projects-settings-run-analyze.qdoc | 2 +- .../creator-projects-settings-run-debug.qdoc | 2 +- .../creator-projects-settings-run-desktop.qdoc | 2 +- .../creator-only/creator-projects-settings-run.qdoc | 2 +- .../src/projects/creator-projects-running.qdoc | 2 +- .../src/python/creator-python-development.qdoc | 2 +- .../src/python/creator-python-run-settings.qdoc | 2 +- .../src/qnx/creator-projects-settings-run-qnx.qdoc | 2 +- .../creator-projects-settings-run-qtquick.qdoc | 6 +++--- .../src/qtquick/creator-only/qtquick-creating.qdoc | 10 +++++----- .../qtquick-tutorial-create-empty-project.qdocinc | 4 ++-- doc/qtcreator/src/qtquick/qtquick-profiler.qdoc | 2 +- .../creator-reference-output-views.qdoc | 2 +- doc/qtcreator/src/user-interface/creator-ui.qdoc | 2 +- .../src/widgets/qtdesigner-app-tutorial.qdoc | 2 +- 57 files changed, 100 insertions(+), 95 deletions(-) diff --git a/doc/qtcreator/src/analyze/cpu-usage-analyzer.qdoc b/doc/qtcreator/src/analyze/cpu-usage-analyzer.qdoc index 920bd6d3907..d267eaf8f60 100644 --- a/doc/qtcreator/src/analyze/cpu-usage-analyzer.qdoc +++ b/doc/qtcreator/src/analyze/cpu-usage-analyzer.qdoc @@ -519,5 +519,5 @@ The \l {Application Output} view shows some information even if the Performance Analyzer displays error messages. - \sa {Analyze}{How To: Analyze}, {Analyzers}, {Analyzing Code} + \sa {Analyze}{How To: Analyze}, {Analyzers}, {Analyzing Code}, {Kits} */ diff --git a/doc/qtcreator/src/analyze/creator-analyze.qdoc b/doc/qtcreator/src/analyze/creator-analyze.qdoc index e2333cee77c..982d4219923 100644 --- a/doc/qtcreator/src/analyze/creator-analyze.qdoc +++ b/doc/qtcreator/src/analyze/creator-analyze.qdoc @@ -151,5 +151,5 @@ is especially useful when viewing large trace files that are difficult to visualize using the built-in trace-viewer (\c{chrome://tracing}). - \sa {Analyze}{How To: Analyze}, {Analyzers} + \sa {Activate kits for a project}, {Analyze}{How To: Analyze}, {Analyzers} */ diff --git a/doc/qtcreator/src/analyze/creator-valgrind.qdoc b/doc/qtcreator/src/analyze/creator-valgrind.qdoc index d044e581199..dfc43effb49 100644 --- a/doc/qtcreator/src/analyze/creator-valgrind.qdoc +++ b/doc/qtcreator/src/analyze/creator-valgrind.qdoc @@ -392,7 +392,7 @@ \image qtcreator-valgrind-remote-settings.png {Start Remote Analysis dialog} \li Select the application to run and analyze, as well as the - \l{glossary-buildandrun-kit}{kit} to use. + \l{Kits}{kit} to use. \endlist diff --git a/doc/qtcreator/src/android/androiddev.qdoc b/doc/qtcreator/src/android/androiddev.qdoc index ab6ae2d9092..bd9e8be5073 100644 --- a/doc/qtcreator/src/android/androiddev.qdoc +++ b/doc/qtcreator/src/android/androiddev.qdoc @@ -149,8 +149,7 @@ building Qt from \c modules/Core.json and uses it instead of the version in \c sdk_definitions.json. - \sa {Android}{How To: Develop for Android}, - {Developing for Android} + \sa {Android}{How To: Develop for Android}, {Developing for Android}, {Kits} */ /*! diff --git a/doc/qtcreator/src/android/creator-projects-settings-run-android.qdoc b/doc/qtcreator/src/android/creator-projects-settings-run-android.qdoc index 8753e838649..2d264f0e57d 100644 --- a/doc/qtcreator/src/android/creator-projects-settings-run-android.qdoc +++ b/doc/qtcreator/src/android/creator-projects-settings-run-android.qdoc @@ -11,7 +11,7 @@ \brief Settings for running applications on Android devices. - Specify settings for running applications on the \l {kits-tab}{Run device} that + Specify settings for running applications on the \l {Kits}{Run device} that you select for a kit in \uicontrol Projects > \uicontrol {Build & Run} > \uicontrol Run > \uicontrol {Run Settings}. @@ -66,5 +66,5 @@ \endcode \sa {Activate kits for a project}, {Configure projects for running}, - {Android}{How To: Develop for Android} + {Android}{How To: Develop for Android}, {Kits} */ diff --git a/doc/qtcreator/src/android/deploying-android.qdoc b/doc/qtcreator/src/android/deploying-android.qdoc index e1b83d5e046..75f497cc6d7 100644 --- a/doc/qtcreator/src/android/deploying-android.qdoc +++ b/doc/qtcreator/src/android/deploying-android.qdoc @@ -499,6 +499,6 @@ To add a permission, select it from the list, and then click \uicontrol Add. \sa {Build and Run}{How To: Build and Run}, - {Android}{How To: Develop for Android}, {Android Run Settings} + {Android}{How To: Develop for Android}, {Android Run Settings}, {Kits} */ diff --git a/doc/qtcreator/src/appman/creator-appman-how-to-run.qdoc b/doc/qtcreator/src/appman/creator-appman-how-to-run.qdoc index af2ffacaaec..0df58d12e8c 100644 --- a/doc/qtcreator/src/appman/creator-appman-how-to-run.qdoc +++ b/doc/qtcreator/src/appman/creator-appman-how-to-run.qdoc @@ -153,5 +153,5 @@ {Remote Linux}{How To: Develop for remote Linux}, {Run on many platforms}, {Debugging}, {Debuggers}, {Debugger}, {Developing for \B2Q Devices}, {Developing for Remote Linux Devices}, - {Profiling QML Applications} + {Profiling QML Applications}, {Kits} */ diff --git a/doc/qtcreator/src/baremetal/creator-baremetal-dev.qdoc b/doc/qtcreator/src/baremetal/creator-baremetal-dev.qdoc index 70ded6fc366..67b73cf9822 100644 --- a/doc/qtcreator/src/baremetal/creator-baremetal-dev.qdoc +++ b/doc/qtcreator/src/baremetal/creator-baremetal-dev.qdoc @@ -71,7 +71,8 @@ The available settings depend on the debug server provider. - \sa {Enable and disable plugins}, {Bare Metal}{How To: Develop for Bare Metal} + \sa {Add kits}, {Enable and disable plugins}, + {Bare Metal}{How To: Develop for Bare Metal} */ /*! @@ -296,6 +297,7 @@ \previouspage creator-how-tos.html \ingroup creator-how-to-bare-metal + \ingroup creator-how-to-manage-kits \title Add Bare Metal devices diff --git a/doc/qtcreator/src/cmake/creator-projects-cmake-building.qdoc b/doc/qtcreator/src/cmake/creator-projects-cmake-building.qdoc index aac591854cd..c3b9692c5ae 100644 --- a/doc/qtcreator/src/cmake/creator-projects-cmake-building.qdoc +++ b/doc/qtcreator/src/cmake/creator-projects-cmake-building.qdoc @@ -11,15 +11,15 @@ \brief Settings for building applications with CMake. - Specify build settings for the selected \l{glossary-buildandrun-kit}{kit} in + Specify build settings for the selected \l{Kits}{kit} in \uicontrol Projects > \uicontrol {Build & Run} > \uicontrol Build > \uicontrol {Build Settings}. Configuring medium-sized to large CMake projects in \QC can be a challenge due to the number of variables that you need to pass to CMake to configure the project correctly. To make this easier, - \QC creates an initial configuration for you based on the kit - settings and displays it in \uicontrol {Initial Configuration} in + \QC creates an initial configuration for you based on the \l{Kits} + {kit preferences} and displays it in \uicontrol {Initial Configuration} in the \uicontrol {Build Settings} of the project. Or, you can use CMake presets to configure CMake. diff --git a/doc/qtcreator/src/cmake/creator-projects-cmake.qdoc b/doc/qtcreator/src/cmake/creator-projects-cmake.qdoc index 1cc600123a6..ace6f693895 100644 --- a/doc/qtcreator/src/cmake/creator-projects-cmake.qdoc +++ b/doc/qtcreator/src/cmake/creator-projects-cmake.qdoc @@ -133,12 +133,13 @@ \previouspage creator-how-tos.html \ingroup creator-how-to-build-with-cmake + \ingroup creator-how-to-manage-kits \title Add CMake tools \QC automatically detects the CMake executable that you specify in the \c PATH. You can add paths to other CMake executables and use them in - different build and run \l{glossary-buildandrun-kit}{kits}. + different build and run \l{Kits}{kits}. To see the CMake installations that \QC automatically detects: @@ -183,8 +184,8 @@ \image qtcreator-kits-cmake.png {Kits preferences} - \sa {Build with CMake}{How To: Build with CMake}, {CMake}, {Add kits}, - {kits-tab}{Kits} + \sa {Build with CMake}{How To: Build with CMake}, + {Manage Kits}{How To: Manage Kits}, {CMake}, {Kits} */ /*! diff --git a/doc/qtcreator/src/conan/creator-projects-conan-building.qdoc b/doc/qtcreator/src/conan/creator-projects-conan-building.qdoc index 55f71c40d05..81ecd115756 100644 --- a/doc/qtcreator/src/conan/creator-projects-conan-building.qdoc +++ b/doc/qtcreator/src/conan/creator-projects-conan-building.qdoc @@ -11,7 +11,7 @@ \brief Settings for building applications with the Conan package manager. - Specify build settings for the selected \l{glossary-buildandrun-kit}{kit} in + Specify build settings for the selected \l{Kits}{kit} in \uicontrol Projects > \uicontrol {Build & Run} > \uicontrol Build > \uicontrol {Build Settings}. @@ -30,5 +30,5 @@ Select \uicontrol {Build missing} to build packages from source if binary packages are not found. - \sa {Conan Package Manager} + \sa {Activate kits for a project}, {Conan Package Manager} */ diff --git a/doc/qtcreator/src/debugger/creator-only/creator-debugger-setup.qdoc b/doc/qtcreator/src/debugger/creator-only/creator-debugger-setup.qdoc index d2836a9c5f5..c726d15e601 100644 --- a/doc/qtcreator/src/debugger/creator-only/creator-debugger-setup.qdoc +++ b/doc/qtcreator/src/debugger/creator-only/creator-debugger-setup.qdoc @@ -58,7 +58,7 @@ \endtable The debugger plugin automatically selects a suitable native debugger for - each \l{kits-tab}{kit} from the ones found on the computer. The automatic + each \l{Kits}{kit} from the ones found on the computer. The automatic setup fails if the native debugger is not installed on the computer or if \QC does not support the installed version. @@ -148,5 +148,5 @@ \image qtcreator-run-settings-python.webp {Run settings for a Python project} - \sa {Debug}{How To: Debug}, {Debugging}, {Debuggers}, {Debugger} + \sa {Debug}{How To: Debug}, {Debugging}, {Debuggers}, {Debugger}, {Kits} */ diff --git a/doc/qtcreator/src/debugger/creator-only/creator-debugger.qdoc b/doc/qtcreator/src/debugger/creator-only/creator-debugger.qdoc index eee91df904b..25c127aa413 100644 --- a/doc/qtcreator/src/debugger/creator-only/creator-debugger.qdoc +++ b/doc/qtcreator/src/debugger/creator-only/creator-debugger.qdoc @@ -29,7 +29,7 @@ \section1 Setting Up the Debugger The debugger plugin automatically selects a suitable native debugger for - each \l{kits-tab}{kit} from the ones found on your system. You can select + each \l{Kits}{kit} from the ones found on your system. You can select another kit. To specify the debugger and compiler to use for each kit, go to \preferences > \uicontrol Kits. @@ -212,7 +212,7 @@ \l{Debugging a Qt Quick Application}. \sa {Debugging a C++ Application}, {Debug}{How To: Debug}, {Debuggers}, - {Debugger} + {Debugger}, {Kits} */ /*! @@ -301,7 +301,7 @@ \title Start and debug an external application To debug any executable on your local or on a remote - machine without using a project, specify a build and run kit that + machine without using a project, specify a build and run \l{Kits}{kit} that identifies the device to debug the application on. While the \e{start external} debugger mode does not strictly require a @@ -342,7 +342,8 @@ configuration to use. \endlist - \sa {Debug}{How To: Debug}, {Debugging}, {Debuggers}, {Debugger} + \sa {Activate kits for a project}, {Debug}{How To: Debug}, {Debugging}, + {Debuggers}, {Debugger} */ /*! @@ -406,7 +407,8 @@ process to start. \endlist - \sa {Debug}{How To: Debug}, {Debugging}, {Debuggers}, {Debugger} + \sa {Activate kits for a project}, {Debug}{How To: Debug}, {Debugging}, + {Debuggers}, {Debugger} */ /*! diff --git a/doc/qtcreator/src/debugger/qtquick-debugging.qdoc b/doc/qtcreator/src/debugger/qtquick-debugging.qdoc index 1d4f41f789e..e44a2f93fc9 100644 --- a/doc/qtcreator/src/debugger/qtquick-debugging.qdoc +++ b/doc/qtcreator/src/debugger/qtquick-debugging.qdoc @@ -281,6 +281,6 @@ updated in the running application, but not in the source code. \if defined(qtcreator) - \sa {Debug}{How To: Debug}, {Debugging}, {Debuggers}, {Debugger} + \sa {Debug}{How To: Debug}, {Debugging}, {Debuggers}, {Debugger}, {Kits} \endif */ diff --git a/doc/qtcreator/src/editors/creator-only/creator-language-server.qdoc b/doc/qtcreator/src/editors/creator-only/creator-language-server.qdoc index b9b4b1bc735..8d82c2a52a9 100644 --- a/doc/qtcreator/src/editors/creator-only/creator-language-server.qdoc +++ b/doc/qtcreator/src/editors/creator-only/creator-language-server.qdoc @@ -250,8 +250,8 @@ To disable the embedded code model and use \QMLLS for everything, select \uicontrol {Use \QMLLS advanced features}. - Also, \QC tries to use \QMLLS shipped with - the Qt version in your current kit. To override that behavior and always use + Also, \QC tries to use \QMLLS shipped with the Qt version in your current + \l{Kits}{kit}. To override that behavior and always use \QMLLS of the highest registered Qt version, select \uicontrol {Use \QMLLS from latest Qt version}. @@ -262,7 +262,7 @@ > \uicontrol {Initial Configuration}. \sa {Manage Language Servers}{How To: Manage Language Servers}, - {Enabling and Disabling Messages}, {CMake Build Configuration}, + {Enabling and Disabling Messages}, {CMake Build Configuration}, {Kits} {Language Servers} */ diff --git a/doc/qtcreator/src/howto/creator-only/creator-how-to-install.qdoc b/doc/qtcreator/src/howto/creator-only/creator-how-to-install.qdoc index d19c3e9d8fb..6395da3c317 100644 --- a/doc/qtcreator/src/howto/creator-only/creator-how-to-install.qdoc +++ b/doc/qtcreator/src/howto/creator-only/creator-how-to-install.qdoc @@ -41,7 +41,7 @@ instructions to install \QC. To develop with Qt, you also need a Qt version. You can register Qt versions - in the stand-alone \QC to use them in \l{kits-tab}{kits}. + in the stand-alone \QC to use them in \l{Kits}{kits}. \section2 Use package managers @@ -89,5 +89,5 @@ {Compiling \QC} and \l{https://wiki.qt.io/Building_Qt_Creator_from_Git} {Building Qt Creator from Git}. - \sa {Register installed Qt versions} + \sa {Manage Kits}{How To: Manage Kits}, {Register installed Qt versions} */ diff --git a/doc/qtcreator/src/howto/creator-only/qtcreator-faq.qdoc b/doc/qtcreator/src/howto/creator-only/qtcreator-faq.qdoc index 967031f69be..8685f850ce4 100644 --- a/doc/qtcreator/src/howto/creator-only/qtcreator-faq.qdoc +++ b/doc/qtcreator/src/howto/creator-only/qtcreator-faq.qdoc @@ -53,8 +53,8 @@ This also enables code completion of QML code and removes error messages. The following example illustrates how to specify the import path for qmake - projects so that it works when switching between build and run kits for - different target platforms: + projects so that it works when switching between build and run \l{Kits}{kits} + for different target platforms: \code TEMPNAME = $${QMAKE_QMAKE} diff --git a/doc/qtcreator/src/incredibuild/creator-projects-incredibuild-building.qdoc b/doc/qtcreator/src/incredibuild/creator-projects-incredibuild-building.qdoc index f872adc77e6..f3828018149 100644 --- a/doc/qtcreator/src/incredibuild/creator-projects-incredibuild-building.qdoc +++ b/doc/qtcreator/src/incredibuild/creator-projects-incredibuild-building.qdoc @@ -10,7 +10,7 @@ \brief Build and clean steps for Incredibuild. - Specify build settings for the selected \l{glossary-buildandrun-kit}{kit} in + Specify build settings for the selected \l{Kits}{kit} in \uicontrol Projects > \uicontrol {Build & Run} > \uicontrol Build > \uicontrol {Build Settings}. diff --git a/doc/qtcreator/src/ios/creator-ios-dev.qdoc b/doc/qtcreator/src/ios/creator-ios-dev.qdoc index f02397f149f..b6c8d53cde9 100644 --- a/doc/qtcreator/src/ios/creator-ios-dev.qdoc +++ b/doc/qtcreator/src/ios/creator-ios-dev.qdoc @@ -147,7 +147,8 @@ If the current device state is \uicontrol Connected, (the traffic light icon is orange), you need to configure the device using Xcode. - \sa {iOS}{How To: Develop for iOS}, {Developing for iOS} + \sa {Activate kits for a project}, {iOS}{How To: Develop for iOS}, + {Developing for iOS} */ /*! diff --git a/doc/qtcreator/src/linux-mobile/creator-projects-how-to-run-generic-linux.qdoc b/doc/qtcreator/src/linux-mobile/creator-projects-how-to-run-generic-linux.qdoc index d39f924f046..241b0ce2f34 100644 --- a/doc/qtcreator/src/linux-mobile/creator-projects-how-to-run-generic-linux.qdoc +++ b/doc/qtcreator/src/linux-mobile/creator-projects-how-to-run-generic-linux.qdoc @@ -34,6 +34,6 @@ Debugging works transparently if GDB server is installed on the device and it is compatible with the GDB on the host. - \sa {Remote Linux}{How To: Develop for remote Linux}, {Run on many platforms}, {Compilers}, - {Embedded Platforms}, {kit-preferences}{Kits} + \sa {Remote Linux}{How To: Develop for remote Linux}, + {Run on many platforms}, {Compilers}, {Embedded Platforms}, {Kits} */ diff --git a/doc/qtcreator/src/linux-mobile/creator-projects-settings-run-b2qt.qdoc b/doc/qtcreator/src/linux-mobile/creator-projects-settings-run-b2qt.qdoc index a8d3093cfb5..01eb71f171f 100644 --- a/doc/qtcreator/src/linux-mobile/creator-projects-settings-run-b2qt.qdoc +++ b/doc/qtcreator/src/linux-mobile/creator-projects-settings-run-b2qt.qdoc @@ -11,7 +11,7 @@ \brief Settings for running applications on \B2Q devices. - Specify settings for running applications on the \l {kits-tab}{Run device} that + Specify settings for running applications on the \l {Kits}{Run device} that you select for a kit in \uicontrol Projects > \uicontrol {Build & Run} > \uicontrol Run > \uicontrol {Run Settings}. @@ -25,6 +25,6 @@ host and on the device. \sa {\B2Q}{How To: Develop for \B2Q}, {Manage Kits}{How To: Manage Kits}, - {Configure projects for running}, {kits-tab}{Kits}, + {Configure projects for running}, {Kits}, {\B2Q Deploy Configuration} */ diff --git a/doc/qtcreator/src/linux-mobile/creator-projects-settings-run-linux.qdoc b/doc/qtcreator/src/linux-mobile/creator-projects-settings-run-linux.qdoc index adc27d6a93e..37954b8e89a 100644 --- a/doc/qtcreator/src/linux-mobile/creator-projects-settings-run-linux.qdoc +++ b/doc/qtcreator/src/linux-mobile/creator-projects-settings-run-linux.qdoc @@ -11,7 +11,7 @@ \brief Settings for running applications on Linux-based devices. - Specify run settings for the selected \l{glossary-buildandrun-kit}{kit} in + Specify run settings for the selected \l{Kits}{kit} in \uicontrol Projects > \uicontrol {Build & Run} > \uicontrol Run > \uicontrol {Run Settings}. @@ -37,6 +37,6 @@ Select the \uicontrol {Forward to local display} check box to show a remotely running X11 client on a local display. - \sa {Activate kits for a project}, {Configure projects for running}, {kits-tab}{Kits}, + \sa {Activate kits for a project}, {Configure projects for running}, {Kits}, {Remote Linux}{How To: Develop for remote Linux} */ diff --git a/doc/qtcreator/src/mcu/creator-mcu-dev.qdoc b/doc/qtcreator/src/mcu/creator-mcu-dev.qdoc index 19ba26bdca4..f49e375f617 100644 --- a/doc/qtcreator/src/mcu/creator-mcu-dev.qdoc +++ b/doc/qtcreator/src/mcu/creator-mcu-dev.qdoc @@ -181,6 +181,7 @@ \previouspage creator-how-tos.html \ingroup creator-how-to-mcu + \ingroup creator-how-to-manage-kits \title Manage MCU Kits @@ -209,7 +210,7 @@ software required for MCU development with the current kit. \sa {Enable and disable plugins}, {MCUs}{How To: Develop for MCUs}, - {Developing for MCUs} + {Manage Kits}{How To: Manage Kits}, {Developing for MCUs} */ /*! diff --git a/doc/qtcreator/src/meson/creator-projects-meson-building.qdoc b/doc/qtcreator/src/meson/creator-projects-meson-building.qdoc index d0ada5efced..5132adf9dc0 100644 --- a/doc/qtcreator/src/meson/creator-projects-meson-building.qdoc +++ b/doc/qtcreator/src/meson/creator-projects-meson-building.qdoc @@ -10,7 +10,7 @@ \brief Settings for building applications with Meson. - Specify build settings for the selected \l{glossary-buildandrun-kit}{kit} in + Specify build settings for the selected \l{Kits}{kit} in \uicontrol Projects > \uicontrol {Build & Run} > \uicontrol Build > \uicontrol {Build Settings}. diff --git a/doc/qtcreator/src/meson/creator-projects-meson.qdoc b/doc/qtcreator/src/meson/creator-projects-meson.qdoc index a6418fcc663..4c71fc7e5e8 100644 --- a/doc/qtcreator/src/meson/creator-projects-meson.qdoc +++ b/doc/qtcreator/src/meson/creator-projects-meson.qdoc @@ -21,7 +21,7 @@ \QC automatically detects the Meson and Ninja executables specified in the \c PATH. You can add paths to other Meson or Ninja executables and use them - in different build and run \l{glossary-buildandrun-kit}{kits}. + in different build and run \l{Kits}{kits}. \note Enable the Meson plugin to use it. @@ -54,7 +54,7 @@ \image qtcreator-kits-meson.png "Setting Meson executable in Kit preferences" - For more information, see \l {kits-tab}{Kits}. + For more information, see \l {Kits}. \section1 Editing Meson Build Descriptions diff --git a/doc/qtcreator/src/overview/creator-only/creator-configuring.qdoc b/doc/qtcreator/src/overview/creator-only/creator-configuring.qdoc index b2ea02c1280..3e7f74ae75e 100644 --- a/doc/qtcreator/src/overview/creator-only/creator-configuring.qdoc +++ b/doc/qtcreator/src/overview/creator-only/creator-configuring.qdoc @@ -20,7 +20,7 @@ However, if you install the stand-alone \QC package, build \QC from sources, or install several Qt versions, you may need to tell \QC where to find the Qt versions and compilers by adding the paths to them and by creating - \l{glossary-buildandrun-kit}{kits} that use them. + \l{Kits}{kits} that use them. To make \QC behave more like your favorite code editor or IDE, change the preferences for keyboard shortcuts, color schemes, generic diff --git a/doc/qtcreator/src/overview/creator-only/creator-getting-started.qdoc b/doc/qtcreator/src/overview/creator-only/creator-getting-started.qdoc index e735c95adf0..3504fd1c33d 100644 --- a/doc/qtcreator/src/overview/creator-only/creator-getting-started.qdoc +++ b/doc/qtcreator/src/overview/creator-only/creator-getting-started.qdoc @@ -50,7 +50,7 @@ \li \b {\l{Building and Running an Example}} To check that \l{https://www.qt.io/download-qt-installer} - {\QOI} created \l{glossary-buildandrun-kit} + {\QOI} created \l{Kits} {build and run kits}, open an example application and run it. If you have not done so before, go to \l{Building and Running an Example}. diff --git a/doc/qtcreator/src/overview/creator-only/creator-keyboard-shortcuts.qdoc b/doc/qtcreator/src/overview/creator-only/creator-keyboard-shortcuts.qdoc index 1dc1fb0d6b1..16d45c42278 100644 --- a/doc/qtcreator/src/overview/creator-only/creator-keyboard-shortcuts.qdoc +++ b/doc/qtcreator/src/overview/creator-only/creator-keyboard-shortcuts.qdoc @@ -570,7 +570,7 @@ \li Open project \li Ctrl+Shift+O \row - \li Select the \l{glossary-buildandrun-kit}{kit} to build and run your project with + \li Select the \l{Kits}{kit} to build and run your project with \li Ctrl+T \row \li Run diff --git a/doc/qtcreator/src/overview/creator-only/creator-overview.qdoc b/doc/qtcreator/src/overview/creator-only/creator-overview.qdoc index 127a59cf0d1..d7afb4ee549 100644 --- a/doc/qtcreator/src/overview/creator-only/creator-overview.qdoc +++ b/doc/qtcreator/src/overview/creator-only/creator-overview.qdoc @@ -181,7 +181,7 @@ Run and deploy Qt applications that you build for different target platforms or with different compilers, debuggers, or Qt versions. - \l{glossary-buildandrun-kit}{Kits} define the tools, \l{glossary-device} + \l{Kits} define the tools, \l{glossary-device} {device} type and other settings to use when building and running your project. diff --git a/doc/qtcreator/src/projects/creator-only/creator-build-settings-qmake.qdoc b/doc/qtcreator/src/projects/creator-only/creator-build-settings-qmake.qdoc index 78eb3ecf689..814189ee7b6 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-build-settings-qmake.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-build-settings-qmake.qdoc @@ -11,7 +11,7 @@ \brief Settings for building applications with qmake. - Specify build settings for the selected \l{glossary-buildandrun-kit}{kit} + Specify build settings for the selected \l{Kits}{kit} in \uicontrol Projects > \uicontrol {Build & Run} > \uicontrol Build > \uicontrol {Build Settings}. diff --git a/doc/qtcreator/src/projects/creator-only/creator-how-to-edit-qbs-profiles.qdoc b/doc/qtcreator/src/projects/creator-only/creator-how-to-edit-qbs-profiles.qdoc index 60f0d3bb0b1..a5037be5b91 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-how-to-edit-qbs-profiles.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-how-to-edit-qbs-profiles.qdoc @@ -39,5 +39,5 @@ To remove the selected property, select \uicontrol Remove. - \sa {Activate kits for a project}, {Add kits}, {kits-tab}{Kits} + \sa {Activate kits for a project}, {Add kits}, {Kits} */ diff --git a/doc/qtcreator/src/projects/creator-only/creator-projects-build-run-tutorial.qdoc b/doc/qtcreator/src/projects/creator-only/creator-projects-build-run-tutorial.qdoc index 600b8f30791..eb8e2a14ee1 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-projects-build-run-tutorial.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-projects-build-run-tutorial.qdoc @@ -51,7 +51,7 @@ (4) to list examples that you can run on \B2Q devices. \li In \uicontrol {Configure Project}, select - \l{glossary-buildandrun-kit}{kits} for building the example for the + \l{Kits}{kits} for building the example for the target platforms. \image qtcreator-configure-project.webp {Configure Project view} diff --git a/doc/qtcreator/src/projects/creator-only/creator-projects-building.qdoc b/doc/qtcreator/src/projects/creator-only/creator-projects-building.qdoc index 7cfb8f86e0f..a0189b216ab 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-projects-building.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-projects-building.qdoc @@ -16,7 +16,7 @@ \title Build for many platforms You can build applications for many target platforms, or using different - compilers, debuggers or Qt versions. \l{glossary-buildandrun-kit}{Kits} + compilers, debuggers or Qt versions. \l{Kits} define the tools, \l{glossary-device}{device} type, and other settings to use. By default, when you run the application, you @@ -34,9 +34,8 @@ \list 1 \li Select the \uicontrol {Build and Run Kit Selector} icon or go to - \uicontrol Build > \uicontrol {Open Build and Run Kit Selector} to select the - build and run \l{glossary-buildandrun-kit}{kit} or an - \l{Manage AVDs}{Android device}. + \uicontrol Build > \uicontrol {Open Build and Run Kit Selector} to + select the build and run kit or an \l{Manage AVDs}{Android device}. \image qtcreator-kit-selector.webp {Kit selector} diff --git a/doc/qtcreator/src/projects/creator-only/creator-projects-compilers.qdoc b/doc/qtcreator/src/projects/creator-only/creator-projects-compilers.qdoc index 42cc51bef98..e068ec86d4f 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-projects-compilers.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-projects-compilers.qdoc @@ -18,7 +18,7 @@ You can develop Qt applications on several 32-bit and 64-bit platforms. Usually, you can build Qt applications on each platform with GCC, a vendor-supplied compiler, or a third party compiler. In \QC, a - \l{glossary-buildandrun-kit}{kit} specifies the compiler and other + \l{Kits}{kit} specifies the compiler and other necessary tools for building an application for and running it on a particular platform. diff --git a/doc/qtcreator/src/projects/creator-only/creator-projects-creating.qdoc b/doc/qtcreator/src/projects/creator-only/creator-projects-creating.qdoc index 5388f7c6e5d..92858ff6078 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-projects-creating.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-projects-creating.qdoc @@ -63,7 +63,7 @@ To test applications on \l{glossary-device}{devices}, you can install toolchains for mobile and embedded development as part of Qt distributions. - The installers create \l{glossary-buildandrun-kit}{kits} and specify build + The installers create \l{Kits}{kits} and specify build and run settings for the installed device types. However, you might need to install and configure some additional software on the devices to be able to \l{Develop for Devices}{connect} to them from the computer. @@ -81,7 +81,7 @@ To create a new project, select \uicontrol File > \uicontrol{New Project} and select the type of your project. The contents of the wizard dialogs depend - on the project type and the \l{glossary-buildandrun-kit}{kits} that you + on the project type and the \l{Kits}{kits} that you select in the \uicontrol {Kit Selection} dialog. Follow the instructions of the wizard. diff --git a/doc/qtcreator/src/projects/creator-only/creator-projects-debuggers.qdoc b/doc/qtcreator/src/projects/creator-only/creator-projects-debuggers.qdoc index 59db5927051..a99de7c59ab 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-projects-debuggers.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-projects-debuggers.qdoc @@ -21,7 +21,7 @@ debugger of the low level virtual machine (LLVM) project, LLDB. The debugger plugin automatically selects a suitable native debugger for - each \l{glossary-buildandrun-kit}{kit} from the ones found on your system. + each \l{Kits}{kit} from the ones found on your system. To override this choice, select \preferences > \uicontrol Kits. To add debuggers: diff --git a/doc/qtcreator/src/projects/creator-only/creator-projects-kits.qdoc b/doc/qtcreator/src/projects/creator-only/creator-projects-kits.qdoc index 1e2b8ed818a..1237c748443 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-projects-kits.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-projects-kits.qdoc @@ -45,7 +45,7 @@ \li Select \uicontrol Add to start from an empty kit or \uicontrol Clone to clone the selected kit and edit its preferences. \image qtcreator-kits.png - \li Set \l{kits-tab}{kit preferences} according to the build system and + \li Set \l{Kits}{kit preferences} according to the build system and device type. \li Select \uicontrol OK to create the kit. @@ -58,8 +58,7 @@ choose the kit to use. To set the selected kit as the default kit, select \uicontrol {Make Default}. - \sa {Activate kits for a project}, {Add debuggers}, {Add Qt versions}, - {Open projects}, {Compilers}, {kits-tab}{Kits} + \sa {Manage Kits}{How To: Manage Kits}, {Compilers}, {Kits} */ /*! @@ -214,7 +213,6 @@ \uicontrol Manage to add installed Ninja tools to the list. \endtable - \sa {Activate kits for a project}, {Open projects}, {Add CMake Tools}, - {Add compilers}, {Add debuggers}, {Add kits}, {Add Qt versions}, + \sa {Manage Kits}{How To: Manage Kits}, {Add CMake Tools}, {Edit Qbs profiles} */ diff --git a/doc/qtcreator/src/projects/creator-only/creator-projects-nimble.qdoc b/doc/qtcreator/src/projects/creator-only/creator-projects-nimble.qdoc index c85da814661..a01c06b6559 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-projects-nimble.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-projects-nimble.qdoc @@ -20,7 +20,7 @@ \note Enable the Nim plugin to use Nimble and Nim. In addition, you have to download and install Nim and set up a - \l {glossary-buildandrun-kit}{kit} that contains the Nim compiler. + \l {Kits}{kit} that contains the Nim compiler. You can use wizards to create Nim and Nimble projects. diff --git a/doc/qtcreator/src/projects/creator-only/creator-projects-opening.qdoc b/doc/qtcreator/src/projects/creator-only/creator-projects-opening.qdoc index 66b69a573fe..67fc416ee7a 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-projects-opening.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-projects-opening.qdoc @@ -13,6 +13,7 @@ \previouspage creator-how-tos.html \ingroup creator-how-to-projects-configure + \ingroup creator-how-to-manage-kits \title Open projects @@ -64,7 +65,7 @@ \list 1 \li In \uicontrol {Configure Project}, select - \l{glossary-buildandrun-kit}{kits} for building + \l{Kits}{kits} for building and running your project. \image qtcreator-configure-project.webp {Configure Project view} \li Select \uicontrol {Configure Project}. @@ -112,5 +113,5 @@ later. Select the \inlineimage icons/pin.png (\uicontrol Pin) button to pin the progress bar back to the toggle button. - \sa {Activate kits for a project}, {Add kits}, {kits-tab}{Kits}, + \sa {Manage Kits}{How To: Manage Kits}, {Kits}, */ diff --git a/doc/qtcreator/src/projects/creator-only/creator-projects-settings-build-qbs.qdoc b/doc/qtcreator/src/projects/creator-only/creator-projects-settings-build-qbs.qdoc index b177af0b8d5..0c33472862d 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-projects-settings-build-qbs.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-projects-settings-build-qbs.qdoc @@ -11,7 +11,7 @@ \brief Settings for building applications with Qbs. - Specify build settings for the selected \l{glossary-buildandrun-kit}{kit} in + Specify build settings for the selected \l{Kits}{kit} in \uicontrol Projects > \uicontrol {Build & Run} > \uicontrol Build > \uicontrol {Build Settings}. diff --git a/doc/qtcreator/src/projects/creator-only/creator-projects-settings-build.qdoc b/doc/qtcreator/src/projects/creator-only/creator-projects-settings-build.qdoc index b3ababb5fbf..644b30ac3b1 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-projects-settings-build.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-projects-settings-build.qdoc @@ -16,7 +16,7 @@ \title Configure projects for building - Specify build settings for the selected \l{glossary-buildandrun-kit}{kit} in + Specify build settings for the selected \l{Kits}{kit} in \uicontrol Projects > \uicontrol {Build & Run} > \uicontrol Build > \uicontrol {Build Settings}. diff --git a/doc/qtcreator/src/projects/creator-only/creator-projects-settings-overview.qdoc b/doc/qtcreator/src/projects/creator-only/creator-projects-settings-overview.qdoc index 3f8e93f1421..75544e47e80 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-projects-settings-overview.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-projects-settings-overview.qdoc @@ -16,7 +16,7 @@ When you install Qt for a development or target platform, such as Linux, \macos, Windows, Android or QNX, \l{https://www.qt.io/download-qt-installer} - {\QOI} creates \l{glossary-buildandrun-kit}{kits} for the development targets. + {\QOI} creates \l{Kits}{kits} for the development targets. Select the kits to use for a project in the \uicontrol {Configure Projects} view when you open the project for the first time. At least one kit must be @@ -65,7 +65,7 @@ \section1 Specifying Run Settings The run settings to specify depend on the type of the project and on the - \l{kits-tab}{Run device} that you select for the kit. + \l{Kits}{Run device} that you select for the kit. \QC automatically creates deploy and run configurations for your project. @@ -112,6 +112,7 @@ \previouspage creator-how-tos.html \ingroup creator-how-to-projects-configure + \ingroup creator-how-to-manage-kits \title Activate kits for a project @@ -175,5 +176,5 @@ might still see them listed for existing projects. You can copy the build, deploy, and run steps from them to other kits. - \sa {Add kits}, {Configuring Projects}, {kits-tab}{Kits} + \sa {Manage Kits}{How To: Manage Kits}, {Configuring Projects}, {Kits} */ diff --git a/doc/qtcreator/src/projects/creator-only/creator-projects-settings-run-analyze.qdoc b/doc/qtcreator/src/projects/creator-only/creator-projects-settings-run-analyze.qdoc index 99802a720b6..9c1463f2d9b 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-projects-settings-run-analyze.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-projects-settings-run-analyze.qdoc @@ -9,7 +9,7 @@ \title Specify Valgrind settings for a project - Specify settings for running applications on the \l {kits-tab}{Run device} that + Specify settings for running applications on the \l {Kits}{Run device} that you select for a kit in \uicontrol Projects > \uicontrol {Build & Run} > \uicontrol Run > \uicontrol {Run Settings}. diff --git a/doc/qtcreator/src/projects/creator-only/creator-projects-settings-run-debug.qdoc b/doc/qtcreator/src/projects/creator-only/creator-projects-settings-run-debug.qdoc index b0609ab7716..486b8b8c4c5 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-projects-settings-run-debug.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-projects-settings-run-debug.qdoc @@ -10,7 +10,7 @@ \title Enable debugging - Specify settings for running applications on the \l {kits-tab}{Run device} that + Specify settings for running applications on the \l {Kits}{Run device} that you select for a kit in \uicontrol Projects > \uicontrol {Build & Run} > \uicontrol Run > \uicontrol {Run Settings}. diff --git a/doc/qtcreator/src/projects/creator-only/creator-projects-settings-run-desktop.qdoc b/doc/qtcreator/src/projects/creator-only/creator-projects-settings-run-desktop.qdoc index 72085701e16..35188f5ce94 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-projects-settings-run-desktop.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-projects-settings-run-desktop.qdoc @@ -11,7 +11,7 @@ \brief Settings for running applications on desktop device types. - Specify settings for running applications on the \l {kits-tab}{Run device} that + Specify settings for running applications on the \l {Kits}{Run device} that you select for a kit in \uicontrol Projects > \uicontrol {Build & Run} > \uicontrol Run > \uicontrol {Run Settings}. diff --git a/doc/qtcreator/src/projects/creator-only/creator-projects-settings-run.qdoc b/doc/qtcreator/src/projects/creator-only/creator-projects-settings-run.qdoc index bf816f43511..f989924d560 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-projects-settings-run.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-projects-settings-run.qdoc @@ -16,7 +16,7 @@ \title Configure projects for running - Specify settings for running applications on the \l {kits-tab}{Run device} that + Specify settings for running applications on the \l {Kits}{Run device} that you select for a kit in \uicontrol Projects > \uicontrol {Build & Run} > \uicontrol Run > \uicontrol {Run Settings}. diff --git a/doc/qtcreator/src/projects/creator-projects-running.qdoc b/doc/qtcreator/src/projects/creator-projects-running.qdoc index 1dd25de23a0..f83a9c00ba7 100644 --- a/doc/qtcreator/src/projects/creator-projects-running.qdoc +++ b/doc/qtcreator/src/projects/creator-projects-running.qdoc @@ -28,7 +28,7 @@ \li Select the \uicontrol {Build and Run Kit Selector} icon or go to \uicontrol Build > \uicontrol {Open Build and Run Kit Selector} to select the - build and run \l{glossary-buildandrun-kit}{kit}. + build and run \l{Kits}{kit}. \image qtcreator-kit-selector.webp {Kit selector} diff --git a/doc/qtcreator/src/python/creator-python-development.qdoc b/doc/qtcreator/src/python/creator-python-development.qdoc index 8978c09d609..ba8053c3d3d 100644 --- a/doc/qtcreator/src/python/creator-python-development.qdoc +++ b/doc/qtcreator/src/python/creator-python-development.qdoc @@ -74,7 +74,7 @@ \section1 Select the Python version - The \l{kits-tab}{kits} you select for the project in \uicontrol Projects > + The \l{Kits}{kits} you select for the project in \uicontrol Projects > \uicontrol {Build & Run} set the Python version to use. The \l {Edit Mode}{Edit mode} toolbar shows the current Python version. diff --git a/doc/qtcreator/src/python/creator-python-run-settings.qdoc b/doc/qtcreator/src/python/creator-python-run-settings.qdoc index 6c6c3b4fe2b..07cf625450d 100644 --- a/doc/qtcreator/src/python/creator-python-run-settings.qdoc +++ b/doc/qtcreator/src/python/creator-python-run-settings.qdoc @@ -31,7 +31,7 @@ \brief Settings for running Qt for Python applications. - Specify settings for running applications on the \l {kits-tab}{Run device} that + Specify settings for running applications on the \l {Kits}{Run device} that you select for a kit in \uicontrol Projects > \uicontrol {Build & Run} > \uicontrol Run > \uicontrol {Run Settings}. diff --git a/doc/qtcreator/src/qnx/creator-projects-settings-run-qnx.qdoc b/doc/qtcreator/src/qnx/creator-projects-settings-run-qnx.qdoc index 4e39314d8f5..edd78c0a193 100644 --- a/doc/qtcreator/src/qnx/creator-projects-settings-run-qnx.qdoc +++ b/doc/qtcreator/src/qnx/creator-projects-settings-run-qnx.qdoc @@ -11,7 +11,7 @@ \brief Settings for running applications on Linux-based devices. - Specify settings for running applications on the \l {kits-tab}{Run device} that + Specify settings for running applications on the \l {Kits}{Run device} that you select for a kit in \uicontrol Projects > \uicontrol {Build & Run} > \uicontrol Run > \uicontrol {Run Settings}. diff --git a/doc/qtcreator/src/qtquick/creator-only/creator-projects-settings-run-qtquick.qdoc b/doc/qtcreator/src/qtquick/creator-only/creator-projects-settings-run-qtquick.qdoc index 3f2ee989012..1d7be468c7b 100644 --- a/doc/qtcreator/src/qtquick/creator-only/creator-projects-settings-run-qtquick.qdoc +++ b/doc/qtcreator/src/qtquick/creator-only/creator-projects-settings-run-qtquick.qdoc @@ -11,11 +11,11 @@ \brief Settings for running Qt Quick UI Prototype projects (.qmlproject). - Specify settings for running applications on the \l {kits-tab}{Run device} that + Specify settings for running applications on the \l {Kits}{Run device} that you select for a kit in \uicontrol Projects > \uicontrol {Build & Run} > \uicontrol Run > \uicontrol {Run Settings}. - \note Select the \uicontrol Desktop device type for the \l{kits-tab}{Run device} + \note Select the \uicontrol Desktop device type for the \l{Kits}{Run device} in the kit. \image qtquick-ui-prototype-run-settings.webp {Run Settings for a Qt Quick UI Prototype project} @@ -42,5 +42,5 @@ \endtable \sa {Create Qt Quick UI Prototypes}, {Activate kits for a project}, - {Configure projects for running}, {kits-tab}{Kits} + {Configure projects for running}, {Kits} */ diff --git a/doc/qtcreator/src/qtquick/creator-only/qtquick-creating.qdoc b/doc/qtcreator/src/qtquick/creator-only/qtquick-creating.qdoc index 0fbb4fdea07..f7181c59cf1 100644 --- a/doc/qtcreator/src/qtquick/creator-only/qtquick-creating.qdoc +++ b/doc/qtcreator/src/qtquick/creator-only/qtquick-creating.qdoc @@ -76,12 +76,12 @@ \li Select \uicontrol Next to open the \uicontrol {Kit Selection} dialog. - \li Select \l{glossary-buildandrun-kit}{kits} for the platforms that + \li Select \l{Kits}{kits} for the platforms that you want to build the application for. \note Kits are listed if they have been specified in \preferences > \uicontrol Kits. - For more information, see \l {Add kits} and \l {kits-tab}{Kits}. + For more information, see \l {Add kits} and \l {Kits}. \li Select \uicontrol Next to open the \uicontrol {Project Management} dialog. @@ -161,12 +161,11 @@ \li Select \uicontrol Next to open the \uicontrol {Kit Selection} dialog. - \li Select \l{glossary-buildandrun-kit}{kits} for the platforms that + \li Select \l{Kits}{kits} for the platforms that you want to build the application for. \note Kits are listed if they have been specified in \preferences > \uicontrol Kits. - For more information, see \l {Add kits} and \l {kits-tab}{Kits}. \li Select \uicontrol Next to open the \uicontrol {Project Management} dialog. @@ -197,5 +196,6 @@ To use JavaScript and image files in the application, copy them to the project folder. - \sa {Create Qt Quick Applications}, {Creating Projects} + \sa {Create Qt Quick Applications}, {Manage Kits}{How To: Manage Kits}, + {Creating Projects} */ diff --git a/doc/qtcreator/src/qtquick/creator-only/qtquick-tutorial-create-empty-project.qdocinc b/doc/qtcreator/src/qtquick/creator-only/qtquick-tutorial-create-empty-project.qdocinc index be0c55516a9..22d887c161c 100644 --- a/doc/qtcreator/src/qtquick/creator-only/qtquick-tutorial-create-empty-project.qdocinc +++ b/doc/qtcreator/src/qtquick/creator-only/qtquick-tutorial-create-empty-project.qdocinc @@ -37,14 +37,14 @@ \li Select \uicontrol Next to open the \uicontrol {Kit Selection} dialog. - \li Select Qt 6.4 or later \l{glossary-buildandrun-kit}{kits} for the + \li Select Qt 6.4 or later \l{Kits}{kits} for the platforms that you want to build the application for. To build applications for mobile devices, select kits also for Android and iOS. \note The list shows kits that you specify in \preferences > \uicontrol Kits. - For more information, see \l {Add kits} and \l {kits-tab}{Kits}. + For more information, see \l {Add kits} and \l {Kits}. \li Select \uicontrol Next to open the \uicontrol {Project Management} dialog. diff --git a/doc/qtcreator/src/qtquick/qtquick-profiler.qdoc b/doc/qtcreator/src/qtquick/qtquick-profiler.qdoc index b22bd5be5e7..eb74c5b547d 100644 --- a/doc/qtcreator/src/qtquick/qtquick-profiler.qdoc +++ b/doc/qtcreator/src/qtquick/qtquick-profiler.qdoc @@ -37,7 +37,7 @@ \li Set up QML debugging for the project. For more information, see \l{Setting Up QML Debugging}. \if defined(qtcreator) - \li In the \uicontrol Projects mode, select a \l{glossary-buildandrun-kit} + \li In the \uicontrol Projects mode, select a \l{Kits} {kit} with Qt version 4.7.4 or later. \endif \note To profile applications on \l{glossary-device}{devices}, you diff --git a/doc/qtcreator/src/user-interface/creator-reference-output-views.qdoc b/doc/qtcreator/src/user-interface/creator-reference-output-views.qdoc index 0381320085f..5116000256c 100644 --- a/doc/qtcreator/src/user-interface/creator-reference-output-views.qdoc +++ b/doc/qtcreator/src/user-interface/creator-reference-output-views.qdoc @@ -294,6 +294,6 @@ \sa {View output} \if defined(qtcreator) - \sa {Add custom output parsers} + \sa {Add custom output parsers}, {Kits} \endif */ diff --git a/doc/qtcreator/src/user-interface/creator-ui.qdoc b/doc/qtcreator/src/user-interface/creator-ui.qdoc index 9794667f5b3..b6a4686f473 100644 --- a/doc/qtcreator/src/user-interface/creator-ui.qdoc +++ b/doc/qtcreator/src/user-interface/creator-ui.qdoc @@ -33,7 +33,7 @@ \row \li \inlineimage numbers/02.png \li Kit selector - \li Select the appropriate \l{glossary-buildandrun-kit}{kit} for building + \li Select the appropriate \l{Kits}{kit} for building the project and running it on particular hardware. \li \l{Activate kits for a project} \row diff --git a/doc/qtcreator/src/widgets/qtdesigner-app-tutorial.qdoc b/doc/qtcreator/src/widgets/qtdesigner-app-tutorial.qdoc index 8f744bced05..4596d46da2e 100644 --- a/doc/qtcreator/src/widgets/qtdesigner-app-tutorial.qdoc +++ b/doc/qtcreator/src/widgets/qtdesigner-app-tutorial.qdoc @@ -76,7 +76,7 @@ \image qtcreator-new-project-qt-versions-qt-gui.png {Kit Selection dialog} - \li Select build and run \l{glossary-buildandrun-kit}{kits} for your + \li Select build and run \l{Kits}{kits} for your project. \li Select \uicontrol Next or \uicontrol Continue to open the From 70538bf38ce4f75dd5c2c114ea559db8a8977ded Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20L=C3=B6hning?= Date: Thu, 6 Jun 2024 21:59:26 +0200 Subject: [PATCH 05/30] SquishTests: Handle and report missed breakpoint instead of crashing Change-Id: I28756803149828da871d48303ac0c989a2e99f7e Reviewed-by: Christian Stenger --- tests/system/suite_debugger/tst_debug_empty_main/test.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tests/system/suite_debugger/tst_debug_empty_main/test.py b/tests/system/suite_debugger/tst_debug_empty_main/test.py index d62f76cdebf..2d166d2a876 100644 --- a/tests/system/suite_debugger/tst_debug_empty_main/test.py +++ b/tests/system/suite_debugger/tst_debug_empty_main/test.py @@ -91,6 +91,9 @@ def performDebugging(projectName): invokeMenuItem("Debug", "Enable or Disable Breakpoint") clickButton(waitForObject(":*Qt Creator.Start Debugging_Core::Internal::FancyToolButton")) handleDebuggerWarnings(config, isMsvc) - clickButton(waitForObject(":*Qt Creator.Continue_Core::Internal::FancyToolButton")) + continueButtonStr = ":*Qt Creator.Continue_Core::Internal::FancyToolButton" + if test.verify(waitFor(lambda: object.exists(continueButtonStr), 20000), + "Did the debugger stop at the breakpoint as expected?"): + clickButton(waitForObject(continueButtonStr, 1000)) __handleAppOutputWaitForDebuggerFinish__() removeOldBreakpoints() From c1c462ab115b4fd1e1abe2a319c19b510a7e0968 Mon Sep 17 00:00:00 2001 From: Leena Miettinen Date: Fri, 14 Jun 2024 16:52:30 +0200 Subject: [PATCH 06/30] Doc: Mention "Compiler Explorer Qt & C++ Source" template Task-number: QTCREATORBUG-30604 Change-Id: I9f21d21086cff38923a2ef2f398d68b2f8652470 Reviewed-by: Marcus Tillmanns --- dist/changelog/changes-14.0.0.md | 4 +++- ...creator-new-project-compiler-explorer.webp | Bin 0 -> 10908 bytes ...how-to-create-compiler-explorer-setup.qdoc | 18 +++++++++++++----- 3 files changed, 16 insertions(+), 6 deletions(-) create mode 100644 doc/qtcreator/images/qtcreator-new-project-compiler-explorer.webp diff --git a/dist/changelog/changes-14.0.0.md b/dist/changelog/changes-14.0.0.md index e5dc688e599..1d33c9fc9bd 100644 --- a/dist/changelog/changes-14.0.0.md +++ b/dist/changelog/changes-14.0.0.md @@ -110,7 +110,9 @@ Editing ### Compiler Explorer -* Added a wizard template for code that uses Qt +* Added a wizard template for code that uses Qt to `File`> `New File`> + `Compiler Explorer` + [Documentation](https://doc.qt.io/qtcreator/creator-how-to-create-compiler-explorer-sessions.html) ### Models diff --git a/doc/qtcreator/images/qtcreator-new-project-compiler-explorer.webp b/doc/qtcreator/images/qtcreator-new-project-compiler-explorer.webp new file mode 100644 index 0000000000000000000000000000000000000000..3744f4100fab70480d0d45b5b8695059b5c9cce0 GIT binary patch literal 10908 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 literal 0 HcmV?d00001 diff --git a/doc/qtcreator/src/projects/creator-only/creator-how-to-create-compiler-explorer-setup.qdoc b/doc/qtcreator/src/projects/creator-only/creator-how-to-create-compiler-explorer-setup.qdoc index b35df2e6707..a8bc0f11d4b 100644 --- a/doc/qtcreator/src/projects/creator-only/creator-how-to-create-compiler-explorer-setup.qdoc +++ b/doc/qtcreator/src/projects/creator-only/creator-how-to-create-compiler-explorer-setup.qdoc @@ -9,19 +9,27 @@ \title Create compiler explorer sessions - To create a compiler explorer session for a C++ or Python project: + \note Enable the Compiler Explorer plugin to use it. + + To create a compiler explorer session for a Qt and C++, C++, or Python + project: \list 1 \li Go to \uicontrol File > \uicontrol {New File}. - \li Select \uicontrol {Compiler Explorer} > \uicontrol C++ or - \uicontrol Python > \uicontrol Choose. + \li Select \uicontrol {Compiler Explorer}, and then select one of the + following: + \list + \li \uicontrol {Compiler Explorer C++ Source} + \li \uicontrol {Compiler Explorer Python Source} + \li \uicontrol {Compiler Explorer Qt & C++ Source} + \endlist + \image qtcreator-new-project-compiler-explorer.webp {New File dialog} + \li Select \uicontrol Choose. \li Follow the instructions of the wizard to create an example compiler explorer session as a JSON-based \c .qtce file and to open it. \endlist - \note Enable the Compiler Explorer plugin to use it. - \sa {Create files}, {Enable and disable plugins}, {Explore compiler code} */ From c246cb87084646d28702add0c7609fbb47879356 Mon Sep 17 00:00:00 2001 From: David Schulz Date: Tue, 18 Jun 2024 07:44:53 +0200 Subject: [PATCH 07/30] LanguageClient: postpone unreachable server error reporting Since the overall nature of the communication is asynchronous calling functions might not expect that an error is reported from within the sendMessage function. Fixes: QTCREATORBUG-31054 Change-Id: Ie73510eb632408a9f7a9367c3a3e47ad021da7fe Reviewed-by: Christian Kandeler --- src/plugins/languageclient/client.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/plugins/languageclient/client.cpp b/src/plugins/languageclient/client.cpp index c12693e4808..2ec4d41dbf3 100644 --- a/src/plugins/languageclient/client.cpp +++ b/src/plugins/languageclient/client.cpp @@ -735,7 +735,7 @@ void Client::openDocument(TextEditor::TextDocument *document) void Client::sendMessage(const JsonRpcMessage &message, SendDocUpdates sendUpdates, Schedule semanticTokensSchedule) { - QScopeGuard guard([responseHandler = message.responseHandler()](){ + QScopeGuard guard([this, responseHandler = message.responseHandler()](){ if (responseHandler) { static ResponseError error; if (!error.isValid()) { @@ -745,7 +745,9 @@ void Client::sendMessage(const JsonRpcMessage &message, SendDocUpdates sendUpdat QJsonObject response; response[idKey] = responseHandler->id; response[errorKey] = QJsonObject(error); - responseHandler->callback(JsonRpcMessage(response)); + QMetaObject::invokeMethod(this, [callback = responseHandler->callback, response](){ + callback(JsonRpcMessage(response)); + }, Qt::QueuedConnection); } }); From 441ce652e7f9325babe8230693ea6723d2b7d4cd Mon Sep 17 00:00:00 2001 From: Christian Stenger Date: Tue, 18 Jun 2024 07:34:45 +0200 Subject: [PATCH 08/30] Lua: Small tweak of wizard file Change-Id: Ifef368aa646589d75f761c9893a18fa77b1b179c Reviewed-by: Marcus Tillmanns --- src/plugins/lua/wizards/plugin/wizard.json | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/src/plugins/lua/wizards/plugin/wizard.json b/src/plugins/lua/wizards/plugin/wizard.json index b897f1eb141..a295dc27d45 100644 --- a/src/plugins/lua/wizards/plugin/wizard.json +++ b/src/plugins/lua/wizards/plugin/wizard.json @@ -1,7 +1,7 @@ { "version": 1, "supportedProjectTypes": [ - "Qt4ProjectManager.Qt4Project" + "ProjectExplorer.WorkspaceProject" ], "id": "R.QtCreatorLuaPlugin", "category": "G.Library", @@ -9,11 +9,7 @@ "trDisplayName": "Qt Creator Lua Plugin", "trDisplayCategory": "Library", "iconText": "LuaP", - "featuresRequired": [ - "QtSupport.Wizards.FeatureQt", - "QtSupport.Wizards.FeatureDesktop" - ], - "enabled": "%{JS: value('Plugins').indexOf('CMakeProjectManager') >= 0}", + "featuresRequired": [], "options": [ { "key": "ProjectFile", @@ -26,14 +22,6 @@ { "key": "SrcFileName", "value": "init.lua" - }, - { - "key": "CN", - "value": "%{JS: Cpp.className(value('PluginName') + 'Plugin')}" - }, - { - "key": "HasTranslation", - "value": "%{JS: value('TsFileName') !== ''}" } ], "pages": [ From 5f8ffd66ff1b1383bc4caff0c8dc725ee3966d1e Mon Sep 17 00:00:00 2001 From: David Schulz Date: Thu, 6 Jun 2024 09:30:17 +0200 Subject: [PATCH 09/30] QmlJSEditor: fix assigning outline toolbar widget Instead of adding a second toolbar widget, replace the current one. This avoids weird situations where you get two outline toolbar widgets, one provided by qmljseditorwidget and another one provided by qmlls. Turning the language server on deletes the combobox created by qmljseditorwidget, such that qmljseditorwidget has to recreate its combobox after the language server stopped being in use. Also make sure that m_outlineCombo is set to nullptr after it gets deleted, such that late jumpToOutlineElement and updateOutlineIndexNow() calls do no try to attempt stuff on an already free'd pointer. Change-Id: Ie323a7b3e7a4d5e24407fcedf8383dd2f0efe525 Reviewed-by: Ulf Hermann Reviewed-by: David Schulz Reviewed-by: Fabian Kosmale --- src/plugins/qmljseditor/qmljseditor.cpp | 17 ++++++++++++++++- src/plugins/qmljseditor/qmljseditor.h | 1 + 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/plugins/qmljseditor/qmljseditor.cpp b/src/plugins/qmljseditor/qmljseditor.cpp index 540e5559de6..11dc5cf9ae8 100644 --- a/src/plugins/qmljseditor/qmljseditor.cpp +++ b/src/plugins/qmljseditor/qmljseditor.cpp @@ -267,6 +267,8 @@ bool QmlJSEditorWidget::isOutlineCursorChangesBlocked() void QmlJSEditorWidget::jumpToOutlineElement(int /*index*/) { + if (!m_outlineCombo) + return; QModelIndex index = m_outlineCombo->view()->currentIndex(); SourceLocation location = m_qmlJsEditorDocument->outlineModel()->sourceLocation(index); @@ -285,6 +287,8 @@ void QmlJSEditorWidget::jumpToOutlineElement(int /*index*/) void QmlJSEditorWidget::updateOutlineIndexNow() { + if (!m_outlineCombo) + return; if (!m_qmlJsEditorDocument->outlineModel()->document()) return; @@ -570,8 +574,19 @@ void QmlJSEditorWidget::createToolBar() connect(this, &QmlJSEditorWidget::cursorPositionChanged, &m_updateOutlineIndexTimer, QOverload<>::of(&QTimer::start)); + connect(this, &QmlJSEditorWidget::toolbarOutlineChanged, + this, &QmlJSEditorWidget::updateOutline); - insertExtraToolBarWidget(TextEditorWidget::Left, m_outlineCombo); + setToolbarOutline(m_outlineCombo); +} + +void QmlJSEditorWidget::updateOutline(QWidget *newOutline) +{ + if (!newOutline) { + createToolBar(); + } else if (newOutline != m_outlineCombo){ + m_outlineCombo = nullptr; + } } class CodeModelInspector : public MemberProcessor diff --git a/src/plugins/qmljseditor/qmljseditor.h b/src/plugins/qmljseditor/qmljseditor.h index d5279fe78e7..0929fa552a4 100644 --- a/src/plugins/qmljseditor/qmljseditor.h +++ b/src/plugins/qmljseditor/qmljseditor.h @@ -79,6 +79,7 @@ protected: void scrollContentsBy(int dx, int dy) override; void applyFontSettings() override; void createToolBar(); + void updateOutline(QWidget *newOutline); void findLinkAt(const QTextCursor &cursor, const Utils::LinkHandler &processLinkCallback, bool resolveTarget = true, From fe67cd39561e82eac1990f4f7b1dd78f6804bb0c Mon Sep 17 00:00:00 2001 From: Marco Bubke Date: Fri, 14 Jun 2024 19:36:17 +0200 Subject: [PATCH 10/30] Fix errors and warnings in appdata.xml { "errors": [ "appstream-missing-developer-name", "appstream-failed-validation" ], "warnings": [ "appstream-summary-too-long", "appstream-screenshot-missing-caption" ], "appstream": [ "W: io.qt.QtCreator:29: screenshot-default-missing", "E: io.qt.QtCreator:~: desktop-app-launchable-missing" ], "message": "Please consult the documentation at https://docs.flathub.org/docs/for-app-authors/linter" } Change-Id: Ief1cb6300c0976962bfbf436db9d69bc4a97850c Reviewed-by: Eike Ziller --- ...rg.qt-project.qtcreator.appdata.xml.cmakein | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/share/metainfo/org.qt-project.qtcreator.appdata.xml.cmakein b/share/metainfo/org.qt-project.qtcreator.appdata.xml.cmakein index 32d10990aaa..c3a27292a77 100644 --- a/share/metainfo/org.qt-project.qtcreator.appdata.xml.cmakein +++ b/share/metainfo/org.qt-project.qtcreator.appdata.xml.cmakein @@ -3,7 +3,10 @@ org.qt-project.qtcreator.desktop Qt Creator - Provides a cross-platform, complete integrated development environment (IDE) for application developers to create applications for multiple platforms and devices + + Qt Project + + Cross-platform integrated development environment (IDE) CC0-1.0 GPL-3.0 @@ -23,16 +26,27 @@ newcomers to Qt.

+ org.qt-project.qtcreator.desktop https://www.qt.io/ide/ Qt + + Application development life-cycle + https://doc.qt.io/qtcreator/images/qt-app-dev-flow.webp + + Overview https://doc.qt.io/qtcreator/images/qtcreator-breakdown.png - https://doc.qt.io/qtcreator/images/qtcreator-gs-build-example-open.png + Examples + https://doc.qt.io/qtcreator/images/qtcreator-examples-open.webp + + + Code editor + https://doc.qt.io/qtcreator/images/qtcreator-spliteditorview.png From ba0f65937f6c2c06a6a61a97c81a730a6f57ca3d Mon Sep 17 00:00:00 2001 From: Marco Bubke Date: Sat, 15 Jun 2024 08:13:19 +0200 Subject: [PATCH 11/30] Add changelog to appdata.xml release Change-Id: I6f8472c5e36e808373d390ee23b05cba9d814c91 Reviewed-by: Eike Ziller --- share/metainfo/org.qt-project.qtcreator.appdata.xml.cmakein | 1 + 1 file changed, 1 insertion(+) diff --git a/share/metainfo/org.qt-project.qtcreator.appdata.xml.cmakein b/share/metainfo/org.qt-project.qtcreator.appdata.xml.cmakein index c3a27292a77..c7f4c18cf63 100644 --- a/share/metainfo/org.qt-project.qtcreator.appdata.xml.cmakein +++ b/share/metainfo/org.qt-project.qtcreator.appdata.xml.cmakein @@ -54,6 +54,7 @@

Qt Creator v${IDE_VERSION_DISPLAY}

+ https://github.com/qt-creator/qt-creator/releases/tag/v${IDE_VERSION_DISPLAY}
From b08421af2e9f28e8a3ff601347aa5ed69c1adf8c Mon Sep 17 00:00:00 2001 From: Leena Miettinen Date: Tue, 18 Jun 2024 13:15:55 +0200 Subject: [PATCH 12/30] Doc: Mention how conditions on SCXML transitions are shown Task-number: QTCREATORBUG-30604 Change-Id: Ib1c7806951d63c558e0a98aea2f618c2c397acaa Reviewed-by: Eike Ziller --- dist/changelog/changes-14.0.0.md | 3 ++- doc/qtcreator/src/editors/creator-only/creator-scxml.qdoc | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/dist/changelog/changes-14.0.0.md b/dist/changelog/changes-14.0.0.md index 1d33c9fc9bd..ee0aaf7cc9d 100644 --- a/dist/changelog/changes-14.0.0.md +++ b/dist/changelog/changes-14.0.0.md @@ -122,8 +122,9 @@ Editing ### SCXML -* Added visualization of conditions on transitions +* Added visualization of conditions on transitions by using square brackets: `[]` ([QTCREATORBUG-21946](https://bugreports.qt.io/browse/QTCREATORBUG-21946)) + ([Documentation](https://doc-snapshots.qt.io/qtcreator-14.0/creator-scxml.html)) Projects -------- diff --git a/doc/qtcreator/src/editors/creator-only/creator-scxml.qdoc b/doc/qtcreator/src/editors/creator-only/creator-scxml.qdoc index 80ffbe8ab2b..1600c557a95 100644 --- a/doc/qtcreator/src/editors/creator-only/creator-scxml.qdoc +++ b/doc/qtcreator/src/editors/creator-only/creator-scxml.qdoc @@ -233,6 +233,9 @@ The editor center-aligns transition labels, but you can drag them to other positions. + Conditions on transitions appear below the transition lines within square + brackets ([]). + To add edge points to transitions, select a transition line. You can add only two edge points for each line. The editor automatically removes unnecessary edge points. To remove the selected edge point, select From 12d222636d8d881e8f94dd20fcdd66614213a7d9 Mon Sep 17 00:00:00 2001 From: Alessandro Portale Date: Tue, 18 Jun 2024 16:33:53 +0200 Subject: [PATCH 13/30] Core: Add Tag variant to Core::Button As specified as Figma component. Change-Id: Id115fe5703b58902bc7479e966787c969e6b073d Reviewed-by: Cristian Adam --- src/plugins/coreplugin/welcomepagehelper.cpp | 17 +++++++++++++++++ src/plugins/coreplugin/welcomepagehelper.h | 1 + 2 files changed, 18 insertions(+) diff --git a/src/plugins/coreplugin/welcomepagehelper.cpp b/src/plugins/coreplugin/welcomepagehelper.cpp index 3fc432f7d01..1486ba95ea1 100644 --- a/src/plugins/coreplugin/welcomepagehelper.cpp +++ b/src/plugins/coreplugin/welcomepagehelper.cpp @@ -118,6 +118,10 @@ static const TextFormat &buttonTF(Button::Role role, WidgetState state) static const TextFormat smallLinkHoveredTF {Theme::Token_Text_Accent, smallLinkDefaultTF.uiElement, smallLinkDefaultTF.drawTextFlags}; + static const TextFormat tagDefaultTF + {Theme::Token_Text_Muted, StyleHelper::UiElement::UiElementLabelMedium}; + static const TextFormat tagHoverTF + {Theme::Token_Text_Default, tagDefaultTF.uiElement}; switch (role) { case Button::MediumPrimary: return mediumPrimaryTF; @@ -128,6 +132,8 @@ static const TextFormat &buttonTF(Button::Role role, WidgetState state) : smallListCheckedTF; case Button::SmallLink: return (state == WidgetStateDefault) ? smallLinkDefaultTF : smallLinkHoveredTF; + case Button::Tag: return (state == WidgetStateDefault) ? tagDefaultTF + : tagHoverTF; } return mediumPrimaryTF; } @@ -218,6 +224,13 @@ void Button::paintEvent(QPaintEvent *event) } case SmallLink: break; + case Tag: { + const QBrush fill(hovered ? creatorColor(Theme::Token_Foreground_Subtle) + : QBrush(Qt::NoBrush)); + const QPen outline(hovered ? QPen(Qt::NoPen) : creatorColor(Theme::Token_Stroke_Subtle)); + drawCardBackground(&p, bgR, fill, outline, brRectRounding); + break; + } } if (!m_pixmap.isNull()) { @@ -244,6 +257,10 @@ void Button::setPixmap(const QPixmap &pixmap) void Button::updateMargins() { + if (m_role == Tag) { + setContentsMargins(HPaddingXs, VPaddingXxs, HPaddingXs, VPaddingXxs); + return; + } const bool tokenSizeS = m_role == MediumPrimary || m_role == MediumSecondary || m_role == SmallList || m_role == SmallLink; const int gap = tokenSizeS ? HGapS : HGapXs; diff --git a/src/plugins/coreplugin/welcomepagehelper.h b/src/plugins/coreplugin/welcomepagehelper.h index eb3082129a1..e1c9199cfe4 100644 --- a/src/plugins/coreplugin/welcomepagehelper.h +++ b/src/plugins/coreplugin/welcomepagehelper.h @@ -80,6 +80,7 @@ public: SmallSecondary, SmallList, SmallLink, + Tag, }; explicit Button(const QString &text, Role role, QWidget *parent = nullptr); From a8e2ccdea6957f9a9e14d98f8abfa630889d485b Mon Sep 17 00:00:00 2001 From: Cristian Adam Date: Mon, 17 Jun 2024 16:27:36 +0200 Subject: [PATCH 14/30] CMakePM: Expand CMake macros in the "vendor" debugger settings Qt Creator will use the CMake macro expander for the "vendor" string entries. This would allow the following CMake preset snippet to work as a CMake preset user would expect it to: ``` "vendor": { "qt.io/QtCreator/1.0": { "debugger": { "DisplayName": "LLDB Dap 18.1.7 Debugger", "Abis": ["arm-darwin-generic-mach_o-64bit"], "Binary": "$env{HOME}/llvm/clang/bin/lldb-dap", "EngineType": 1024, "Version": "18.1.7" } } } ``` Change-Id: I4ea5ce0b004ff05cebbe3e0ce4b6bcc09c716322 Reviewed-by: Alessandro Portale --- .../cmakeprojectimporter.cpp | 46 ++++++++++++++++--- 1 file changed, 39 insertions(+), 7 deletions(-) diff --git a/src/plugins/cmakeprojectmanager/cmakeprojectimporter.cpp b/src/plugins/cmakeprojectmanager/cmakeprojectimporter.cpp index 998ccbf7ca8..69511b0fc07 100644 --- a/src/plugins/cmakeprojectmanager/cmakeprojectimporter.cpp +++ b/src/plugins/cmakeprojectmanager/cmakeprojectimporter.cpp @@ -211,15 +211,46 @@ FilePaths CMakeProjectImporter::presetCandidates() return candidates; } +class DebuggerCMakeExpander +{ + const PresetsDetails::ConfigurePreset &preset; + const Environment &env; + const FilePath &projectDirectory; + +public: + DebuggerCMakeExpander( + const PresetsDetails::ConfigurePreset &p, const Environment &e, const FilePath &projectDir) + : preset(p) + , env(e) + , projectDirectory(projectDir) + {} + + QString expand(const QString &value) const + { + QString result{value}; + CMakePresets::Macros::expand(preset, env, projectDirectory, result); + return result; + } + + QVariantMap expand(const QVariantMap &map) const + { + QVariantMap result{map}; + for (auto it = result.begin(); it != result.end(); ++it) + if (it->canConvert()) + it->setValue(expand(it->toString())); + return result; + } +}; + static QVariant findOrRegisterDebugger( - Environment &env, const std::optional &vendor, const QString &presetName) + Environment &env, const PresetsDetails::ConfigurePreset &preset, const DebuggerCMakeExpander& expander) { const QString debuggerKey("debugger"); - if (!vendor || !vendor.value().contains(debuggerKey)) + if (!preset.vendor || !preset.vendor.value().contains(debuggerKey)) return {}; - const QVariant debuggerVariant = vendor.value().value(debuggerKey); - FilePath debuggerPath = FilePath::fromUserInput(debuggerVariant.toString()); + const QVariant debuggerVariant = preset.vendor.value().value(debuggerKey); + FilePath debuggerPath = FilePath::fromUserInput(expander.expand(debuggerVariant.toString())); if (!debuggerPath.isEmpty()) { if (debuggerPath.isRelativePath()) debuggerPath = env.searchInPath(debuggerPath.fileName()); @@ -228,7 +259,7 @@ static QVariant findOrRegisterDebugger( DebuggerItem debugger; debugger.setCommand(debuggerPath); debugger.setUnexpandedDisplayName( - mainName.arg(presetName).arg(debuggerPath.completeBaseName())); + mainName.arg(preset.name).arg(debuggerPath.completeBaseName())); debugger.setAutoDetected(false); QString errorMessage; debugger.reinitializeFromFile(&errorMessage, &env); @@ -246,7 +277,7 @@ static QVariant findOrRegisterDebugger( if (!debuggerMap.contains("Id")) debuggerMap.insert("Id", QUuid::createUuid().toString()); - auto store = storeFromMap(debuggerMap); + auto store = storeFromMap(expander.expand(debuggerMap)); DebuggerItem debugger(store); return DebuggerItemManager::registerDebugger(debugger); @@ -883,7 +914,8 @@ QList CMakeProjectImporter::examineDirectory(const FilePath &importPath, data->hasQmlDebugging = CMakeBuildConfiguration::hasQmlDebugging(config); - data->debugger = findOrRegisterDebugger(env, configurePreset.vendor, configurePreset.name); + data->debugger = findOrRegisterDebugger( + env, configurePreset, DebuggerCMakeExpander(configurePreset, env, projectDirectory())); QByteArrayList buildConfigurationTypes = {cache.valueOf("CMAKE_BUILD_TYPE")}; if (buildConfigurationTypes.front().isEmpty()) { From ded397ca559cecb97a6b33f899c4abe8f7aac7da Mon Sep 17 00:00:00 2001 From: Cristian Adam Date: Tue, 18 Jun 2024 16:55:28 +0200 Subject: [PATCH 15/30] Sqlite: Fix build with QTC_STATIC_BUILD MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Qt Creator was failing with: ``` In file included from /home/jarek/dev/creator-14-work/src/libs/sqlite/ sqliteexception.h:6, from /home/jarek/dev/creator-14-work/src/libs/sqlite/ sqlitevalue.h:7, from /home/jarek/dev/creator-14-work/src/plugins/ qmldesigner/designercore/projectstorage/projectstorageinfotypes.h:8, from /home/jarek/dev/creator-14-work/src/plugins/ qmldesigner/designercore/projectstorage/projectstoragetypes.h:8, from /home/jarek/dev/creator-14-work/src/plugins/ qmldesigner/designercore/include/propertymetainfo.h:9, from /home/jarek/dev/creator-14-work/src/plugins/ qmldesigner/designercore/include/nodemetainfo.h:6, from /home/jarek/dev/creator-14-work/tests/unit/tests/ printers/gtest-creator-printing.cpp:17: /home/jarek/dev/creator-14-work/src/libs/sqlite/sqlite3_fwd.h:7:7: error: conflicting declaration ‘using sqlite3 = struct qtc_sqlite3’ 7 | using sqlite3 = struct qtc_sqlite3; | ^~~~~~~ ``` Task-number: QTCREATORBUG-30009 Change-Id: Ibc18f16ab304a92f73882c9336eebc2abd54aa44 Reviewed-by: Jarek Kobus --- src/libs/sqlite/CMakeLists.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/libs/sqlite/CMakeLists.txt b/src/libs/sqlite/CMakeLists.txt index f86f31871a4..e0cf3093142 100644 --- a/src/libs/sqlite/CMakeLists.txt +++ b/src/libs/sqlite/CMakeLists.txt @@ -80,5 +80,7 @@ extend_qtc_library(Sqlite extend_qtc_library(Sqlite CONDITION QTC_STATIC_BUILD - PROPERTIES COMPILE_OPTIONS $,/FIsqlite_static_config.h,-includesqlite_static_config.h> + PROPERTIES + COMPILE_OPTIONS $,/FIsqlite_static_config.h,-includesqlite_static_config.h> + INTERFACE_COMPILE_OPTIONS $,/FI../3rdparty/sqlite/sqlite_static_config.h,-include../3rdparty/sqlite/sqlite_static_config.h> ) From b240bfb3dbd7b0da4be1490f7262bcc2c5542731 Mon Sep 17 00:00:00 2001 From: Cristian Adam Date: Tue, 18 Jun 2024 17:33:28 +0200 Subject: [PATCH 16/30] CMakePM: Fix crash when hovering in CMake file without a project Fixes: QTCREATORBUG-31077 Change-Id: I60526fb37e5d8c7713a5b22dfddb3e52c50fc5f7 Reviewed-by: Alessandro Portale --- src/plugins/cmakeprojectmanager/cmakeeditor.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/cmakeprojectmanager/cmakeeditor.cpp b/src/plugins/cmakeprojectmanager/cmakeeditor.cpp index 27db33e14d2..92f63ea04c7 100644 --- a/src/plugins/cmakeprojectmanager/cmakeeditor.cpp +++ b/src/plugins/cmakeprojectmanager/cmakeeditor.cpp @@ -330,7 +330,7 @@ void CMakeEditorWidget::findLinkAt(const QTextCursor &cursor, if (auto project = ProjectTree::currentProject()) { buffer.replace("${CMAKE_SOURCE_DIR}", project->projectDirectory().path()); - if (auto bs = ProjectTree::currentBuildSystem(); bs->buildConfiguration()) { + if (auto bs = ProjectTree::currentBuildSystem(); bs && bs->buildConfiguration()) { buffer.replace("${CMAKE_BINARY_DIR}", bs->buildConfiguration()->buildDirectory().path()); // Get the path suffix from current source dir to project source dir and apply it From c5caee8be25a3a7ef71070a38e5b43b60476f7dc Mon Sep 17 00:00:00 2001 From: David Schulz Date: Tue, 18 Jun 2024 13:01:02 +0200 Subject: [PATCH 17/30] Dumper: fix exception string '...' % ... has 3 placeholder(s) but 2 substitution(s) Change-Id: I8d0ac49a97d8ff1745240276fa4ef02f73991dbe Reviewed-by: hjk --- share/qtcreator/debugger/dumper.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/share/qtcreator/debugger/dumper.py b/share/qtcreator/debugger/dumper.py index 6a232124cbe..250c04e80e8 100644 --- a/share/qtcreator/debugger/dumper.py +++ b/share/qtcreator/debugger/dumper.py @@ -4202,7 +4202,7 @@ typename)) res = self.readRawMemory(address, size) if len(res) > 0: return res - raise RuntimeError('CANNOT READ %d BYTES FROM ADDRESS: %s %s' % (size, address)) + raise RuntimeError('CANNOT READ %d BYTES FROM ADDRESS: %s' % (size, address)) def value_display(self, value): type_code = self.type_code(value.typeid) From 34044757efe449565790b1cf4d641f94a750344f Mon Sep 17 00:00:00 2001 From: Jarek Kobus Date: Tue, 18 Jun 2024 14:26:43 +0200 Subject: [PATCH 18/30] TaskTree: Fix tweaking done result in group done handler If the onGroupDone() handler returned DoneResult, this result was ignored by the running task tree. Fix it so that the optional DoneResult takes priority over group's workflow policy. Add tests for it. Change-Id: I7ffdef2af08337d7214f2c3d4b68153cddaad425 Reviewed-by: hjk Reviewed-by: Eike Ziller --- src/libs/solutions/tasking/tasktree.cpp | 33 ++++++------ tests/auto/solutions/tasking/tst_tasking.cpp | 54 ++++++++++++++++++++ 2 files changed, 71 insertions(+), 16 deletions(-) diff --git a/src/libs/solutions/tasking/tasktree.cpp b/src/libs/solutions/tasking/tasktree.cpp index 5c1f65e503f..b7ebb45a8c7 100644 --- a/src/libs/solutions/tasking/tasktree.cpp +++ b/src/libs/solutions/tasking/tasktree.cpp @@ -1987,23 +1987,24 @@ SetupResult TaskTreePrivate::continueStart(RuntimeContainer *container, SetupRes { const SetupResult groupAction = startAction == SetupResult::Continue ? startChildren(container) : startAction; - if (groupAction != SetupResult::Continue) { - const bool bit = container->updateSuccessBit(groupAction == SetupResult::StopWithSuccess); - RuntimeIteration *parentIteration = container->parentIteration(); - RuntimeTask *parentTask = container->m_parentTask; - QT_CHECK(parentTask); - const bool result = invokeDoneHandler(container, bit ? DoneWith::Success : DoneWith::Error); - if (parentIteration) { - parentIteration->deleteChild(parentTask); - if (!parentIteration->m_container->isStarting()) - childDone(parentIteration, result); - } else { - QT_CHECK(m_runtimeRoot.get() == parentTask); - m_runtimeRoot.reset(); - emitDone(result ? DoneWith::Success : DoneWith::Error); - } + if (groupAction == SetupResult::Continue) + return groupAction; + + const bool bit = container->updateSuccessBit(groupAction == SetupResult::StopWithSuccess); + RuntimeIteration *parentIteration = container->parentIteration(); + RuntimeTask *parentTask = container->m_parentTask; + QT_CHECK(parentTask); + const bool result = invokeDoneHandler(container, bit ? DoneWith::Success : DoneWith::Error); + if (parentIteration) { + parentIteration->deleteChild(parentTask); + if (!parentIteration->m_container->isStarting()) + childDone(parentIteration, result); + } else { + QT_CHECK(m_runtimeRoot.get() == parentTask); + m_runtimeRoot.reset(); + emitDone(result ? DoneWith::Success : DoneWith::Error); } - return groupAction; + return toSetupResult(result); } SetupResult TaskTreePrivate::startChildren(RuntimeContainer *container) diff --git a/tests/auto/solutions/tasking/tst_tasking.cpp b/tests/auto/solutions/tasking/tst_tasking.cpp index f3d83b4806d..15f5d12004d 100644 --- a/tests/auto/solutions/tasking/tst_tasking.cpp +++ b/tests/auto/solutions/tasking/tst_tasking.cpp @@ -712,6 +712,60 @@ void tst_Tasking::testTree_data() QTest::newRow("ErrorAndFinishAllAndError") << errorData(WorkflowPolicy::FinishAllAndError); } + { + // These tests ensure that tweaking the done result in group's done handler takes priority + // over the group's workflow policy. In this case the group's workflow policy is ignored. + const auto setupGroup = [=](DoneResult doneResult, WorkflowPolicy policy) { + return Group { + storage, + Group { + workflowPolicy(policy), + onGroupDone([doneResult] { return doneResult; }) + }, + groupDone(0) + }; + }; + + const auto doneData = [storage, setupGroup](WorkflowPolicy policy) { + return TestData{storage, setupGroup(DoneResult::Success, policy), + Log{{0, Handler::GroupSuccess}}, 0, DoneWith::Success, 0}; + }; + const auto errorData = [storage, setupGroup](WorkflowPolicy policy) { + return TestData{storage, setupGroup(DoneResult::Error, policy), + Log{{0, Handler::GroupError}}, 0, DoneWith::Error, 0}; + }; + + QTest::newRow("GroupDoneTweakSuccessWithStopOnError") + << doneData(WorkflowPolicy::StopOnError); + QTest::newRow("GroupDoneTweakSuccessWithContinueOnError") + << doneData(WorkflowPolicy::ContinueOnError); + QTest::newRow("GroupDoneTweakSuccessWithStopOnSuccess") + << doneData(WorkflowPolicy::StopOnSuccess); + QTest::newRow("GroupDoneTweakSuccessWithContinueOnSuccess") + << doneData(WorkflowPolicy::ContinueOnSuccess); + QTest::newRow("GroupDoneTweakSuccessWithStopOnSuccessOrError") + << doneData(WorkflowPolicy::StopOnSuccessOrError); + QTest::newRow("GroupDoneTweakSuccessWithFinishAllAndSuccess") + << doneData(WorkflowPolicy::FinishAllAndSuccess); + QTest::newRow("GroupDoneTweakSuccessWithFinishAllAndError") + << doneData(WorkflowPolicy::FinishAllAndError); + + QTest::newRow("GroupDoneTweakErrorWithStopOnError") + << errorData(WorkflowPolicy::StopOnError); + QTest::newRow("GroupDoneTweakErrorWithContinueOnError") + << errorData(WorkflowPolicy::ContinueOnError); + QTest::newRow("GroupDoneTweakErrorWithStopOnSuccess") + << errorData(WorkflowPolicy::StopOnSuccess); + QTest::newRow("GroupDoneTweakErrorWithContinueOnSuccess") + << errorData(WorkflowPolicy::ContinueOnSuccess); + QTest::newRow("GroupDoneTweakErrorWithStopOnSuccessOrError") + << errorData(WorkflowPolicy::StopOnSuccessOrError); + QTest::newRow("GroupDoneTweakErrorWithFinishAllAndSuccess") + << errorData(WorkflowPolicy::FinishAllAndSuccess); + QTest::newRow("GroupDoneTweakErrorWithFinishAllAndError") + << errorData(WorkflowPolicy::FinishAllAndError); + } + { const Group root { storage, From 36e84b1c54b2e4441ffcfb4d878f3af6922d4980 Mon Sep 17 00:00:00 2001 From: Cristian Adam Date: Tue, 18 Jun 2024 17:24:42 +0200 Subject: [PATCH 19/30] Doc/Wizards: Update minimum CMake version to 3.16 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 Reviewed-by: Eike Ziller --- doc/qtcreator/examples/textfinder/CMakeLists.txt | 2 +- doc/qtcreatordev/examples/exampleplugin/CMakeLists.txt | 2 +- share/qtcreator/cplusplus/examples/CMakeLists.txt | 2 +- share/qtcreator/templates/wizards/autotest/files/tst.txt | 2 +- share/qtcreator/templates/wizards/codesnippet/CMakeLists.txt | 2 +- .../templates/wizards/projects/consoleapp/CMakeLists.txt | 2 +- .../templates/wizards/projects/cpplibrary/CMakeLists.txt | 2 +- .../qtcreator/templates/wizards/projects/plainc/CMakeLists.txt | 2 +- .../templates/wizards/projects/plaincpp/CMakeLists.txt | 2 +- .../wizards/projects/qtquickapplication_compat/CMakeLists.txt | 2 +- .../wizards/projects/qtwidgetsapplication/CMakeLists.txt | 2 +- .../qtcreator/templates/wizards/qtcreatorplugin/CMakeLists.txt | 2 +- 12 files changed, 12 insertions(+), 12 deletions(-) diff --git a/doc/qtcreator/examples/textfinder/CMakeLists.txt b/doc/qtcreator/examples/textfinder/CMakeLists.txt index a00ccd856b4..d0e3130d2f7 100644 --- a/doc/qtcreator/examples/textfinder/CMakeLists.txt +++ b/doc/qtcreator/examples/textfinder/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.5) +cmake_minimum_required(VERSION 3.16) project(TextFinder VERSION 0.1 LANGUAGES CXX) diff --git a/doc/qtcreatordev/examples/exampleplugin/CMakeLists.txt b/doc/qtcreatordev/examples/exampleplugin/CMakeLists.txt index 65fba000893..d2c47e4dd8c 100644 --- a/doc/qtcreatordev/examples/exampleplugin/CMakeLists.txt +++ b/doc/qtcreatordev/examples/exampleplugin/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.10) +cmake_minimum_required(VERSION 3.16) #! [1] # Remove when sharing with others. diff --git a/share/qtcreator/cplusplus/examples/CMakeLists.txt b/share/qtcreator/cplusplus/examples/CMakeLists.txt index 7d14eba5b98..5eafcab4e0b 100644 --- a/share/qtcreator/cplusplus/examples/CMakeLists.txt +++ b/share/qtcreator/cplusplus/examples/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.5) +cmake_minimum_required(VERSION 3.16) project(examples LANGUAGES CXX) diff --git a/share/qtcreator/templates/wizards/autotest/files/tst.txt b/share/qtcreator/templates/wizards/autotest/files/tst.txt index f0eeb813392..18653bdc32c 100644 --- a/share/qtcreator/templates/wizards/autotest/files/tst.txt +++ b/share/qtcreator/templates/wizards/autotest/files/tst.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.5) +cmake_minimum_required(VERSION 3.16) project(%{TestCaseName} LANGUAGES CXX) diff --git a/share/qtcreator/templates/wizards/codesnippet/CMakeLists.txt b/share/qtcreator/templates/wizards/codesnippet/CMakeLists.txt index 0e923c87945..b411048ef28 100644 --- a/share/qtcreator/templates/wizards/codesnippet/CMakeLists.txt +++ b/share/qtcreator/templates/wizards/codesnippet/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.5) +cmake_minimum_required(VERSION 3.16) project(%{ProjectName} VERSION 0.1 LANGUAGES CXX) diff --git a/share/qtcreator/templates/wizards/projects/consoleapp/CMakeLists.txt b/share/qtcreator/templates/wizards/projects/consoleapp/CMakeLists.txt index a6f956127dd..d548d199a3c 100644 --- a/share/qtcreator/templates/wizards/projects/consoleapp/CMakeLists.txt +++ b/share/qtcreator/templates/wizards/projects/consoleapp/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.14) +cmake_minimum_required(VERSION 3.16) project(%{ProjectName} LANGUAGES CXX) diff --git a/share/qtcreator/templates/wizards/projects/cpplibrary/CMakeLists.txt b/share/qtcreator/templates/wizards/projects/cpplibrary/CMakeLists.txt index 4391af9678c..ef67bd5f7ad 100644 --- a/share/qtcreator/templates/wizards/projects/cpplibrary/CMakeLists.txt +++ b/share/qtcreator/templates/wizards/projects/cpplibrary/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.14) +cmake_minimum_required(VERSION 3.16) project(%{ProjectName} LANGUAGES CXX) diff --git a/share/qtcreator/templates/wizards/projects/plainc/CMakeLists.txt b/share/qtcreator/templates/wizards/projects/plainc/CMakeLists.txt index 1a0a570e66f..bc89ded9d0b 100644 --- a/share/qtcreator/templates/wizards/projects/plainc/CMakeLists.txt +++ b/share/qtcreator/templates/wizards/projects/plainc/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.5) +cmake_minimum_required(VERSION 3.16) project(%{ProjectName} LANGUAGES C) diff --git a/share/qtcreator/templates/wizards/projects/plaincpp/CMakeLists.txt b/share/qtcreator/templates/wizards/projects/plaincpp/CMakeLists.txt index df5ef8a5cce..e8ba55ff43d 100644 --- a/share/qtcreator/templates/wizards/projects/plaincpp/CMakeLists.txt +++ b/share/qtcreator/templates/wizards/projects/plaincpp/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.5) +cmake_minimum_required(VERSION 3.16) project(%{ProjectName} LANGUAGES CXX) diff --git a/share/qtcreator/templates/wizards/projects/qtquickapplication_compat/CMakeLists.txt b/share/qtcreator/templates/wizards/projects/qtquickapplication_compat/CMakeLists.txt index b7afb831a77..de5e6850c23 100644 --- a/share/qtcreator/templates/wizards/projects/qtquickapplication_compat/CMakeLists.txt +++ b/share/qtcreator/templates/wizards/projects/qtquickapplication_compat/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.14) +cmake_minimum_required(VERSION 3.16) project(%{ProjectName} VERSION 0.1 LANGUAGES CXX) diff --git a/share/qtcreator/templates/wizards/projects/qtwidgetsapplication/CMakeLists.txt b/share/qtcreator/templates/wizards/projects/qtwidgetsapplication/CMakeLists.txt index 9d854899c36..d2ca81d463b 100644 --- a/share/qtcreator/templates/wizards/projects/qtwidgetsapplication/CMakeLists.txt +++ b/share/qtcreator/templates/wizards/projects/qtwidgetsapplication/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.5) +cmake_minimum_required(VERSION 3.16) project(%{ProjectName} VERSION 0.1 LANGUAGES CXX) diff --git a/share/qtcreator/templates/wizards/qtcreatorplugin/CMakeLists.txt b/share/qtcreator/templates/wizards/qtcreatorplugin/CMakeLists.txt index be6f16a3fb6..13f9592fba1 100644 --- a/share/qtcreator/templates/wizards/qtcreatorplugin/CMakeLists.txt +++ b/share/qtcreator/templates/wizards/qtcreatorplugin/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.10) +cmake_minimum_required(VERSION 3.16) # Remove when sharing with others. @if %{JS: Util.isDirectory('%{QtCreatorBuild}/Qt Creator.app/Contents/Resources')} From e596707a6ba0a6287a41270d30edf7386cda450e Mon Sep 17 00:00:00 2001 From: Semih Yavuz Date: Wed, 12 Jun 2024 15:28:56 +0200 Subject: [PATCH 20/30] preview named colors on hover ColorPreviewHoverHandler only considered #XXXXXX and Qt::XXX to preview colors. We can also have named colors that are constructed from string literals. Add handling for string literals. Note that this creates preview when hovering over any color related string literals in the editor regardless of whether they are bound to color property. Also fix the crash due to the out-of-bounds access by adding boundary check. Fixes: QTCREATORBUG-30594 Change-Id: I5084b743c76beb6f343bd07049e3051a55fe8d53 Reviewed-by: David Schulz Reviewed-by: Fabian Kosmale Reviewed-by: Sami Shalayel --- src/plugins/texteditor/colorpreviewhoverhandler.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/plugins/texteditor/colorpreviewhoverhandler.cpp b/src/plugins/texteditor/colorpreviewhoverhandler.cpp index 62c7e1e5b48..fd014e0ad4a 100644 --- a/src/plugins/texteditor/colorpreviewhoverhandler.cpp +++ b/src/plugins/texteditor/colorpreviewhoverhandler.cpp @@ -33,7 +33,12 @@ static QString extractColorString(const QString &s, int pos) QChar c = s[firstPos]; if (c == QLatin1Char('#')) break; - + // color from string literal, i.e "red", 'red'; + // strip leading and trailing quotes + if (c == QLatin1Char('\"') || c == QLatin1Char('\'')) { + firstPos += 1; + break; + } if (c == QLatin1Char(':') && (firstPos > 3) && (s.mid(firstPos-3, 4) == QLatin1String("Qt::"))) { @@ -51,6 +56,8 @@ static QString extractColorString(const QString &s, int pos) return QString(); int lastPos = firstPos + 1; + if (lastPos >= s.length()) + return QString(); do { QChar c = s[lastPos]; if (!(c.isLetterOrNumber() || c == QLatin1Char(':'))) @@ -106,7 +113,7 @@ static QColor checkColorText(const QString &str) return fromEnumString(colorStr); } - return QColor(); + return QColor::fromString(str); } // looks backwards through a string for the opening brace of a function From ab78847af8b19e8591bb224064e1039797431142 Mon Sep 17 00:00:00 2001 From: Leena Miettinen Date: Mon, 17 Jun 2024 16:34:50 +0200 Subject: [PATCH 21/30] Doc: Update model editor docs - Describe new model element properties - Update screenshots - Update style Task-number: QTCREATORBUG-30604 Change-Id: I8b296a610ce330d6c382f10e2ff3d8d9994ad503 Reviewed-by: Jochen Becher Reviewed-by: Alessandro Portale --- dist/changelog/changes-14.0.0.md | 8 +- ...reator-model-editor-component-diagram.webp | Bin 25690 -> 17656 bytes .../images/qtcreator-modeleditor-classes.png | Bin 85095 -> 0 bytes .../images/qtcreator-modeleditor-classes.webp | Bin 0 -> 20902 bytes .../images/qtcreator-modeleditor-packages.png | Bin 64778 -> 0 bytes .../qtcreator-modeleditor-packages.webp | Bin 0 -> 19220 bytes .../images/qtcreator-modeleditor.png | Bin 83387 -> 0 bytes .../images/qtcreator-modeleditor.webp | Bin 0 -> 23304 bytes .../creator-only/creator-modeling.qdoc | 238 +++++++++++------- 9 files changed, 157 insertions(+), 89 deletions(-) delete mode 100644 doc/qtcreator/images/qtcreator-modeleditor-classes.png create mode 100644 doc/qtcreator/images/qtcreator-modeleditor-classes.webp delete mode 100644 doc/qtcreator/images/qtcreator-modeleditor-packages.png create mode 100644 doc/qtcreator/images/qtcreator-modeleditor-packages.webp delete mode 100644 doc/qtcreator/images/qtcreator-modeleditor.png create mode 100644 doc/qtcreator/images/qtcreator-modeleditor.webp diff --git a/dist/changelog/changes-14.0.0.md b/dist/changelog/changes-14.0.0.md index ee0aaf7cc9d..31a3e5daa04 100644 --- a/dist/changelog/changes-14.0.0.md +++ b/dist/changelog/changes-14.0.0.md @@ -99,7 +99,7 @@ Editing ### Python * Added options for updating Python Language Server - ([Documentation] (https://doc-snapshots.qt.io/qtcreator-14.0/creator-language-servers.html)) + ([Documentation](https://doc-snapshots.qt.io/qtcreator-14.0/creator-language-servers.html)) ### Language Server Protocol @@ -117,8 +117,10 @@ Editing ### Models * Added more visual attributes for relations -* Added support for linked files -* Added support for custom images +* Added support for linked files in model element properties +* Added support for custom images in model element properties + +([Documentation](https://doc-snapshots.qt.io/qtcreator-14.0/creator-how-to-create-models.html)) ### SCXML diff --git a/doc/qtcreator/images/qtcreator-model-editor-component-diagram.webp b/doc/qtcreator/images/qtcreator-model-editor-component-diagram.webp index e28a94e0a2a16fcb62e8709f49aac03f463df33c..ecd5a013df18c0b7bab9e47358f82b2df1a309a4 100644 GIT binary patch literal 17656 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 yGBED)J}2>MGpu-a&xPR6u91x%An6d7|Dct;6O^ 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 diff --git a/doc/qtcreator/images/qtcreator-modeleditor-classes.png b/doc/qtcreator/images/qtcreator-modeleditor-classes.png deleted file mode 100644 index c5747416db2beb02a680782829ef27109389c6f7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 85095 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 S(}{tBfx*+&&t;ucLK6Ti`Vy=F diff --git a/doc/qtcreator/images/qtcreator-modeleditor-classes.webp b/doc/qtcreator/images/qtcreator-modeleditor-classes.webp new file mode 100644 index 0000000000000000000000000000000000000000..fcdec4f645239e3cccf6d7c5a9c6125b24637a47 GIT binary patch literal 20902 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 TXZ?|$yJ8ZT(d1kAl+76ct*xdr literal 0 HcmV?d00001 diff --git a/doc/qtcreator/images/qtcreator-modeleditor-packages.png b/doc/qtcreator/images/qtcreator-modeleditor-packages.png deleted file mode 100644 index 3884886e19f73b5657f55d7eb77bee2496ce92ba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64778 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 s_r(ad1h%{b=hsK9({PxOe0 zh{(vvnl)=yQ_yRTdmbL0ch3jETI4);;iL`hwR#$H`WMPtnHXYuAG0LLaTnjxHtTt< z?6ux-Z&dinBqPx)>l{SZ-Md!5XggD0c5(6NSFct@=-j(~`~L0Qw_PvU)pV69zLo1b zTJXKQt7}7qPEC@*jDrgmHCne_G#Ad!&i3~9w)bDzUG-t=)vKvCazb^fQ@8k~8O+oX zo9v>r(4YP2Yo)~(b|h3a7qy1VNySBR83p)1epSr*^2p-Jj$=#r^CyOm<+v75w>X(Vw+?+a9)S&yPn+|$!X zNBhXMgwNfdii>C>le+qTu^Z2y;?XXY?NBSdP^&g!YRnkKYWEt65&zHpD= zrBmHfW+%cXaxV*t+dYAYZSB8*|4yFt+`;wp3^NYx@Bl<%PYKN`ZpJk zG^3qcmMqayo_Hg2|CN}X4cfB$=Q}@@>?;gjwq{Mw>8JBL%zPM2jDZuJ(D?;cmJLZPAanTsyPB5ek^?&dP%?Tp}5H#)eJ-KV1s===k(XF z-(RJ=RM;!y?S-U%ckY#kM69-KZ`KG<{ZuS*yCE!gW3{?>T-J;3#mSGI4j-Bv6x3k0 zx8$Fi?$x_@g#{&_K7Kxb!W0`z%hEi}9fuG6sAY1VT--gWh)a0$2F}P<$(xo-OqD{u z3NbRv@P4^|^XAQW^UiIYapFP1{|5s09*&B2iiwQh_^wTyD43qMC+JpsdbY5fkc6C+ zgq)0k*c*AVH{xPXgvDOSiamMzC_z+QygDt8rN6E$&+f$a^qp(-ve$ImUODwD|A@KB z&WKr3Qqt3>Pv1X9`%j5Wqt475=g*z@T zs}R+^aOaK;U%RxdY;EgGb&;7fXTE&;0iQ@7m{)CzTWSe(pRayvv#{QkVWoK=yAUg?)r zAE|N8JuSgqo%L$=J-3@lxpPkZsrmd<+2UV}`uww%55H;7JT+5!-Y=(A12F@!P4|8_ z8%RzH$zv9Y-zvfF`o2c0w{Drp&pC(ZRo~%#Cbrn@&B|8)TZh=D?jf0ljt-R)mn zOUtfaTk^9#efqK#voGg!E@TX?8c@IJ`2+P&+b@WTQNao(RFUMzfS@<8h3iPfc7 z9y%SYlIi>5Q&cS&IH68fQgY>r6%FG26>p#ZHG0zCw`be3v?a?b>Ua4Y+|rZDyDOWW zeZte%^ZbVLk~8`m4C_AB6n%JSA}tlX;nwpNwVy9%mmfOaCQ;&I!u2`#P)NDvy5vrW zI<+!es}CoG12jrbJ({q7X->vjndzQWWoDmB6xL#n?OC&FTC0rK&q><$#V75b9jXsF z+!wIvyYBhk>YB%!?K4>Y)&;!05-wPG;G&u3oH=*?EO-#$V)n5|c)zI&qn^OAyRAoE zUxZj&S+%!6)V;AF-Z8FwMNf2;%-qVZ6&ANYeDO)TDCE@1r7LzUS-e?W zRrl`IyPxj_9f*A})n8L%{!%Wr>pPRP?`$lsE2s#`4?lkA&6zJxj(oYIQlgN~ru@?3 z@})~zsi`leA6&Z?YV0pD?=b%vo$tQ7U-bmoPru&ebhz1ZLqXPw$M7HR@ zQkrgaI&$^{0k@m0n{{gR`!Cqvm?14Kx~(VPGSdIXyy%Dy4nCE#tNH#VxxCxC+@fC2 zz4}kD&ofitP=`b`O)3`?u2ie`#dyRNHFo%B0rIHCIEX&u?+l z8c99}cRr?jVj(M^Ok;~*(Ges3FF@7);A+<22hEv{6k4V?i8%YY+e(#qp4cL~QgJTd z)TXQhh7ulvTALbWm?Y;d?0;NfK7H}meMLU+lQ-P#$mN;4bL+`<9T)zcGj#S6NqE*W zXNsPsP)NIy<;9DMFL~7F$V##-`OYFKq+*=5uOs^L`bCdL?EOVIL z?qO|hYj>+cM#s2}3YUtMD<5B1=>=L$OFn3AV{acH9UUDL!^87<(mW3@k*rm#f1ToP zNtT_>>^o;4TV8yvzo%bXmRGFn%xSx#A|oxkk5)aO#oMbIlW}G9=EElX+!iHTMP^o$ zkE-%qcX>MHykJI-nRgN2ialF+6`xP=GmMncOU^tH`JDUxrbx!{OC>X882dvW<^4RO z&|9GJ#GqkTjz^R-Z^ZO1guP^Mnk@L-U>4Vr6Yu236%s-GXr(@uVvIm^nGK2J5`mDHL({|;McktLV7rM0{FoOyER zOUs)pJJw8@(X(X5mzED-eq1=y5|A(M&0l_f>eQ>^olX@22fU(9^OsCDzHs7gc0x&* z`0;ktR@Q{38lRH++qP_T%KrbelWC7vsOi>^Gh8lg_d28d^73WleRYgM+W8Y$_RrDq zh-BgrdT?#d&iL?$Tp#in!WpiWi7s-eVLNf>`gQhAEEY^T&HEm+1THW)HE+IqbKw*X z4-wwun_4D6YEfQvp--Uo`JCxIUN?T`$S42&T|RHuF;Vdpw&`2Gh_P5mthzrbu=oRC zv3dB^>Wl!}lTs`B0*x`b&hEbs_WP&1WcgjM_~H?Hb=9hBk#K=^pMFeSS9^n_GCNx1PNHD85mTtCiJbj} z&Agq(*QZXs_~~_Is)4&!Pe^LYJNuIvQ9?QE%#YlM~J6%UJFkypPyY`~1@9*!b4L)ZocKxQv-y;G4U#@+x+m!sbM?x6Tx&x>c?y?ol;P}l7B3J z>zhh4WYh$KJ3S?4c(@;9S)QKQapfiN zw>MVFvyRMIQj~tX>hxm+!-SOuZ5jtAq@*V|p7lC)-sgmO|7qXelb(HN{J7YsO_(h5 z>V4MBw=enBE9@}=bQOV{KbMA}66 zOHTQ}>G`|#xkmH1-TxDP{H%V}y94v&T|`!8X9Wjca#0dI)4k))*`-HS1#}OXow>Ye zQ_+I3OW6|zSpODxFx9lG#l^?_S2*Ssy9!y^*zm-D>*negf5{QRbt3XJkHB9~FWtJHLP^U`v8Z>BW=8RKNdmXbE?vGK_FSdd|L&=GAGhxh-pbjzDeV7; zh3VJNI90o5B?SdV=f^LadMW8;-m)?0bpO>!5D_F31PrBKc9}9w?oq6O_dZqSrR#0xK zX^#rHym{@*n_CC_{=GaJ`bo6su0z#+txS8N z^gFzovU^-Q8T>1=vThx}e*f4x#tx<%>~m}Op4VmVWsy2|!?+=UaZ2ii7Ke2VF%R!7 z`yI0=V3x8()}t?1Htv3~bnSyJ({r~?ee*p`?AHwo3(Mx`Z+BnInJ3(8cFAtx(}&mV zCzSfVmVdd{@5}DIXOVN?7C*kV_Qahg_4s}3g~P(6^ULlURqxRIuwGs}%`AL}{gp!g zbDuU$=3f2I@5=O0qXMG|e@~15@|(F&t^8f|R5P*JcDv?BhOhj6GXAXL+8+;t-tOjS zIz7uE>{Hvc#&cy=VU}Mdm(9|;_3rA_gZw;a&xY==j6b?}GyipC%ZWKFmNtZZeXalW zOL5ZPe_ys*ZOhMFu~Wm)aN~-F?5|h<6u%jsf1@bv9kX`yoPAru)wnuj*%}#q|K4~f z8};D!!m5VTk;)SfDJeaAWT@ci?R|d2)XD4zJJ;$#j=}e3 zD{oI0d1w)7;V0M|T<)&1JGtlZuEL^#kV8j)+&DSUWmT1iuCBSUF?a8W*RpwwHax#J z^MKH@jxU_2p7~_wN6M)E(g|E}u|Y%P)oYiwAFgdb+Sn^w*{fQ9?QH#F#s1r(^_Nwo zgk52IvEsV5bG=1AoP8S2Y*A)zq@K8S`sUkSmb$KcwmssS;Fj{d;mVVCA=U>hvufFP z7XSRaq*3#h$&#+6tE^?U?(^K)ZxzU3_Uz$P=E)ys-HMWU_xaPt1q}^ivu96F&&=hv zUg+MM)+50BmAixKj@OJ8dz((`O=7U8zlEtoUZKn!nRNVa?m+bT}V%g*8zY4efJ#4hzdfAL8F46hs`u_Jn%s8P@ z|G0gXW^e7=qn_W)%+mJF*!8F5b$tEj8%IuEyr?M|E%-cbmDsHV!U3lj>+;7K2aPsC!_TU*(DJrk$xu)mkeRTEi-T3MjzxB0>xq^CaX_7Z`R#)#6J@m2Z_NukkMmVbfdS<#E12Tv6Po#<7CKh5ql6Szbb_-AYj2@iL6wz|IInPs5Hxkum4 z8N3rpLpI#SR`aXx$Ou}EM?e%!r8z3EHYqHjf6wlANmR(*dn z_nI@GOieevoTth*GnV_X;Kx+E`!kpETxqS#f75?IZORR)sK^%UTdQ22JeR2b*4wmi zXY=C8^?sh~cJH0&t61AEkWh43U-|UAzRZ6nz4lXnt=;4+9ct6Q^-{qm|9-y$^NnTR z9==^)FNa^}@;{ZcR=cER%f`=q>(*+TR(`l^erc7O$TgM9J0_i~A6S}?I4wzI8f*4SsA%*Hu;2oR!w>~q)hyUKq)4R4!%sX2-<=YvlzW@XVU{iaxAJ17!}cfzW@Ke;+p>|lQ&3G&(@;}#iHpM5 z#&lT`nWUT~HWtCE9D)8=50NFZwlgLke)5Lhv}EN={V&fJY;MT=we+E6gK&cd;}6C; z+*Oq~8rJJy;;xV`?CtgTKHc8_=yFiYbE)=VmxW(N0vWEpNUBba4317*aP0VYk-4(G zqRyXI{|zaz-E=&v_=>5hlv}v*-K|sqtdcf9vw!m;pGS}0$D8;0@?JHpm=QT``R87z zoXb3Q8+WhXdC>jg#K?$1*HueTF?T=uqjL52x4pAxcVA5`&zBPUVrF&!|Ea|lSqc~5 zt^fb4&f|T`w#}FF>wYiD+_0H3{Bp#^;QDEH=07shYQfee>fGWI%%J2bJzH~wd`WzFIVG}qg7 zpw>^M%jn16t!v6Sy)*QZ%#tK`?0NfbkxjWbd%Cy+*L%OsJD*J`^ICLa*P*$u*RNZ( zM!RR<$G7U+)_vP#W|x}zZr3a~-DK~1yXOB2*FXQvx_;e!iwOC$*wfp#uD$c<9`o%B zGUA)xGoQ--`{eyBchfZ!+oGaw7r*hDBG+zGwtU6?38z=-n*Z|BuAOiocGbmcft+hH zJU8rE{&t%6y}(s}*8dMyUb=Ddo$vSm{bpb2Dr?)D%A0GkSNgxVx{mD~k9Rv(iC)Z` zpUv9LZpGo%dg!gK;(Dc!$FJqDZ}|PezDt84cixN{CMJe^>mEPjooVf*wMyWvua(YT z)>Z5)C6&J{HE3bDsIR?VLsRppm}q-TTWU&b;|$q#U+!E`7U7%}e97TC$F?(qfq@^g z4m%$3`Y3d|ZSv9sZwwVQZrr^ryoG%Y7t4-k?p{3Q?nB;- z3Xvu*wkxERS&yqQ2U>UQ&mxPm)&nt6vKWzMWn%DKtyR2zb zR82&Uq`7DC?v#m%%k)VIJE!d_!uBqj&zhy*)#7`##rMh-|0fEDRUjKH7sD=;J>GfiRopNr^<^32Lm5z zS#>8bVpy{wnCZrj2^tRyy1l*G+aJ9Zk2vI6$W$UM%z=~+4ilGh<~kJxV1-qneh(kAFDKO&n{2d zVte`dNv3NR8z=VGAJ7e6Ya2qVY5sEn+2!C^U}ZkV0llT0m5-Yl?cJ(nYN4>Fo^8HZ&ZMh5H+6U$^{<$h(evka{D0w|P}4Vy z+0v(9a`rLa9d^CS$Ta`%q^WyTrQ$A35?@&1{OsG@=r+NxJy+j3Om0}UF;%SFFjB5k z{L_n_Tm3ecU1P6_nJW}MJ@fHXH?g#>hktw%+5P^#rk1AlHN6Ql7pwkSeDFJ zr+Pt4btm#XT6@i={&aZWjT<(v1C&YSQ|^3|EV`^BXzrIGp?sxRD9eo_RJrBV z$FEOrIj(=OV&=+|#+Nu&{QPsLY4z%2AE$ul4!-X7q0#ZK+4+^;{+b(Fo~*gh;1JI- zv!G3*!Lhcc<^Q!?2Hf|L$Gl0>*>W*`cIIV^S0TFD+qP{N5*C$XvD@)nxYbH$`{qek zwdPJ1F_8KsQF`-D+nh@;8p4&i6wDZ$KBT_CdwzF*bK{|{x2)H@i3G(da9#S<{Q7`q z@-gp@rjUR3O&+~c4<+}9*eGn(X+C);^v=!xPNo~G9)j1AM!cb zsNL*%D<^cMtu1BZtPe#^2)8c zS2$Vv6(%qoK6ZMq+=8|XE{^%EbB#`j&QiI!TYuv;t7#fMB1_+Y2`RpPddJ$Mvwb7{ zlI@l&rmq)`evp=?A8NbD`fQt8W%SB3xi#$zZ6KR)CN_JQggjW_Xk9d^p{wzF^Aj(@=`z12 z<}({TYo5MrNmvIzYq#c3z8wWix;n)FbguH6rS$bl@zj`)+U7Y{)19TWPi+p``!PE7 z`$N@Jt1E3iY|l2_+P1xX&YO?-msxOiEbdZ~;upI6q@-bTu}i0jmtWkxJ&U+3yw(U_ zpAfCvyR9TMVt=>>t0^PrqI!>tjGUy19HpAJBPze#kNj%&462yZobKRLqjbd0>NCd@ zZ;2<*p0TvEsHr6%DEX*y^!O3=BMjar&YrYwW$0X3Yf#LquDxLkClQwT{xg2vM^9*y>fpw?vWS!9J z|5k5$_3*@*hZ-ino-n<5ef8xcW1gCti4WGFy}oW;6~orPnXRE&QB_PgtW=jboH%~< zth3i?zpkQqCy~BZmIdMr8$X1`NH~0BsQr8Ot^C6W3VQRb8GrnG6cgYiA|)m!=J=K2 z&jXpR4SSU*Y+%t0%&_tn@%tHV|M^DUyYsq#xv$QXeVZjUW73aP^M7^LoND~DB>el# z!|UhYt3SthZuLpY*DJ*T&v~v~_blVdb9ZY!Zs*T$67t=zACcXb{!Y+6%3~rlh7k4W5fxW@yt{DrKPMUJFsb%J$ z9WUp+c=_hU%QG9M{&^uG{59R>;oU4Vj>5?Jmxo1{s;OT2a@I5V__^G0_r1EUUUQ@m zmGZ7pFpB!r{akha_S$z-C+qL{RJ_V--=)_0m!~F*x7gecpFd^Br1sb9>+<&$eelVA z!oNU4{kPr?=1uFiYZ@(nGH3{d+Tp!x`b}r=o=*U~h_|>rP>&1Ov1LJmRtS?YsedkY8xH4D#*Sn{qEmD^W zn791g^7r@aaAmH5t526c{lyj|I-}(3m8PQ_ISxM-iN`AFf2peYC>Uoea-F~Tq(>#= z^C+IH=2w^l8Ll>e2%4s#%GG;TS3u&4Qt_SBTFe)}OXQyq3c8Se@D5j6_7n3=PUZ|n zg#?E7)?#P%*e%Z&1s%UU(fiislk`i`Mm;-CMMYE9pFUoGUT037 znKNsj&$ANFz#ml(=W5TGm#poh3CA)?FCEMC>yADetoo{(rb~! z!hjR`1`i~!T)V2PqbJK6Q#Eay;#|{60Y|wHyIF%%G+f<2E_-x!)}7Z`D@0Osi`W*q zSxlW^dtl9yL*^nHbt--CbIU&*ihmedyEQ1^ZpkZem;4`2O@F7ye^PZ}4B18VKJk;!9 z!otZgX_4{#OQ9<Pewn?`t$zu2{54=>*4uwv5G&jZ8<+Grv%X@6~Wn*N!!a&04?^R_3%& zVDEg5IQ_sKW=j~jZEG(5y1Q14b-JVe<+#`V(d!P&-Kg)3JnWjzXzZgIc;o*4>6=)7 zw1hLLa6I^5TCidL9~UQ)CFc@?T#p(qasK*BpKHV6DbuI3H!~+#L2Q)v6G_m0_WRVT zd5wwZ>>SV89aP(PF7KV(i@z=(t2z&P9%B%k=5V*b^GA!km&lQhih1nP=R2FGy%Y>& z@OD`Fl&LAS=}1ICl7YvLO>>p&S{aVDxEy+Il-%-*A&{Yy>4hH))0C-;9U33`s&j2v zmQ;|VRqDUz#I4w8UD3zFeSOcaizsV14xbvdb64%vJIcAPo7Y^n-nlw=Zm#z1{71U6 z(mAi^M%=XCD||ovN_+a^w{NF*9^&`XSLIqz-r#Q#-P6^@wB7LmZ+a&a&&MF|_ftbT zY@ISZ%Bm~ezkRb^yW>~pL$Nh}{T5Y9uWw)05SZp9rI(u=E3}iZ^U_ww>1$%`V<$^Y z4>#<*uds)&I&lU6kyn8M0S!+(12;2^XaxLea$)>durubMal_9mJLd*fySo>}y!zEw z(YJ5&fjjS`mt;!L*j2^8<0sqBUo2J?KMr2%5HNmsXR=&ga5~$vnc;6<-8g-*%>45+ zzxOdmZ(82o8gTze^ey?94|=De|qi4ONotV&ArOHM9!^z-u#uU^%k9+CA_s8V+So-dCXzcQvV39)uWHwm#q zedknv>-O!}uU^fXH7hGS`}U0+4F|r)EE15Iy-Q8x{Dp0ao`*m3CVp4iTbHu5EM;q2 z#nz%339nzVzTPlT>f`fW-d$X;f2Z%btz^}>Rr_AznTZ_5b6Zv4COp`1Au=e)_(app z9TOZA&-iaK6&JgH#+dKO?d+3sUQ16GF#IbBEldpjDpVcs^YUB&hm))G4vJ0n6A~!S z7c0)(vY-39E&uJ)%vU3F620w%a$g-1iY-vMm+Y&z<}?4%>e{UAV=uJ+z^V=_M|0CCyzx4U_=TAj&=|_&%^D|%T>1fVR_O8w> zD^C>^i?-ROXu9<=|JEsqr(YZIi52>EJMq{qR|!o$oi%S~wcc4fQA@D5V$0sWiY|;9 z4coVGpFVy1`t|E~@3vlZkb8~vQ} z*Sz2R{on2VwM)`+msf^Ie(l_~xcl(${|#?;uU)ik>Eg7fPZm`FX8!SS>aN!44fT$n zl`=~U|CKVlV*Z#vWy+L*tIS*?8g-G27#Q@8YHMpPEiGkbWjVs@^Bf~SDjKLwRS;0- zme1!ne&P`4s*D~bDYf?pCbcn3|F%<{xV(d@_|CPE(+5sju3C|sy7F|eU6+Dd>&X+E zQn#bBGi(eueEGILeDXxjm61a0%%o2Kf4b7MVe7oEdG$gQUC)0DU8|DUmw5Saj?CP* zCAv;hFS4D_?fNb^)8ghVo3IVNaY=cil^Qjw=~5FfUJ8|2yz=jrYuBQJ?;4h;?7ii# zTk4}Aac-~X;-1HxZiW*LC43s@?Q7h;xx7xj-z;|i!xv9ptG11? z40(N@*W5ew$>1*kd;7xDE0e3&ynp*Jaam>b-GyD%4r}=~UAyH$497 z&yy!tbMD5-ojCDRg!h8@a${NBn7MOHzrNkb{CciuzjENB561*pSH5!Oy3w}%!J1c$ zIZSD3X^u+_uFT9|{4nZr(5qFtpBvX~?Ana^H4d@Fg=J0jk0Yt`Y^%yF(8+45OeVv)+ZoAb?Z_3S%g3^;K zU!Cv0uy*#ml0Uy@@1Dix_Die&_n~#^du|>+#?bvjna}9$9V0HQO-?;EuV)ynTfSRz z+B!w`m~5YtPhRg2xZZkdvh8WgZkxbUGbK*s)XW#XBPqDdNO&gkpt`FwScICbjIw9uff9y$khy}T1#x8~`i$ulNLUAPl0 zIB!b0$WtBt^*KrJA9bG0%X_!JWAiS(;`qy#)b)%t6_@uqM9i99JJ*F#h3kRb&aJJx z+!r}CJ`z{sVtC=8uc@KPrKxT6@yM}n8j%)z^kh^xe_dzU>*8qcc){}qUsqT9W{Kse zWVoUy^`z+jnZ>@_>8io%B&KJL@#;LMm#kv1lf2^m(`JT=^nr5+-=Y5Ck7m@PGT%QC3 z3qE*7FMGT=#FY6|meuZAH9We9gM!2aTn~m7&+1-N6_M`SHgTTo^IvNI3U_YaR^?CD zo!jmBx?sm?W#w<_OLP^PXFq!$vt7|nW%*CL6_Midd0Q&%{UTLEZ&oZ7QdR5T`|+FH zM$Ucj?)gsoY{qtjC3$xA21cuACtuHwiI|?AU%s9()OL@g3!~ht&)+mUmofA>wlHMA z)$%{v*Kuf5%E$Z%T$?v9XmEJLEGB5&$eL39ki(!tU+0kd$$gbSb~F59d?2>LNqmz0 zNh5pf&$k%79Ct8G(C}c^TjF(w_j#Q9C;!nDZMi9(^Hps4tqLZF&l@6hyS1CD7f>!TeO?!^_%B> z-0$k=&U4b|G4Fc8qIty6f8P8(pPa3&rFBbpe_6g}8jGo|0B#BEZti|8+(HucX@ z%lq9CcbA7)zP=k|ynXZKtJk^bFTdC(R3mS5VcX}Dz+GyO!wgQu9^K=iQ}4O-+j~e$`EhIvKOdy)WvLx$j*;L-FYv%Wb8< zuXz2#)#C5Nb5?ahpQg9YS5UfoGjhG|Q85vbz6q++`m4X_?KrS$SL4S@HsQcI8>X?T zu&$rDD(^0)$Qsdl$)Z5c`d|H(;TV9YgK(;~r(UaLM4=fyV1J<*HT0vbMhx}Otb9XIfb{Ad9 z&wezU?T9v$vg^mqCwhXsj|D5vS!%{5uwGC`aAm%PL*b^aTUiz7B);@mVfD)*aDl_e z&kR$R13)UQ*se{0REULEy|Yt`(NBB!=BoOf(|w49x1>!qnv*SUz8-M3*VXWYar#CoCg z0PBLe;-EH!-y(+C3;x&lJF=fm+vsGhovX~{Y%JY$Df_R`>A8nL@4HZNv5bqcjVYV#8rac^X9 z`kZ?8NUOJYt5(sC60MmB@7YY8x%*^VQ`_{)tmo2~KIa={hDgobS-C6AM`|Y9Ro9Q7 zg<03eGY2y8b8LC;)W~%7w!6rruGvXNv%9i?ZJ2uZM%TGNo63HBtVxbqysLa!Yrf6g za}VafoU@aog2_(w{=^4j_FE2$H$^yZ`uyX1aHQk%GvaxZmI?2b6Yt^t)^fg#tGsga z*LihuUyJ|zeVcre<@=Y3ef-C4Ypp&vJ=lKE%Cp?|#pmmub{_dNO=A6pFIKY( z`pZLNBl^4}WEYCX*>Xy+2w|M6u>hQd-wOnGoXyi&_v&C+iO7_#Per$@Jb$>zI4fwQ z?)Lds)30omdG~f+h#1GgZ-E*tf`6`w)u-pDb34g6#U_e>d96_2P|+?>Ih}oXU|P++i6m~&uixMO5>ou_wQpz*d9g3&Fj*Jae^Jc_(^ zp>BhE)iuRWtu;k~JGORhnv_}a?Z};sUDXFCal}6p6MK?g86Rf9a*NU_Ki6;jJdaw; z-F#zO)5cOmlj)N~xpX9-Y@C)f_sM59*QTxW3~F_CdzXLQ!FsP~_UzRQckb-GR2#|e zBkX=8@7S*yQZpleh^;xt&latzt#PM5Yod{Mg4q$4D?Wy0V$yGI7O}lNwDi}ZOS@(* zl1QJ*eyaa3cZSWutn#+4+otWB7yDIW?$#TRvY%(H%AIi4)n?ahCaHBgXRqBo`J!`9 zXiZ_}j=6K*53rADX?a%-=IO{Pn@f8_u|$>sz3% z91`svd|t0=j^ZlrKn@LQ_f94+k$^=FOsrkyof-|V6gRKqn8K&J_UBRG%GTb>8*O`< zc5S+(7OLF8N!X=P`_BED+IuvYi$oe86#c;YSoNAY^D@5WvHSjnnJ!4$Wb$EkzUU-t zwXQvK5$>T6-L*sQ>+f&QsM(}^^~RkwyRvPL{tkS2q-4n_Wm#?W`t-Bs_ZPpASg}1| zU*5C}y9^@Mc&%d z&h(u5wDjuK82z92tE<0%GktNQCTA{-H%se^)9z>Tw^-U;?AMZwiOc(Z-RRVjtxK&W zXSau})A?d)KV`F5{u_PofZfX;N53eR}=*v#T|=53Q7%r^Kc3Q+$J%_v2>Sx4B7Ovz8r~zAJKAt$g_*(U?`! zD;^zv^thL^# z7;a)1^6=T?do3)t9*Ra+xwwm|9gB9~ZhX|IrfYiW?iAautItgMe=k@zk4u_c-^b1D z*m-3WO;tAGZt1vHXE_Q=3V08f^;}n9S^Il#=j!RRyMsgG?j}Ufo9WBO>*V>!x@pbX zGiUxl@>aI)(qs7ZW!F8uDH@KRhV)-av-??*%frR1 zPq6mC_hmU1G5ySjZ|cQ)QLX1T9GPs{_H83;H}ln5v&tt&hl}01JHef+|UDbeWa z>0>6#`i`m|)sDODt1&BT=9WLNqAzdYdGzj|TI-FtH;UDFSFSP&zW*ch;|I3sp7$T+ z>z5{(d^KcAnQ*giS(SondxT_)f7i|8h1bkCtAD#uy!2XmliG>3d|6fxmpWI}xG&gN z=v5j!W#&xxBJRYk=N%o7schW0+{h*Va(YE_x99TD+gwxQ%x$~f0vCPIR^Zz3>+*vK z3_W)Q;wwM7F!}f%3=$0fAUykQovywFxRm>NO}KT%6)hbN*$oQbD^8zYefI3yQzzHy z9KE(uYK{_DjDc#*%Oaz?4<8oJim!UDw9)*iWqo0_;eE@6vghwbW|bTgd33YdyEjlX zRMxxs>b$D>JAoI&CS32xo^>-(xJzh`)b#Qh$~)PLzAIStRux#5R+`wJiu$~8)}OuY z`&^lw7`Iw!TWp`sqkQxj%Q?r-)AsC{Gp+IvOaAi!hxOjvpH9i&5WcusIp%Po_wU)x z|N7-@D!v@hUprUz!PkV^(Dx@aPuO#vdl?&fsMS4e($DivHU*W{v!zX2IVbKoYWvMA zu}L_uaQ5Cy6CX_B&5l@m?bzM+UmABx51DNG{w-r~E1OpNQ`0YJbYi%r+*l5ku9?5` z$$?`x_hu`*=0)ayHYi!>^6;!G*M&6)7hk_|`TsBe|NqQ>{?dH^ z&*k_3owon~I{*LE#r<|s(b3Jqkg8H6aK{`Cl?3TUL0VkhQlA|kPv|}&)S&t#W!luI z*EL>Sh+W@4cY=n;4JM&8k}`}3-ZRz+vOJK~yx}IJV)@{i!V~X*T;=>nU*BD+r?;$D z9`a5$xGC(`k~k)hDm;f|<)JPTt#ccb)yZpM%04s{ND*Y>n%9>^|9XDY-@U%ln*DXHR_7EXb`vm z|NZ}IY44d{>s|PEWJ;_`ZpV=)vW7Z~{B8;6zv+IjWjAAvM0;_8J_986KND`9pBSiN zVK@1x+JqA=UwI$BWU1B=$bA{gf2R3FuMeBh3{KWA`JEafP9kUOB?5o+*Z<$!xKlS; zCobiUjzQV8m$!?*yp8lQ@v#29=I`yIuG8M#1*i6YW@wvG@aS{%q($I{Q$E|h1F6db z7yRfvkYJz}ohGHoC1yWEcVK1%GJu`7MrbdNh2LWOCExlVA12$^e9)==@$&uu9}n;U z|9hXEjm@DIT7S>cC@CrX_x5ssX~~v(c7d0xK1Fyxo;a;-)wEyEzFXO&viPSweXpjf zwut-rq90qmL?qgi5;#8#br~q9a*8}uakX$1Jhzemx#c6vzKUtOY|HOyet4bQr9Pv5 zb4=lJrPq7E-`l)>yK^TKmx#u_yhRG7!n9Hx{3L z6QK4@BYDfubBq4S$oUs6I`YrOchctOy>n|*>?gL{sfpxk1pYW*|9|hiow|PmY}5m- zWHz#_YEjMMI6iTU?KVXjMdi$jSc@&7ff2TAEXr4G?>zZc{r>OV#gmyKv0o^y>kBO<&#Dh8VoY5{!<<- zdwp7(E%h18O|6~F*DMZUJbK<)WQ%USMWDgvrSb|cj1h-;zKR4&C@W`9(UFJ~=b6aD z;i|y->-vvcmwy+I<^5%O`TpO#{X2G8EQX{G^T38UZ%0Q(GqZ0(>n_~6v*_Os$4XDX zx-_S_s+znkA3v{@vLKf*Cl4_-3$r82igs*^9?a7?c(S}C<8f1|b9Za$38w7XPRo41 znwXWJJ(%Bp_iKdCw$w=+ahX@97Ebf1(MZtqS@XW}MAKfcr`<2OotL_{Zq41y@%4f5 zsxI#CRlhCSlP;>Y8yH=>b8Fj~d#>`fULtY)ffr1-FMZqXuPJNRcZ74Xf=9&k4K1aO zArmh6KXINU)Vj;?QvJ{0{|{e2%&f|#5wM_QcPA6e#@Zhr7A{(pvs2pd$27v;FBAtmBrqba0u5v#yeTwE-mdGo@B50l=l-p45Z z>baJf@zFW0%-7y9))vjT+O^$q$L@RE-Crf0F`Fj#%!%QMuxdr+wO7v?SGK0II{Lj7 zzVcK>{c?xYs)#*;FCRymG(Sl&Z@JB?{$$CKwkO|9-K=I--$?I0^OSYj_wrEd%zOMR z=iav$koQ^g=k4qBCcHggLihc>rMXYn{F<9R>(%51E)Sg+ElB>l%7rnJ^L)o4L+^@Z zB@&Z1wFtW`l!rt?ddHy?CpxB0yLRZ%A=OH$g5J8kvJGb*UAtvaUYa0$|7_%|1pO_W z(hA?)+%>gv)1p5*|1|kM{q{B28Z(>mEtZ!K@#9lrcTK2{eDwFHf&KhVmYjhr__y|G z&3$>uwK8kxQy!j2uNLu|%;AbMb7U@5$m%Mr`gLXTa${fT^LxvC_p06y>?%9{IhaXS zi}gjYd*`8S6)vl^ZPL|`GB3(?(bTWHig6G z;AvrqA5M2Nx$I_Mc<5^m|{BX*^?Cxcm)2{Qa zyhP&E0}ZySzVGy(r6wb7z-MplE1@tih4YUdXW$As#eehvf0bwY^EVLO``JEQBZhUu zr+16nPdz(kmDYAEjm_VecZ(0NiSO6>GhSrQc(E#Twf6I;&)zhzdSJGu+8pP2&`>*_P<{I z|0xfui0pnpcAu~G^05DX`-%S^>&yTD=P&>FU%&j{cmDE!-}N7VdHDa|)ZYR zpkHt2B|pcn{^w_R`MLuCux;zt^J_tBR8Xs}YkQZ52V-mE$`^a(87;(joiX7O(Fj=N zpdfJP&K;Y*4EH=fwLK}G6La^Dwe{``>5Y$g6}YC^_h=O8Gj+)PxVSQVpG!Tn z!|laE-gEevt-_VC;>RVMtEOAEx{7$eE}hycIrYYsu0KmY+4xkJ#YBdcREDLvt?@5P z+7nQr6}712e5Crib?YvEkNa&Z|1O`qa?#<%Z|}w~ymCLu|3rKJ?Abco9vosg&%XQ6 zTiJ_>xAN{Kb~5?=-?=DV&g!@IpW>&C(Kd2(EsTw9ywW~zuVavOfYh^2ix@67ty?$! z1am>JZ`iYA#=*^pZG8{Ner=ZB%A6beS2uO9@6p=c)*X|!OmXRPD43+d(JeD||K7z* zDx7aF&dGTGwaVn(M(rS*$I+S_G$qbozj*ca5~XyV?_Uos*%lJE>?u!xp4P6Qw}Mk5 zcXe)?T|P~tppj`qX79{-W?|2sP3vp@dqj4LMb85#MkU*ZhjY{g@|Y*iSpTthRpJfj z#t-pK_r%J(>!);TpDg*}+c2kt+t8)2-U;G#t3?Keh6~rOwY9LQ@RW-X@d|Y{v{zTP zHPqr2o+u?gOGtW-i0llBm$M}v3cq?RAt+Z=_0_{~U2o;fOABWNuFra5eYE0iQtQ4q z8Rh5IZb+=$@K65#`kbd6@q5h0Up$Pn`6R@*Au8{6+sUU3-aebF$`!3pc56my;NR`+ z=Q=a@?fO1tF8g)MBdse>zPwqg)y{tW;ij;(^tAA6ZQ9H{rMm5rN!M-(HG0Ly&ze1B zPF&P-reuaHhhyh`{LZhPv_fWILH9N*Q_HOz+#Y_ahykV2#z$+Fxi)Bstl?nIw*B(u zOU#tzOP7W|+?NyN6yj6iP_iOEWkb2kg!GDr>KXg9XUyNce6njz49|_0xf%!0Za419 zkCR!)!Q-*+NjD2`W#qbLyYvo<^1RF0@-tXeR8;x?8dIzFhUb^J>)nf9^R@isQkkyn zw~SvMe?I%Njht36N$HaDL7gv@;P@|DDoFF84RJ*7ux-kMe2F7{;U&uaEH8_H&H zxVLOs*o;YhzhV~epa0q<_)e%`yz&0sm!8OriKeYvr13uPfThU$&&Qm4#E+oeeT}QbsG;|x}dVS ze1qMY%MV^QXM2g27Uz5lI63+E{S){8JhJ{dK~z!M{!~!#>yNRa?Y|1!JdQwHmUfF4 ztXjo&H{8$foNJ}S*9R%tZn3h5`?u@&o9XgB7GuvA|D~n)>yeZHNeAb$xUyXjrt~%` zT>o<}-CXp^)Ol{=zMsBF6t0Vq8@c#5sp2A`Gb9p)Zy!`#CRww7 zQLvxjwaV(J36s}e+25ZN`;61&(bA%&>Qa4mjrXd`Q~w58eQKV%&nzcy;U|f`VduWx zT)X#Y-Hd<#Y|bCq^6JbNhyJd+&W?T)>h2sUn|}Z6>{knge-pQUQ7T^jgoTV890 zjp0?VV>-K%1g58~dwje9xc^o6Tf5k%h^W5!QTi$DRH?}RYud{KPu1E??luc_ZreUp zgJXsFKL3A@cdhDN`Ab*#_MNM5*SG3^Zq9lL2`^CDjTaQHSD*s#a zzFwC3>|tZYLfgBif4yYi|MQgXZo6~tcNZ4)S}k`=3JMAW{a2?a9ZX`=U8iDosgP*y^Q6U-Lzk z*E6>KYTC2l#EdOF*7WfBM7gE8B$;L=uQgLXcJ`>X>hgY@NhR@d=kD=-+`_T)#jDfa z+(oOV_lJnc&HO}hj7E7#dxzp81s*}&Xb$x6@K)N<{zYSE{h z`MQA*f}hov+65JN9Tl7QkhMLzm9O7)&1M6}>!GE>-j~+wGtNp@R#)C~Y}MU=FSf1m zK58-DK6>3R4`nOv#r3gQ)i)lw9Hv(1u)%!d>i-h-<2+}n|v%Y3hi zh^EYqORF-z9Adnts%gWOcZ;4~+G!;D{Ndbtdlc=KEVq=pecWXIx^>ekqAHhvExz8K z+`HfO(7K>>H<@*RZ!XFyc>ciQMEcj~Y?(F}b6>79yH>RBsPV$*?Z0}T9@{-r%tO3Y zY1+KYD`ox~}uKUjjdWY-_BMSAX8| z>uPAyrkCcw79M5Z;WByoy}zqhU*6$S%)Vdq);EV~uSzGcnHpNve0b~nwU3|Q(D1LQ z?qtf(JrwzS^MtaMD^KOwyFLFG{QFD6bo;v#&cA!Xd13F;1figin^E&0r)6Y>O`N{G z=)Rif>EF+s|9<&Wu++Zx{k*$#1XmP#A6C{p@#f#%3Hv@?T7Lh2;c2boZAo6gjzund zs|zW5-zsq>M1Kh4KlyB$+1le>TU$GizI=Fe<-u0X#@3VnS~>5rO8DpOi7x8MjpBN? z#c=To%~MWsj**d`y349E|4)dXI`y`NSF?Os*sYurc@1rC>8fQytp#ymp#>Fr;y-i) zgq)ha(^!-4)ht=sHS1UK`9t$$FW$>>oiS;V(3Ae$SuroNPJ6$Z@M+@VuV(JS`~9Sn zBsNBfrlrjGuyc`7n$?xO`dQht)iqvi<`0%XOjw6KRBn3(P@u21#k)*%%SM-dTR&C+iuY^vyx+eeamnR96w4z^Ka*~yKbwkf_Sl{0?@j-#F4HxA)}!1rXU?3d&35P9Bg?1-YQ7zfb`x30q&9ixgb4x? zA~Hf!Y?>w}GMi-DL zi<4O@2+kc9-Jpg+K5yWUkA;)XUOt(6^5e&oH%0m0v$rHe+64 zK453fbph$o083aqid+ylrxADL;lY2$YTkcxIC`q!?C!}Qn4dn`DYxTW{GWf^79oEe zo?4fFR{g%e>HNYyijct;CzW+;CwgQr`FgpNXa0rY#j>oRcBjk3yR5~z%k0l*ZnR8W zs{HeR`g_|0w@z(h`Twu1yzKY?w{Omr%$PfK-n)A@=gwRCiZk@?)YGZc-xlep_b?_) z-@b9|7|UdzbC%EN6rZzv-owB+$%CmyV8NWgX#(%-S@hbu_(D^oQ}=$J%Rg_)^6&R{ zPI~uuZ}EA{=~t$&6BrOTH(-tYY; zx?;hChNh-IuE{30*JYNb`6>TlZ82Xid@4R*^Ro2lMUvV#uHXJ~TT8WP`k9wnE?X99 z_ws8+C7ultwz_n%CYPc0*|cjL9P&@(-VqGEdT48|oaa%+RWpiogyzJRjzrJHvdZ0^>m*>U(%K;Xp#cdpxgxZ2n^%k9tPw9oFb^Q- zGDmt@d+&8tR`1X+o(!yNnXk4sABqVVV~%d*5G!5s(e&;4_!PfTCdEunjgs>6`S#^% zwx)`TYC3jW7G_EYYG>@NuBaQ`&^9`8`1)Br8=WU7t+-z8+{E#>c>5!7Z|~2+zVGAC z%cUu-s@z=v+x+s9Y3!j~BAd&Wv7g&<&Aw90w7j&_z`c6YpUF$q4k)hj*nC8F@y+jV z>#c4aXqd%$$?3QD$Ga`1cm5dVzTUlV&MnD0ofU#_j|2obI5JM1&d0U+Y@pYzAAGYH zq&+NgJQ%cMpZV=IstYD~9-pSXhZPjP24Xijp2cio5lQ&!G5NIH*3eef%9TegPr62O zw$9wh`qJ>{O2MC+4?6|zR-WW6+WF|Bbj9IqZhc!n^B;Tv^;}B&`W2OY%9np^Uc60F zIa`Wnfw|h9%|@o)ElfP0TK8T1^y$>IPS=RkAgu($9YIr_93mI`@LmhM%KLenU{rL2 zvsbHBplPdHy#1$%{|$sE`rO;xue`xUMvZ%pq>Nqq#E#diG~dhIUVXM_4d35)F+73mQ)GGqo=B zP!-+GJlCQ)N?b&TwVJVi%aO$n$EPXYv6RiMIjbUG-q)ymU9R6Ly!^W>^WH~)w!E40 zV$G6{o|X+gKPG&+ao~!?|0@~yIqIKZdE(Og=;G2-%QpG%QV){X`{$5X{&iEf)O`J~ zrJp{0_gZ^cNy{;_B4@?&*H3*u2z#^@J-TyOR!?fzmxpHTtCMOb89EjH{P{Qi?Vda9 z=UY6y;o|nA_WGHmXC5<-d|A@;M&9>Ice$};gHM5_h;pOP2c<4u54TS zxtV+y%1<~Oil3WbTJmMXjz3G|4s~=~d0XRu{?oq2b6@KAue#Q^=SahXIMz)mpP&Bw zu#5L&)YaI2EzMh(|2}baY;9uFS}!RgGCMg-EpN8rT5hgsT4siueWMt-Zts?B?KEmJ zUas8B&vopQ`c@8+sN1)cn{5==i9Zy+dZ*Hqd;i%PK^KoroxONfuj98G_tMIXkF#wx z(z(xDspZB^FV54J3sIA8^==ozniP6JSi=I665>A;mYl7W!G)fw)^j` zR#;N9V7Z>HMe-bXt=(BdJJz|S{Fw9lTxwBEbj5vBU3Gh1Q_0;{^PdS%ka;;d=o){w z*ODLYW?#;kr`?M4lW7bNU3#O+~GS#7C3n-D}I_=Ff<8vfgFRC~`(7Ai&}2)}}+pR?MU3Yi&5<4DT0f7i-EE#*OE*Wpo9pqs|2O0{B)sSAT$T%HxT@T|XU+uOOV@ranb0FR zq3y@%zcxwy<@@HE-`~`=a;3(}`lPQOAJ^=j=b0m)`u<`@Vn=w&Ppfpxi|0y%mSue2 zTXyLU-x|TA(%xo%($D#iNLRY#=M-k|S$l~4)~(e>PDTc6u3EW&_nN`?;L)kKGTjZ1 z*Jj1o*%WK5EsAeDam$HsU-7;DRXhO=GoOgxy3o2>m$&@-8ad6?C-_R&y8C_G>_aB(Ry!g=P7ktv~1)Lo0{U1JXWP2T*b zCrz$tr_9|rqZqhe#Re?so$hes$ae#m%RM$f6w2)RrlongUT$luJp266%*rbPK67SW zx-@5siN8$f;peXNohmk;xW`uiy}6m!f~lG<(eHg=(=02S7}?8K7gj&3xxSt0-lp;i z;`?$8#BO+0J1pF})%L()K0*EN>&K5inW%e~>GEEuB=-D$p$7N2n8gJ~O;HxIf4C?9 z-D!jUc{$vk{NMHd{@#7u>v~8Bhj?0^wUYCV=0tVB2t5yhs_-3ge>m#(-mm&6Y3{#2 z+x>jY)RJw})PJk?ZwS-U&Hb#{*U+nLu>EXvVoaC+zw_mMPkS=mzI3u2-v9SZQOIVg z4^?Z@9ej`bgf`CiWz`Ya)b=VYUlF@J$*I>rwyfxr(f*1jE>|XWT*<8adU|)C-#7ET z8&Aqk3VyBFH~V65fT7Y#{{01qY@FA){k9Yl0i|>HCa1@G8V7o;9=m1nDO25Y@K z!k5oDF?sbKy;qe>v-7$i`i1XlFj!t@vV`gI!!2ySFCu*J$-ds{!{B`|&MCQNTLaUw zl=jy8dD``#niVvrYdt>GCppJ9>xGn(Lg{su*xd!cx-YwbpKJHC^`q=!j_(+YSNeqT~0rD|59cxT}%k>f9J9O(HY^6QnzrmZa; zZj0Xb&s2B5_v}qxv#_9|qwj52>l^o?8s_Xf=dpR#JjImkvf00q!ugI}I_|xNU8KO` z&(dx-vuWGk-Q8Px{!iQ1oh!HgEPZW#eNA5cR-@fTmyayiv7(^*_v>ce`b>dIa$cvk zHY?xl)r&v->PWEIbkcTmPgKPwbj{l68I^We`_s&2 zS{Bb(5+`n$EqpLuMz6hlrToK{Ci%e|I*UbS+;mX6^7E>%Srii!E31e|z|V&Z1QZwZ z99%2+gvlm$`@_D;mn4#_p5zsr(%QK2!m$T!*&>w|j~<-=pCBfA_EC~`?!Es%k3W}c zW7|2IRW)uuXU)9kv@oe5!+rA_x)oL#^5_mv}A&4!ny7yiF?+udNw z(W`f6o4|<_c!M zGHu1`_P2)~ho@VAy5k?aPu@xW>!e-AZ@%0w^3{x+`&L+IEB~~XX=!e}{rt+=mEZZ} zI(@#bU8nU}f4ggh?AB9xE-PHy{{Qsf{^#=3Gv_+2=es|9R#qC?al_atC)Ih?^Q)iP z=X`!8cv57e-7*X1ONO;4@1FW!H3|7$Cw8!I0$%-?(9X!FL9 zTqf3t_F0FYItd>0)ykdhRlmgK$LR*%nLhunFnee$3Ed_k+qZwe%(1v1f?vO#LV^O}uj)Vc|L&V9 zU0-$KMzfdBriXDhzWTpkP>j!x>#p0I7D;v6zrSv5X8rG+<#L6O zY4KgRS%sNvoBzs3ADJd#eMf(ub&3D`8L0sdsV8EyFDG1zc(AkoT!{bHr&6_IVK+Jo zmQ6jsiAiT_P+OT}VwAK)V)2>`=|gJsN^kbRHY<<2^zie~ecZXl!W}t*76Ns@5Af`B6WAwx8fE z?ZfM$XUvkAXZ=!KJgxdqIlG_Kv+1Fye_p<=U-I#cq}H;CY6nJ95s`Z-0S)GdEAC&t z8X6uRAAkSDoLe_8u&}y?g@w)gT%w`zf2>zGI9@ij#bW-nD_6)d_Oi;^Sk@SL?xnM zR6i|B*w!^Ab@Ta*gwhR%Ub#%jcW~U}UpsSteaG_ci(NfSU3YD7jE-|Wy0L=5&GgoZlgzVoN-5td@&8&aE!ZU4E@r2c(*=^r#%V+l(ls~sN zvt3-vk^O0ASi{l;{e_A#*$xW@4ynznyxG5c*7gG{_wN7yB$cO->EYw;%O=Zwi+>ZT zq@c~a@Y(z$S4)*^<`iw+sdME|+r@w1@Bdt~Z|{k(FQ%LRP!0RpYdtUTajIS3_V-WR zDojJ%+uC=kvE82WbIHYM+pjXRQIFo{uDdVJk;eU}C+2h4ths!#Q8t=T-m53A`;-}_;6`6Q_uZ^j%CZ1 zIk(%{*FJmlak6{=e49@m{xyYfCd&PL_5R^w_5BtVKQ`C@J8aJ!r!mz_L?ob+f$It5 z+1?+|Zd@*%ZK*oTZ_nR*)rGu^C)n?ske5~T)~`Nx%FoQ>Pp@8@vZUl(!mOE3pEj+U z($GDB*|n`E6?2SuxYuppFZEJ>u6)sNzmk1ZW<09+aOs0lqU!fk?eTN`JN%ahowDJ3 zYh1YLsPES$J74X5^7Q&m`HppOZf1S9dHuj>LiPV^p~+mi8?WB~5oXbF$bI*M3FV(3 zOucq(3di)|bly4bvnMas|M!sjcYs!AQF~wIGSP&UCAki>9Tq0cZmfNlYM;m?yxn+e z$-~3Ufw^}%oT5${+Lu1MC)K`TbBKJ^^TjuI$+>jB_SKx9YaI9_xAw^m&D)__(XlJu_BzY|x>D9L+xDF0&8x0a_x8TfcyfM;m0a;j z?Nz(JPfX7gZ#Xp7x-503+4O$-HIh<-I$t+EKP8-BFBE^bwd3QduYo_iV{9b6Wwl)# zK^Y`YPvgJ?UhBhwGH>2T-<;u?(;eU@dcy4IrP6&ZhnPht?|c->x1!^S*xC)Qr`N1i zy(TtMKYFg>xBs8z|HXTIb8~U6uwiIzGdTIGA*ncKpW!zi*5ypX#uHO2-~C8TU!FaE zzs2;6w@$tIviHkQ%SP6n{M;u}Hhuict;)Of=r#5)`FHkJKDuk1c+m9PF~xg=H|wsi zXG`yVCcM^e--Z1~>hDW_y}keE+U`Zt4^6E9zPv6!i$$Z-`J$P+?55(?I`&*z??lXY z%9w19o~!wN@4uNF8~?5RD}RSaUt!x$skyc}tG^!&ovyGgVb85!&EI?Orc4pL&bku?DB~XU{V1TEc90f1Dri;a!58vF{{C zektpffSljfh}ZeQmUpbmb1|}=|Gezw2l245=Y4N~uUWYH!oS7e^=3%UvD=}qvzDui z;pnUX_v35xPKvJyC|dV-{{Nr)KW}ITPQJX*dK))$W?tKGJ<0eVZw~C%V?F!i((L(f z>>pLWzOi3^r)l5XF2mdF^HYlcKkI$6XUnsO#q(t@pVwVErD)?R@tqYNf;X?I1w=$g zfBy98(^uw?*H_qQ9B}^n<&&I*go`zoh)A5h#+|Yn#(*22RU1}ZeZ}zKA-bCTha;!T zY$r=!joT@lVG;}esItxXcrKW^$5pDl@z~tuMbFJFHy_}-vGd*bd;hLqyA~!Q5^$55 zHO6^H#a8~Rf}6iiY%VQkO6(JgPPWzm`!cq+z4Q`;_;rK3fu}FuS(z-NEql2(^~=*h z#%(K1RF^DP%+Fdj*D7RVPiCz2`dKqyOqp~$J^J*_Yzfw-%=c$(-(|39LGPNcqP{#^ zwO=}GJF6D&Sa)_|lj@-bDf<%Ftam#z=Rv>d)g^3U)1N=sXv@KF94{L+VU|OjRA}+W zIVU$QJz1ujJmpfjnf*P@#Ys=jCo)BFePfc#WY%y{ecU^-hT~)Px?}Zsx_o&K9b2>I zXw}^M-uzDZXyvx?+V(5+w;P$SSm3`x}qvmR)9QbJxqiUO)As!Is81m!=%pHOuMIn+a7bx9J?Z zdH2WVa-MhV);-=Po+TB`%r!|_UHzA8vFOy72V>vz20h#H$aS4e&s_=K8CPeyE|i)* zi}&mKZCk^xPk(-Gdg|4wORkG8zapk`^~v$;&yGJ+V@p}0>a23(`u$}O0#7K2>^sK6 zT07b4X2S<}t=2tm;x@M`-BqWb5`8t7y z+~W6bPM@x>0}X#-Hg2H>FK#~ph+UFZGVc_l%Y}eLY_kst==llkx>v=`${MmyUn8I`RXTaXz8!n#ys!RM%pCmM z)5c~_(1FjhrWDILrEiN8^o@^)k;|l@x1fd5ip_VjlC2zS6fFrLJC?$UdJne6r)JlSX%C zE>DSWNPFV9(#$O-TiKwyWy8YC_LM7}6-Cv_KOCE#7wKeI<@dw<7* zm3{|h+O@c6O@AJ5pzst)_SvbP}@2@ld@;~@}U)A?ne!qEQ<=@52`TJfkT<{?$puw;@ zGZVB1?0wFgHJd*N8Eu+uR6J?Yr6jH{BmSCw@BjS#%yZAkdk4>y4+kc0Xy@2HWy85+ z#w?$u0vv3)R@m@yeO;&&#Q){N1nv)ixGrC^?kN;44cTY+$0@(&E!VWBy*t_h-ZHfI ze0>Y^3z1Gwg=Pwm)pHu*_Y$s4w^O@vB<`Z}yk?7?jnzbUQGLwHldS(bqh4 z#W3?%ANu`2jw@JC@n+B)O zGmVcN-XA%u&VNq6XM3OClbWg4C#BAP|NO0WR$uguUB>%=Ep@ilDOtCQ_p9fcKfk)3 z$HdH>>dg55<@9~7o}aCvzg~{d`1O+cKjWFm*@e#+wO&d}nt5-=$%me`A|ms+Me2T@ zj*p7C=X>7g+zBtnUjLqRXHVbR{(kc6@b#NoRX%7is5a;)PBvcuQFVjqlnn=ut>0Ww za`2DELS|47;N#N1Tfon?lR$&r!rVGdl$xDhzzmpe!CN29&R`iXe=#zJ^(`L_^ z!m#)0V*lQd(t}E~zKB|Ch)d0Vvu2qJNB$C(8}?H>6&|bpGe3JKZuuFJIP-r)zkwiJ1v)pW0ND@67D% zY^^@~cHY)cvR6IkeYRwFjy6|cf8to_%BW*AIm?XAcV|wucbJ*`<=>b7{Xd^Hy=RF0 z!q$99omqX?iCL~j>5;`7)*hB)UH+Vvwc_xzXU|p!FXxl9srYe0eE;ve@9V$+zAtB4 z^x<>!{I~WWGQFah8kpv?8}o68oC|-)!mFBbhjaG=1M|lB4$I{Neg--`R9}@Zr}1Y? z$ZZG4Wpa09-W#5{ykzFSsVn_Dsv@QG)%vdK_goQbUu}@fdX&|2((xpbC68aK@0q-U z|GNKzuhpzOzHV9=k?J|YUr1JOw%I&EsjSL}8%m#U%CdTXW_sIB_NlMSX$Odzb!w z5ep-yXtPfLck@K1h{!zi8G?LE?ulx9XJ<#BsG7i$BC;@PuCm(OpF-ar37I*3ui@N1 z#Ub(Rg&)O_e|+11@7MHe*UTUd+)~A8Z-F!mjmWp4d4_{=8=}0I$!RoO3P>&hkIOPi zXYy+tSQMbRZ(T=Dtk-P8e7{aj3Bk&U6_FnovhP!WeWUHvr6zT;)s7m9|McbaKlcVNe`N6KBv1R1uDic$-3~?e`?XEFCHMZx zYw-kG*E=^Qd-h~Kd?6}ymE&FK!ACn5TzU5^MBC%CmhC$k%G+c!NRkTmz6a{ zj+s?vpPi4(tEp@Iy$-Hizzi;usyNc-RQ{D~U3cc|LmS^r_PZH10S01^%(trBZd$t4 z_RM+Kz~JpSTXK)_9Es90a~FN>Y*e(qW@~q6{wj^L^))jyUG|2)D*4$JeoINk_Dt#R zSrTq$*@sxJSr`AQ6_6*9>6yvXt1tQHEb3_B+4AeW z|DN=M^^((4ADGl-^D($hc=`b zE!6xlWukUrt=gSmaT%AHc*MA-N(lyEy5o1GeE&|lR?olvzxw(dBlMa?9&|TIBz#*q z?+VMBhNeT8S-vG2%@hy(cYg|Z;(>n6q*#lu4K7P%Knd_&qPwvg!6(5q;`0OhSIIvYs@b=>!n|*g( z`mw{xplqdb-7?j{=qAbC)xP?#&8II9edZFL);c}CZCX0Z^yR;%FZ(e~wK~z+F%!1v~f zxWqimZOs}|$+=&7dFRID&EMz|DfHgsLvPsia|ijpZJhc@)^y#Szi(Xo|CyV(J^Wm_ z_w--$@81kx?TNC8=8@ifCh~*!f(0LJBKhm{lhbF;oIPXS+zIohPM9J!HGT@4A=j^8 zze3J2&E3Djoil!?aN0GKDF$1Q9SN$e;8`aMN^qy19V!U_boQgr^pjlYPZsgdy})(; zqtNwrOJ>jhyng2dzMd&FPBk>1*?q%HKQ{AE5x+s1!eyr5hx^wCWiV?LSj@R{<;sN( zA39EGTsUzeqt`9dM9IiX#iXX_Q>Fvw>cDF2-J$;b?r<`Mg`Y6pFSF~-**C5GvQMy| zcYGMb`NqIY^7r*u_Tmq?6K5Zo@wfQ-!R2S{7A*L{AX4{rb$oQhtmUa{X=%$H-Z{rO zh4{t&TK?Pas`YYq!yc1+e;yZdKJaevWM^PCV%~l7aPPw?&`5A${~?#1;<=l8OoLC) zS$B<<)%)PRPNUq98amsK7I5%dUHY*gL1&{b+x1B;(+cXg6)gWNyG~kCa_;WB_1S$( z>zvpAS*Q5_@xR9p>@SoAN9!=nJs`3%A$pC#bzO72)Nc=aSzE33^e23ESQ_+I|Ao9w z#fu9I57+-M|IZM~A1`BB@!-L}^L#ZjGOyS#at5>%J{D9xW3zxoZQ7X`R~ioSfRbw2 za;IaC5%UXH20O`#tpE19scC7#`yRE|j@n5g8qGHY);YLK$&2(X<$1aw+tz0KiX~fk zjXGU!J@B}fpuOMNu;>E|i)u}AeZ{BC2PbQ2*d#w`GnDINbvHEFk&(+D$zRi#(W{sPa5wN-h3elGf3KHI|dAnot@g4Jj&scwZL-_L|@i%);sYdhOKJ0D9 z&h;!$e~*U99^rpX8aJ%(wVsKan3e3kRWD>6r)WxJ(o}u*k59F0ZgTl=J2O?UaH&gQ z$wb{qfmLA~OYUvI|8M#{ucJ4}BMyGpXu7dC@ zsh1v)o0~RHIjGa?o*1p|z-X0fHP>(9n)UfPYw~mKR)+lGwl%#KxJNADf=IsH_2yGO z4Xh7hHKKIx7ONkaa%AEAb?1K^YdRFWT|6#Ls_fb4pUeH`S{D6rC{2#bD@^hWbn*+V zDGRI#OPu4zom6gWWh`%^wOB#R*4}8jg_+H{&*uAo{@!MGWpP87+l(bEJB|EbRTvhp z;woY+aXc8bp?uL9XYV8tv8Y8ic0|c$*7(-(t}EMU>NWZ60@(!@>VzfZ{b44i5@Kvld1Du6y*dl3&YAPx%0|-f8Wfp&!y3nRZn@;r6$+kvSyEbL`WnPp7&$RD9R0Uw>F@ z%K3UR5s`a2{f8=69)A|WC>!lKU*|IC(XgC8(Z1|n_r!gcO_s4swR`O&*^cRLaXDv_ z-R-_`_wL_+b{fB2$;oM$_%ZO{M!`nI#D5nT+D$wdH_=gUUtZb6L`DB=fdS{Iy1tmd zTQoi@YS#R!!=K#leaM>peCiR#6|-9&7{A-|^_(eBgj!_xHv7pI|0-IU5E#jZ`x~FVgFexDP2kUY^}t@%e1@>AMrS7jW;|dWZGfxht%hu02la$Fkz3bgI{a+dPwg zUrx8aywLs%8)!z=S5NwCnCP@8OU0h6h^MNGq#YAma{S41wPRY)DB->gPyQy)6M$?uXgNN zrf|t_^U~G3)?_9ysu^$dkaZ0Iyx(feoLvWF=F6{MwL&gF;hibNzU`~lEXqnsoa`p9 zxnz#%x*T^G^~=|nTdi6(>-f#x?^s#07jE3MXIV9mUWavP&ihbye=TwCcX#w7mim}a zogQxbWgS;Jzx(mh)rAZKwLyTfP@!ZGFzf%6эXN-qg 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�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 diff --git a/doc/qtcreator/images/qtcreator-modeleditor.webp b/doc/qtcreator/images/qtcreator-modeleditor.webp new file mode 100644 index 0000000000000000000000000000000000000000..aeaccae16b67fd56b0fbbc0140b9c4da8901468e GIT binary patch literal 23304 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%0A3d@|Wd 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 + To save diagrams as images, go to \uicontrol File, and then select \uicontrol {Export Diagram}. To save only the selected parts of a diagram, select \uicontrol {Export Selected Elements}. \section1 Adding Custom Elements The model editor has the following built-in element types: package, - component, class, and item. For package, component, and class elements, you - can specify custom icons. The color, size, and form of the icon are + component, class, and item. + + To use custom icons for the built-in elements, select an image file in + \uicontrol {Image} in element properties. + + \image qtcreator-model-editor-component-diagram.webp {Component properties} + \caption The Image field in Component properties. + + \section2 Using Definition Files + + For package, component, and class elements, you can use definition files to + specify custom icons. + + The color, size, and form of the icon are determined by a stereotype. If you attach the stereotype to an element, the element icon is replaced by the custom icon. For example, you can attach the entity and interface stereotypes to classes and the database stereotype to @@ -185,7 +221,7 @@ and templates for existing types (such as a composition relation that can be drawn between classes). - You can add your own definition file and save it with the file extension + Add your own definition file and save it with the file extension \e .def to add custom colors and icons for stereotypes, elements, or tool bars. Either store this file in the same directory as the \e standard.def file or select the root element of a model and apply your @@ -203,47 +239,52 @@ \title Create UML-style models - You can use wizards to create UML-style models and \e {scratch models}. + Use wizards to create UML-style models and \e {scratch models}. To create models and edit them in the model editor: \list 1 - \li Select \uicontrol File > \uicontrol {New File} > \uicontrol Modeling - > \uicontrol Model > \uicontrol Choose. + \li Go to \uicontrol File > \uicontrol {New File} > \uicontrol Modeling + > \uicontrol Model, and then select \uicontrol Choose. The model file opens in the model editor. \li Drag model elements to the editor and select them to specify properties for them: - \image qtcreator-modeleditor-packages.png {Package diagram in the model editor} + \image qtcreator-modeleditor-packages.webp {Package diagram in the model editor} \caption A package diagram in the model editor. \list 1 - \li In the \uicontrol Stereotypes field, enter the stereotype to - apply to the model element or select a predefined stereotype + \li In \uicontrol Stereotypes, enter the stereotype to + apply to the element or select a predefined stereotype from the list. - \li In the \uicontrol Name field, give a name to the model element. + \li In \uicontrol Name, give a name to the element. - \li Select the \uicontrol {Auto sized} check box to reset the - element to its default size after you have changed the element + \li In \uicontrol {Linked file}, select a file to create a link to + it from the element name. + + \li In \uicontrol Image, select an image to use as a custom icon for + the element. + + \li Select \uicontrol {Auto sized} to reset the + element to its default size after you changed the element size by dragging its borders. - \li In the \uicontrol Color field, select the color of the model - element. + \li In \uicontrol Color, select the color of the element. - \li In the \uicontrol Role field, select a \e role to make the model + \li In \uicontrol Role, select a \e role to make the model element color lighter, darker, or softer. You can also remove color and draw the element outline or flatten the element by removing gradients. - \li Select the \uicontrol Emphasized check box to draw the model + \li Select \uicontrol Emphasized to draw the model element with a thicker line. - \li In the \uicontrol {Stereotype display} field, select: + \li In \uicontrol {Stereotype display}, select: \list @@ -283,12 +324,12 @@ \list 1 - \li In the \uicontrol Stereotypes field, select the + \li In \uicontrol Stereotypes, select the \e stereotype to apply to the relation. - \li In the \uicontrol Name field, give a name to the relation. + \li In \uicontrol Name, give a name to the relation. - \li In the \uicontrol Direction field, you can change the direction + \li In \uicontrol Direction, change the direction of the connection or make it bidirectional. \endlist @@ -321,11 +362,12 @@ Therefore, you can assign a \l{Keyboard Shortcuts}{keyboard shortcut} to the wizard and use it to create and open models with empty diagrams. - To create a scratch model, select \uicontrol File > \uicontrol {New File} > - \uicontrol Modeling > \uicontrol {Scratch Model} > \uicontrol Choose. + To create a scratch model, go to \uicontrol File > \uicontrol {New File} > + \uicontrol Modeling > \uicontrol {Scratch Model}, and then select + \uicontrol Choose. - \sa {Create class diagrams}, {Create component diagrams}, - {Create package diagrams}, {Model Editor} + \sa {Create Models and Diagrams}{How To: Create Models and Diagrams}, + {Model Editor} */ /*! @@ -336,27 +378,27 @@ \title Create package diagrams - You can create UML-style models that contain \e {package diagrams}. + Create UML-style models that contain \e {package diagrams}. They show packages and their relationships to visualize how the system is packaged. - You can add nested package elements to a package diagram. The depth of the + Add nested package elements to a package diagram. The depth of the elements in the diagram corresponds to the depth of the structured model. Elements stacked on other elements of the same type are automatically drawn in a darker shade of the selected color. - \image qtcreator-modeleditor-packages.png {Package diagram in the model editor} + \image qtcreator-modeleditor-packages.webp {Package diagram in the model editor} \caption A package diagram in the model editor. - Right-click a package to open a context menu, where you can select + Right-click a package to open a context menu, and select \uicontrol {Create Diagram} to create a new package diagram within the - model. You can drag items from the element tree to the diagram. + model. Drag items from the element tree to the diagram. To update the include dependencies of the package, select \uicontrol {Update Include Dependencies}. - \sa {Create class diagrams},{Create component diagrams}, - {Create UML-style models}, {Model Editor} + \sa {Create Models and Diagrams}{How To: Create Models and Diagrams}, + {Model Editor} */ /*! @@ -367,11 +409,11 @@ \title Create class diagrams - You can create UML-style models that contain \e {class diagrams}. They show + Create UML-style models that contain \e {class diagrams}. They show classes, dependencies, inheritance, associations, aggregation, and composition to visualize a system in an object-oriented way. - \image qtcreator-modeleditor-classes.png {Class diagram in the model editor} + \image qtcreator-modeleditor-classes.webp {Class diagram in the model editor} \caption A class diagram in the model editor. To create class diagrams: @@ -387,10 +429,10 @@ \list - \li In the \uicontrol Template field, specify the template to + \li In \uicontrol Template, specify the template to use. - \li In the \uicontrol {Template display} field, select the + \li In \uicontrol {Template display}, select the display format for the template: \list @@ -409,15 +451,15 @@ \endlist - \li In the \uicontrol Members field, specify members for the + \li In \uicontrol Members, specify members for the class, as described in \l {Specify members}. \li Select \uicontrol {Clean Up} to format the contents of - the \uicontrol Members field depending on their visibility + \uicontrol Members depending on their visibility (private, protected, public) and following the rules set for whitespace, line breaks, and so on. - \li Select the \uicontrol {Show members} check box to show + \li Select \uicontrol {Show members} to show the members in the diagram. \endlist @@ -431,17 +473,36 @@ \section1 Add relations Elements in class diagrams can have the following types of relations: - inheritance, association, and dependency. The end points of association - relations can have the following properties: role, cardinality, navigable, - and relationship. + + \list + \li Aggregation + \li Association + \li Composition + \li Dependency + \li Inheritance + \endlist + + The end points of association relations can have the following properties: + + \list + \li Cardinality + \li Navigable + \li Role + \li Relationship + \endlist + + \section2 Create self-relations To create self-relations, start creating a new association and press \key Shift to create a new \e {sampling point} while dragging the association. Create another sampling point and drag the association to the same class. - To add more points, press \key Shift and click a relation. To delete a - point, press \key Ctrl and click a point. + \section2 Add and delete points + + To add more points, press \key Shift and click a relation. + + To delete a point, press \key Ctrl and click a point. \section2 Specify members @@ -490,8 +551,8 @@ \endlist - \sa {Create component diagrams}, {Create package diagrams}, - {Create UML-style models}, {Model Editor} + \sa {Create Models and Diagrams}{How To: Create Models and Diagrams}, + {Model Editor} */ /*! @@ -502,14 +563,19 @@ \title Create component diagrams - You can create UML-style models that contain \e {component diagrams}. - They epresent a set of components and their relationships, and show the + Create UML-style models that contain \e {component diagrams}. + They represent a set of components and their relationships, and show the implementation of a system. - You can add source code components, such as libraries, databases, programs, - and architectural layers to a component diagram. To add components to - component diagrams, drag source code from \uicontrol Projects to - the editor, and select \uicontrol {Add Component}. + Add source code components, such as libraries, databases, programs, + and architectural layers to a component diagram. + + To add components to component diagrams: + + \list 1 + \li Drag source code from \uicontrol Projects to the editor. + \li Select \uicontrol {Add Component}. + \endlist \image qtcreator-model-editor-component-diagram.webp {Component diagram in the model editor} \caption A component diagram in the model editor. @@ -518,6 +584,6 @@ the component in the editor or select \uicontrol {Show Definition} in the context menu. - \sa {Create class diagrams}, {Create package diagrams}, - {Create UML-style models}, {Model Editor} + \sa {Create Models and Diagrams}{How To: Create Models and Diagrams}, + {Model Editor} */ From 33eb5f509cd6f6b9b3b5f3070f3738aa49e51815 Mon Sep 17 00:00:00 2001 From: Jarek Kobus Date: Tue, 18 Jun 2024 00:34:16 +0200 Subject: [PATCH 22/30] TaskTree: Make it possible to pass DoneResult as a done handler This patch addresses the 38th point in the bugreport below. Add tests for it. Adapt docs and warning messages accordingly. Task-number: QTCREATORBUG-28741 Change-Id: I276d2d4c3a514147f67252dc5073d79fed94b9ff Reviewed-by: Leena Miettinen Reviewed-by: Eike Ziller --- src/libs/solutions/tasking/tasktree.cpp | 13 +++++-- src/libs/solutions/tasking/tasktree.h | 16 ++++++-- tests/auto/solutions/tasking/tst_tasking.cpp | 40 +++++++++++++++++++- 3 files changed, 61 insertions(+), 8 deletions(-) diff --git a/src/libs/solutions/tasking/tasktree.cpp b/src/libs/solutions/tasking/tasktree.cpp index b7ebb45a8c7..55ae3cfb56a 100644 --- a/src/libs/solutions/tasking/tasktree.cpp +++ b/src/libs/solutions/tasking/tasktree.cpp @@ -677,7 +677,7 @@ private: /*! \typealias CustomTask::TaskDoneHandler - Type alias for \c std::function. + Type alias for \c std::function or DoneResult. The \c TaskDoneHandler is an optional argument of a custom task element's constructor. Any function with the above signature, when passed as a task done handler, @@ -702,6 +702,9 @@ private: the DoneWith argument. When the handler returns the DoneResult value, the task's final result may be tweaked inside the done handler's body by the returned value. + For a \c TaskDoneHandler of the DoneResult type, no additional handling is executed, + and the task finishes unconditionally with the passed value of DoneResult. + \sa CustomTask(), TaskSetupHandler, GroupDoneHandler */ @@ -1056,7 +1059,7 @@ private: /*! \typealias GroupItem::GroupDoneHandler - Type alias for \c std::function. + Type alias for \c std::function or DoneResult. The \c GroupDoneHandler is an argument of the onGroupDone() element. Any function with the above signature, when passed as a group done handler, @@ -1071,6 +1074,10 @@ private: the DoneWith argument. When the handler returns the DoneResult value, the group's final result may be tweaked inside the done handler's body by the returned value. + For a \c GroupDoneHandler of the DoneResult type, no additional handling is executed, + and the group finishes unconditionally with the passed value of DoneResult, + ignoring the group's workflow policy. + \sa onGroupDone(), GroupSetupHandler, CustomTask::TaskDoneHandler */ @@ -2436,7 +2443,7 @@ bool TaskTreePrivate::invokeDoneHandler(RuntimeTask *node, DoneWith doneWith) \section2 Task's Done Handler When a running task finishes, the task tree invokes an optionally provided done handler. - The handler should always take a \c const \e reference to the associated task class object: + The handler should take a \c const \e reference to the associated task class object: \code const auto onSetup = [](QProcess &process) { diff --git a/src/libs/solutions/tasking/tasktree.h b/src/libs/solutions/tasking/tasktree.h index caedb78c2c8..308069edccf 100644 --- a/src/libs/solutions/tasking/tasktree.h +++ b/src/libs/solutions/tasking/tasktree.h @@ -350,15 +350,19 @@ private: template static GroupDoneHandler wrapGroupDone(Handler &&handler) { + static constexpr bool isDoneResultType = std::is_same_v; // R, V, D stands for: Done[R]esult, [V]oid, [D]oneWith static constexpr bool isRD = isInvocable(); static constexpr bool isR = isInvocable(); static constexpr bool isVD = isInvocable(); static constexpr bool isV = isInvocable(); - static_assert(isRD || isR || isVD || isV, + static_assert(isDoneResultType || isRD || isR || isVD || isV, "Group done handler needs to take (DoneWith) or (void) as an argument and has to " - "return void or DoneResult. The passed handler doesn't fulfill these requirements."); + "return void or DoneResult. Alternatively, it may be of DoneResult type. " + "The passed handler doesn't fulfill these requirements."); return [handler](DoneWith result) { + if constexpr (isDoneResultType) + return handler; if constexpr (isRD) return std::invoke(handler, result); if constexpr (isR) @@ -496,7 +500,8 @@ private: template static InterfaceDoneHandler wrapDone(Handler &&handler) { if constexpr (std::is_same_v) - return {}; // When user passed {} for the done handler. + return {}; // User passed {} for the done handler. + static constexpr bool isDoneResultType = std::is_same_v; // R, V, T, D stands for: Done[R]esult, [V]oid, [T]ask, [D]oneWith static constexpr bool isRTD = isInvocable(); static constexpr bool isRT = isInvocable(); @@ -506,11 +511,14 @@ private: static constexpr bool isVT = isInvocable(); static constexpr bool isVD = isInvocable(); static constexpr bool isV = isInvocable(); - static_assert(isRTD || isRT || isRD || isR || isVTD || isVT || isVD || isV, + static_assert(isDoneResultType || isRTD || isRT || isRD || isR || isVTD || isVT || isVD || isV, "Task done handler needs to take (const Task &, DoneWith), (const Task &), " "(DoneWith) or (void) as arguments and has to return void or DoneResult. " + "Alternatively, it may be of DoneResult type. " "The passed handler doesn't fulfill these requirements."); return [handler](const TaskInterface &taskInterface, DoneWith result) { + if constexpr (isDoneResultType) + return handler; const Adapter &adapter = static_cast(taskInterface); if constexpr (isRTD) return std::invoke(handler, *adapter.task(), result); diff --git a/tests/auto/solutions/tasking/tst_tasking.cpp b/tests/auto/solutions/tasking/tst_tasking.cpp index 15f5d12004d..261f0cc5c73 100644 --- a/tests/auto/solutions/tasking/tst_tasking.cpp +++ b/tests/auto/solutions/tasking/tst_tasking.cpp @@ -3174,11 +3174,49 @@ void tst_Tasking::testTree_data() QTest::newRow("ParallelDisorder") << TestData{storage, root, log, 2, DoneWith::Error, 1}; } + { + // This tests ensures the task done handler or onGroupDone accepts the DoneResult as an + // argument. + + const Group groupSuccess { + storage, + Group { + onGroupDone(DoneResult::Success) + }, + groupDone(0) + }; + const Group groupError { + storage, + Group { + onGroupDone(DoneResult::Error) + }, + groupDone(0) + }; + const Group taskSuccess { + storage, + TestTask({}, DoneResult::Success), + groupDone(0) + }; + const Group taskError { + storage, + TestTask({}, DoneResult::Error), + groupDone(0) + }; + + QTest::newRow("DoneResultGroupSuccess") + << TestData{storage, groupSuccess, {{0, Handler::GroupSuccess}}, 0, DoneWith::Success, 0}; + QTest::newRow("DoneResultGroupError") + << TestData{storage, groupError, {{0, Handler::GroupError}}, 0, DoneWith::Error, 0}; + QTest::newRow("DoneResultTaskSuccess") + << TestData{storage, taskSuccess, {{0, Handler::GroupSuccess}}, 1, DoneWith::Success, 1}; + QTest::newRow("DoneResultTaskError") + << TestData{storage, taskError, {{0, Handler::GroupError}}, 1, DoneWith::Error, 1}; + } + // This test checks if storage shadowing works OK. QTest::newRow("StorageShadowing") << storageShadowingData(); } - static QtMessageHandler s_oldMessageHandler = nullptr; static QStringList s_messages; From 15e510abcf9138902c52e4caa79de804b04e59f1 Mon Sep 17 00:00:00 2001 From: Jarek Kobus Date: Tue, 18 Jun 2024 00:34:16 +0200 Subject: [PATCH 23/30] TaskTree: Make use of the trivial DoneResult handlers Change-Id: I71915fc50f073cc90b0fb2562bb82e9c4a73ccd1 Reviewed-by: Eike Ziller --- src/plugins/android/androidrunnerworker.cpp | 2 +- src/plugins/ios/iosrunner.cpp | 6 +----- tests/manual/tasking/trafficlight/recipe.cpp | 4 ++-- 3 files changed, 4 insertions(+), 8 deletions(-) diff --git a/src/plugins/android/androidrunnerworker.cpp b/src/plugins/android/androidrunnerworker.cpp index b5041917b09..9befaba742a 100644 --- a/src/plugins/android/androidrunnerworker.cpp +++ b/src/plugins/android/androidrunnerworker.cpp @@ -676,7 +676,7 @@ void AndroidRunnerWorker::asyncStart() stopOnSuccess, ProcessTask(onPidSetup, onPidDone, CallDoneIf::Success), TimeoutTask([](std::chrono::milliseconds &timeout) { timeout = 200ms; }, - [] { return DoneResult::Error; }) + DoneResult::Error) }.withTimeout(45s), ProcessTask(onUserSetup, onUserDone, CallDoneIf::Success), onGroupDone([pidStorage, this] { onProcessIdChanged(*pidStorage); }) diff --git a/src/plugins/ios/iosrunner.cpp b/src/plugins/ios/iosrunner.cpp index 1d4bd33aa11..f2b59a46948 100644 --- a/src/plugins/ios/iosrunner.cpp +++ b/src/plugins/ios/iosrunner.cpp @@ -222,11 +222,7 @@ GroupItem DeviceCtlRunner::killProcess(Storage &appInfo) QString::number(appInfo->processIdentifier)}}); return SetupResult::Continue; }; - const auto onDone = [] { - // we tried our best and don't care at this point - return DoneResult::Success; - }; - return ProcessTask(onSetup, onDone); + return ProcessTask(onSetup, DoneResult::Success); // we tried our best and don't care at this point } GroupItem DeviceCtlRunner::launchTask(const QString &bundleIdentifier) diff --git a/tests/manual/tasking/trafficlight/recipe.cpp b/tests/manual/tasking/trafficlight/recipe.cpp index 6e08874ab64..abc70715364 100644 --- a/tests/manual/tasking/trafficlight/recipe.cpp +++ b/tests/manual/tasking/trafficlight/recipe.cpp @@ -21,7 +21,7 @@ Group recipe(GlueInterface *iface) [iface](Barrier &barrier) { QObject::connect(iface, &GlueInterface::smashed, &barrier, &Barrier::advance); }, - [] { return DoneResult::Error; }), + DoneResult::Error), Forever { TimeoutTask( // "red" state [iface](milliseconds &timeout) { @@ -56,7 +56,7 @@ Group recipe(GlueInterface *iface) [iface](Barrier &barrier) { QObject::connect(iface, &GlueInterface::repaired, &barrier, &Barrier::advance); }, - [] { return DoneResult::Error; }), + DoneResult::Error), Forever { TimeoutTask( // "blinking" state [iface](milliseconds &timeout) { From 51c96112680673775c5a5ef2adb95ae34ffc3b64 Mon Sep 17 00:00:00 2001 From: Jarek Kobus Date: Mon, 17 Jun 2024 16:47:47 +0200 Subject: [PATCH 24/30] ProjectNodesHelper: Some cleanup 1. Make internal scanForFiles() static. 2. Make it a non-template method. 3. Pass const QFuture & instead of non-const QPromise, since we use it here just for isCanceled() checking. 4. Simplify setting a concurrent call data by eliminating the intermediate lambda. Amends c5564559cc01821e97e10f7253933ac5ca7f24c6 Change-Id: I4b7e3be6e8428c913920e66f2c00800055e83fde Reviewed-by: David Schulz --- .../projectexplorer/projectnodeshelper.h | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/src/plugins/projectexplorer/projectnodeshelper.h b/src/plugins/projectexplorer/projectnodeshelper.h index 6809622af5b..24edc853165 100644 --- a/src/plugins/projectexplorer/projectnodeshelper.h +++ b/src/plugins/projectexplorer/projectnodeshelper.h @@ -26,9 +26,8 @@ struct DirectoryScanResult Utils::FilePaths subDirectories; }; -template -DirectoryScanResult scanForFiles( - QPromise &promise, +static DirectoryScanResult scanForFiles( + const QFuture &future, const Utils::FilePath &directory, const QDir::Filters &filter, const std::function factory, @@ -38,7 +37,7 @@ DirectoryScanResult scanForFiles( const Utils::FilePaths entries = directory.dirEntries(filter); for (const Utils::FilePath &entry : entries) { - if (promise.isCanceled()) + if (future.isCanceled()) return result; if (Utils::anyOf(versionControls, [entry](const Core::IVersionControl *vc) { @@ -52,7 +51,6 @@ DirectoryScanResult scanForFiles( else if (FileNode *node = factory(entry)) result.nodes.append(node); } - return result; } @@ -65,9 +63,11 @@ QList scanForFilesRecursively( const std::function factory, const QList &versionControls) { + const QFuture future(promise.future()); + QSet visited; const DirectoryScanResult result - = scanForFiles(promise, directory, filter, factory, versionControls); + = scanForFiles(future, directory, filter, factory, versionControls); QList fileNodes = result.nodes; const double progressIncrement = progressRange / static_cast( @@ -86,15 +86,12 @@ QList scanForFilesRecursively( while (!subDirectories.isEmpty()) { using namespace Tasking; - LoopList iterator(subDirectories); + const LoopList iterator(subDirectories); subDirectories.clear(); auto onSetup = [&, iterator](Utils::Async &task) { task.setConcurrentCallData( - [&filter, &factory, &promise, &versionControls, subdir = iterator->first]( - QPromise &p) { - p.addResult(scanForFiles(promise, subdir, filter, factory, versionControls)); - }); + scanForFiles, future, iterator->first, filter, factory, versionControls); }; auto onDone = [&, iterator](const Utils::Async &task) { From 1aa4b401f10d9607455cae32f731084907f5096f Mon Sep 17 00:00:00 2001 From: Christian Stenger Date: Tue, 18 Jun 2024 12:49:10 +0200 Subject: [PATCH 25/30] PerfProfiler: Fix construction of arguments Change-Id: I683ee5a9a23a222fc80f1972c64262c5d91228e9 Reviewed-by: Ulf Hermann --- src/plugins/perfprofiler/perfdatareader.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/perfprofiler/perfdatareader.cpp b/src/plugins/perfprofiler/perfdatareader.cpp index f5b3c15b10a..5c690e8d276 100644 --- a/src/plugins/perfprofiler/perfdatareader.cpp +++ b/src/plugins/perfprofiler/perfdatareader.cpp @@ -287,7 +287,7 @@ void PerfDataReader::collectArguments(CommandLine *cmd, const QString &exe, cons .arg(qt->pluginPath().nativePath()) .arg(qt->hostBinPath().nativePath()) .arg(qt->qmlPath().nativePath()) - .arg(cmd->executable().osType() == OsTypeWindows ? u';' : u':')); + .arg(cmd->executable().pathListSeparator())); } if (auto toolChain = ToolchainKitAspect::cxxToolchain(kit)) { From 4ded08dd38aa09f0ecd0745e048f3c780d386158 Mon Sep 17 00:00:00 2001 From: David Schulz Date: Thu, 13 Jun 2024 15:07:36 +0200 Subject: [PATCH 26/30] Debugger: defer type resolve again for the cdb debugger backend Task-number: QTCREATORBUG-29833 Change-Id: I671359f84d3f4d78d051f6a087776ceab7d7460d Reviewed-by: Christian Stenger Reviewed-by: hjk --- share/qtcreator/debugger/cdbbridge.py | 9 +++++---- share/qtcreator/debugger/dumper.py | 16 ++++++++++------ 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/share/qtcreator/debugger/cdbbridge.py b/share/qtcreator/debugger/cdbbridge.py index 6fc77b5ea67..986774d5086 100644 --- a/share/qtcreator/debugger/cdbbridge.py +++ b/share/qtcreator/debugger/cdbbridge.py @@ -172,15 +172,17 @@ class Dumper(DumperBase): self.type_name_cache[typeid] = nativeType.name() self.type_code_cache[typeid] = code self.type_target_cache[typeid] = self.typeid_for_string(targetName) - self.type_size_cache[typeid] = nativeType.bitsize() // 8 + if nativeType.resolved(): + self.type_size_cache[typeid] = nativeType.bitsize() // 8 return typeid code = TypeCode.Struct self.type_name_cache[typeid] = nativeType.name() - self.type_size_cache[typeid] = nativeType.bitsize() // 8 + if nativeType.resolved(): + self.type_size_cache[typeid] = nativeType.bitsize() // 8 + self.type_modulename_cache[typeid] = nativeType.module() self.type_code_cache[typeid] = code - self.type_modulename_cache[typeid] = nativeType.module() self.type_enum_display_cache[typeid] = lambda intval, addr, form: \ self.nativeTypeEnumDisplay(nativeType, intval, form) return typeid @@ -549,7 +551,6 @@ class Dumper(DumperBase): return self.putAddress(value.address()) - self.putField('size', self.type_size(value.typeid)) if typeobj.code == TypeCode.Function: #DumperBase.warn('FUNCTION VALUE: %s' % value) diff --git a/share/qtcreator/debugger/dumper.py b/share/qtcreator/debugger/dumper.py index 250c04e80e8..57da7608204 100644 --- a/share/qtcreator/debugger/dumper.py +++ b/share/qtcreator/debugger/dumper.py @@ -2446,7 +2446,7 @@ typename)) self.checkIntType(base) self.checkIntType(n) inner_typeid = self.typeid_for_typish(inner_typish) - inner_size = self.type_size_cache.get(inner_typeid, None) + inner_size = self.type_size(inner_typeid) self.putNumChild(n) #self.warn('ADDRESS: 0x%x INNERSIZE: %s INNERTYPE: %s' % (base, inner_size, inner_typeid)) enc = self.type_encoding_cache.get(inner_typeid, None) @@ -3565,7 +3565,9 @@ typename)) return target_typeid self.type_code_cache[typeid] = TypeCode.Typedef self.type_target_cache[typeid] = target_typeid - self.type_size_cache[typeid] = self.type_size_cache.get(target_typeid, None) + size = self.type_size_cache.get(target_typeid, None) + if size is not None: + self.type_size_cache[typeid] = size return typeid def createType(self, typish, size=None): @@ -3711,7 +3713,7 @@ typename)) typeid = self.cheap_typeid_from_name_nons(typename) if typeid: - size = self.type_size_cache.get(typeid, None) + size = self.type_size(typeid) if size is not None: return size, typeid @@ -3719,7 +3721,7 @@ typename)) self.warn("LOOKUP FIELD TYPE: %s TYPEOBJ: %s" % (typename, typeobj)) if typeobj is not None: typeid = typeobj.typeid - size = self.type_size_cache.get(typeid, None) + size = self.type_size(typeid) if size is not None: return size, typeid @@ -3950,8 +3952,10 @@ typename)) if size is not None: return size - if size is None: - nativeType = self.type_nativetype(typeid) + nativeType = self.type_nativetype(typeid) + if self.isCdb: + size = nativeType.bitsize() // 8 + else: if not self.type_size_cache.get(typeid): self.from_native_type(nativeType) size = self.type_size_cache.get(typeid, None) From 66413dc06f98b84f311c51427c93e9f3708a6a2c Mon Sep 17 00:00:00 2001 From: David Schulz Date: Fri, 14 Jun 2024 12:08:28 +0200 Subject: [PATCH 27/30] Debugger: do not overwrite qtNamespace in the cdbbridge Change-Id: I11a95710867fd0a6b5a2956a9f8f4a86932038dd Reviewed-by: Christian Stenger --- share/qtcreator/debugger/cdbbridge.py | 28 +++++++++------------------ 1 file changed, 9 insertions(+), 19 deletions(-) diff --git a/share/qtcreator/debugger/cdbbridge.py b/share/qtcreator/debugger/cdbbridge.py index 986774d5086..0b53baf1661 100644 --- a/share/qtcreator/debugger/cdbbridge.py +++ b/share/qtcreator/debugger/cdbbridge.py @@ -314,25 +314,6 @@ class Dumper(DumperBase): self.qtDeclarativeHookDataSymbolName = lambda: hookSymbolName return hookSymbolName - def qtNamespace(self): - namespace = '' - qstrdupSymbolName = '*qstrdup' - coreModuleName = self.qtCoreModuleName() - if coreModuleName is not None: - qstrdupSymbolName = '%s!%s' % (coreModuleName, qstrdupSymbolName) - resolved = cdbext.resolveSymbol(qstrdupSymbolName) - if resolved: - name = resolved[0].split('!')[1] - namespaceIndex = name.find('::') - if namespaceIndex > 0: - namespace = name[:namespaceIndex + 2] - self.qtNamespace = lambda: namespace - self.qtCustomEventFunc = self.parseAndEvaluate( - '%s!%sQObject::customEvent' % - (self.qtCoreModuleName(), namespace)).address() - self.qtNamespace = lambda: namespace - return namespace - def extractQtVersion(self): try: qtVersion = self.parseAndEvaluate( @@ -924,3 +905,12 @@ class Dumper(DumperBase): if self.useDynamicType: val.typeid = self.dynamic_typeid_at_address(val.typeid, address) return val + + def fetchInternalFunctions(self): + coreModuleName = self.qtCoreModuleName() + ns = self.qtNamespace() + if coreModuleName is not None: + self.qtCustomEventFunc = self.parseAndEvaluate( + '%s!%sQObject::customEvent' % + (self.qtCoreModuleName(), ns)).address() + self.fetchInternalFunctions = lambda: None From 745b32d10c052d36f6196cc9f8c125bb31d583e1 Mon Sep 17 00:00:00 2001 From: David Schulz Date: Fri, 14 Jun 2024 12:09:51 +0200 Subject: [PATCH 28/30] Debugger: optimize QStandardItem dumper for cdb Change-Id: I97f448da86f03edf82f0f1543e8c784d1f3a5f8b Reviewed-by: Christian Stenger --- share/qtcreator/debugger/qttypes.py | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/share/qtcreator/debugger/qttypes.py b/share/qtcreator/debugger/qttypes.py index 935103fde87..004779e06a2 100644 --- a/share/qtcreator/debugger/qttypes.py +++ b/share/qtcreator/debugger/qttypes.py @@ -235,8 +235,23 @@ def qdump__QStandardItem(d, value): vtable, dptr = value.split('pp') if d.qtVersionAtLeast(0x060000): - model, parent, values, children, rows, cols, item = \ - d.split('pp{@QList<@QStandardItemData>}{@QList<@QStandardItem *>}IIp', dptr) + if d.isCdb: + if d.isDebugBuild is None: + try: + value["d_ptr"] + d.isDebugBuild = True + except Exception: + d.isDebugBuild = False + if d.isDebugBuild: + model = value["d_ptr"]["d"]["model"] + values = value["d_ptr"]["d"]["values"] + children = value["d_ptr"]["d"]["children"] + else: + model, parent, values, children, rows, cols, item = \ + d.split('pp{@QList<@QStandardItemData>}{@QList<@QStandardItem *>}IIp', dptr) + else: + model, parent, values, children, rows, cols, item = \ + d.split('pp{@QList<@QStandardItemData>}{@QList<@QStandardItem *>}IIp', dptr) else: # There used to be a virtual destructor that got removed in # 88b6abcebf29b455438 on Apr 18 17:01:22 2017 @@ -249,7 +264,9 @@ def qdump__QStandardItem(d, value): d.putExpandable() if d.isExpanded(): with Children(d): - d.putSubItem('[model]', d.createValue(model, '@QStandardItemModel')) + if isinstance(model, int): # Used as address. + model = d.createValue(model, '@QStandardItemModel') + d.putSubItem('[model]', model) d.putSubItem('[values]', values) d.putSubItem('[children]', children) From 6b8a41b1ba83ae570378f50236895c82e81d861a Mon Sep 17 00:00:00 2001 From: David Schulz Date: Tue, 18 Jun 2024 12:43:39 +0200 Subject: [PATCH 29/30] Debugger: fix manual list template arguments 'res' is not part of the function anymore, the result of the split is directly written into self.type_template_arguments_cache since 67072d3f5bb1b425a2b9d3bf30d57542e9f88902 Change-Id: Ib76b1f82a4f807e54fbb3cec96b317c36011bf51 Reviewed-by: Christian Stenger --- share/qtcreator/debugger/dumper.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/share/qtcreator/debugger/dumper.py b/share/qtcreator/debugger/dumper.py index 57da7608204..33c7eb1a846 100644 --- a/share/qtcreator/debugger/dumper.py +++ b/share/qtcreator/debugger/dumper.py @@ -717,7 +717,7 @@ class DumperBase(): c = ord(item[0]) if c in (45, 46) or (c >= 48 and c < 58): # '-', '.' or digit. if '.' in item: - res.append(float(item)) + self.type_template_arguments_cache[(typeid, idx)] = float(item) else: if item.endswith('l'): item = item[:-1] From dd962c2989276e4a26650902f5caecd4f1d176d8 Mon Sep 17 00:00:00 2001 From: Marco Bubke Date: Tue, 18 Jun 2024 15:09:15 +0200 Subject: [PATCH 30/30] Docs: Add option to build docs by default Change-Id: I6cb8c2b163f5d01040952aecced287334d616976 Reviewed-by: Eike Ziller --- cmake/QtCreatorDocumentation.cmake | 25 ++++++++++++++++++++----- doc/CMakeLists.txt | 8 +++++++- 2 files changed, 27 insertions(+), 6 deletions(-) diff --git a/cmake/QtCreatorDocumentation.cmake b/cmake/QtCreatorDocumentation.cmake index 9587a77e0b1..bf679d2188f 100644 --- a/cmake/QtCreatorDocumentation.cmake +++ b/cmake/QtCreatorDocumentation.cmake @@ -5,6 +5,18 @@ add_feature_info("Build documentation" WITH_DOCS "") option(WITH_ONLINE_DOCS "Build online documentation" OFF) add_feature_info("Build online documentation" WITH_ONLINE_DOCS "") +option(BUILD_DOCS_BY_DEFAULT "Build documentation by default" OFF) +add_feature_info("Build documentation by default" BUILD_DOCS_BY_DEFAULT "") + + +if (BUILD_DOCS_BY_DEFAULT) +set(EXCLUDE_DOCS_FROM_ALL "") +set(INCLUDE_DOCS_INTO_ALL "ALL") +else() +set(EXCLUDE_DOCS_FROM_ALL "EXCLUDE_FROM_ALL") +set(INCLUDE_DOCS_INTO_ALL "") +endif() + # Get information on directories from qmake # as this is not yet exported by cmake. # Used for QT_INSTALL_DOCS @@ -46,13 +58,13 @@ endfunction() function(_setup_doc_targets) # Set up important targets: if (NOT TARGET html_docs) - add_custom_target(html_docs COMMENT "Build HTML documentation") + add_custom_target(html_docs ${INCLUDE_DOCS_INTO_ALL} COMMENT "Build HTML documentation") endif() if (NOT TARGET qch_docs) - add_custom_target(qch_docs COMMENT "Build QCH documentation") + add_custom_target(qch_docs ${INCLUDE_DOCS_INTO_ALL} COMMENT "Build QCH documentation") endif() if (NOT TARGET docs) - add_custom_target(docs COMMENT "Build documentation") + add_custom_target(docs ${INCLUDE_DOCS_INTO_ALL} COMMENT "Build documentation") add_dependencies(docs html_docs qch_docs) endif() endfunction() @@ -114,6 +126,7 @@ function(_setup_qdoc_targets _qdocconf_file _retval) set(_html_target "html_docs_${_target}") add_custom_target("${_html_target}" + ${INCLUDE_DOCS_INTO_ALL} ${_full_qdoc_command} -outputdir "${_html_outputdir}" "${_qdocconf_file}" ${_qdoc_index_args} ${_qdoc_include_args} COMMENT "Build HTML documentation from ${_qdocconf_file}" @@ -126,7 +139,7 @@ function(_setup_qdoc_targets _qdocconf_file _retval) # Install HTML files as a special component install(DIRECTORY "${_html_outputdir}" DESTINATION "${_arg_INSTALL_DIR}" - COMPONENT html_docs EXCLUDE_FROM_ALL) + COMPONENT html_docs ${EXCLUDE_DOCS_FROM_ALL}) set("${_retval}" "${_html_outputdir}" PARENT_SCOPE) endfunction() @@ -154,6 +167,7 @@ function(_setup_qhelpgenerator_targets _qdocconf_file _html_outputdir) set(_qch_target "qch_docs_${_target}") set(_html_target "html_docs_${_target}") add_custom_target("${_qch_target}" + ${INCLUDE_DOCS_INTO_ALL} Qt::qhelpgenerator "${_html_outputdir}/${_target}.qhp" -o "${_qch_outputdir}/${_target}.qch" COMMENT "Build QCH documentation from ${_qdocconf_file}" WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" @@ -163,7 +177,7 @@ function(_setup_qhelpgenerator_targets _qdocconf_file _html_outputdir) add_dependencies(qch_docs "${_qch_target}") install(FILES "${_qch_outputdir}/${_target}.qch" DESTINATION "${_arg_INSTALL_DIR}" - COMPONENT qch_docs EXCLUDE_FROM_ALL) + COMPONENT qch_docs ${EXCLUDE_DOCS_FROM_ALL}) endfunction() # Helper functions: @@ -283,6 +297,7 @@ function(add_qtc_doc_attribution target attribution_file output_file qdocconf_fi file(MAKE_DIRECTORY ${output_dir}) # add target add_custom_target(${target} + ${INCLUDE_DOCS_INTO_ALL} Qt6::qtattributionsscanner -o "${output_file}" --basedir "${PROJECT_SOURCE_DIR}" ${attribution_file} COMMENT "Create attributions ${output_file} from ${attribution_file}" DEPENDS "${attribution_file}" diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt index f78240e4fb0..dc887877646 100644 --- a/doc/CMakeLists.txt +++ b/doc/CMakeLists.txt @@ -67,8 +67,14 @@ if(WITH_ONLINE_DOCS) _add_doc(${IDE_DOC_FILE_ONLINE} "qtcreatordev/qtcreator-dev-online.qdocconf") endif() +if (BUILD_DOCS_BY_DEFAULT) +set(EXCLUDE_DOCS_FROM_ALL "") +else() +set(EXCLUDE_DOCS_FROM_ALL "EXCLUDE_FROM_ALL") +endif() + install(DIRECTORY config DESTINATION ${IDE_HEADER_INSTALL_PATH}/doc COMPONENT Devel - EXCLUDE_FROM_ALL + ${EXCLUDE_DOCS_FROM_ALL} )