Merge remote-tracking branch 'origin/4.12' into qds-1.50

Change-Id: I8e4155aa2a0a8c7f7405dd79e856380011e23a33
This commit is contained in:
Tim Jenssen
2020-05-27 18:59:53 +02:00
102 changed files with 338 additions and 212 deletions

View File

@@ -1,9 +1,9 @@
#BINARY_ARTIFACTS_BRANCH = master
#PROJECT_USER_FILE_EXTENSION = .user
set(IDE_VERSION "4.12.1") # The IDE version.
set(IDE_VERSION "4.12.2") # The IDE version.
set(IDE_VERSION_COMPAT "4.12.0") # The IDE Compatibility version.
set(IDE_VERSION_DISPLAY "4.12.1") # The IDE display version.
set(IDE_VERSION_DISPLAY "4.12.2") # The IDE display version.
set(IDE_COPYRIGHT_YEAR "2020") # The IDE current copyright year.
set(IDE_SETTINGSVARIANT "QtProject") # The IDE settings variation.

View File

@@ -14,6 +14,7 @@ General
-------
* Fixed crash when changing font settings (QTCREATORBUG-14385)
* Fixed availability of `Link with Qt` information on startup (QTCREATORBUG-23900)
Editing
-------
@@ -39,6 +40,10 @@ Projects
* Fixed issue with JOM (QTCREATORBUG-22645)
### Qbs
* Fixed crash when updating project (QTCREATORBUG-23924)
### Compilation Database
* Fixed issues with symbolic links (QTCREATORBUG-23511)
@@ -46,8 +51,13 @@ Projects
Debugging
---------
* Fixed startup when Python's JSON module is missing (QTCREATORBUG-24004)
* Fixed pretty printing of `std::unique_ptr` with custom deleter (QTCREATORBUG-23885)
### GDB
* Fixed handling of register addresses with lowercase characters
* Fixed issue with GDB reporting zero array size in some cases (QTCREATORBUG-23998)
Qt Quick Designer
-----------------
@@ -67,10 +77,39 @@ Platforms
* Fixed crash at startup when Qt is missing in Kit (QTCREATORBUG-23963)
* Fixed `Always use this device for this project` (QTCREATORBUG-23918)
* Fixed issue with "side by side" NDK installation (QTCREATORBUG-23903)
### OpenBSD
* Fixed Qt ABI detection (QTCREATORBUG-23818)
### MCU
* Fixed various issues with Kit creation and cleanup
Credits for these changes go to:
--------------------------------
Alessandro Portale
André Pönitz
Assam Boudjelthia
Brook Cronin
Christian Kandeler
Christian Stenger
Cristian Adam
David Schulz
Eike Ziller
Friedemann Kleint
Henning Gruendl
Jeremy Ephron
Johanna Vanhatapio
Leander Schulten
Leena Miettinen
Nikolai Kosjar
Robert Löhning
Sebastian Verling
Sergey Belyashov
Thiago Macieira
Thomas Hartmann
Tim Jenssen
Venugopal Shivashankar
Vikas Pachdha

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

@@ -460,7 +460,7 @@
\list 1
\li Perf events may be globally disabled on your system. The
preconfigured Boot to Qt images come with perf events enabled. For
preconfigured Boot2Qt images come with perf events enabled. For
a custom configuration you need to make sure that the file
\c {/proc/sys/kernel/perf_event_paranoid} contains a value smaller
than \c {2}. For maximum flexibility in recording traces you can

View File

@@ -32,7 +32,7 @@
/*!
//! [cmake deploying embedded]
\section1 Deploying CMake Projects to Embedded Linux Devices
\section1 Deploying CMake Projects to Generic Remote Linux Devices
\QC cannot directly extract files to be installed from a CMake project.
Therefore, a special deploy step is created that installs the project into

View File

@@ -158,6 +158,6 @@
\li \l {Opening Projects}
\li \l {Specifying Build Settings}
\li \l {Specifying Run Settings}
\li \l {Deploying CMake Projects to Embedded Linux Devices}
\li \l {Deploying CMake Projects to Generic Remote Linux Devices}
\endlist
*/

View File

@@ -41,7 +41,7 @@
\title Coding
\if defined(qtcreator)
\image creator_coding.png
\image front-coding.png
\endif
\list

View File

@@ -38,11 +38,11 @@
\nextpage creator-deployment-qnx.html
\endif
\title Deploying Applications to Embedded Linux Devices
\title Deploying Applications to Generic Remote Linux Devices
You can specify settings for deploying applications to generic Linux devices
in the project .pro file. You can view the settings in the
\uicontrol Projects mode, in \uicontrol {Run Settings}.
You can specify settings for deploying applications to generic remote
Linux devices in the project .pro file. You can view the settings in
the \uicontrol Projects mode, in \uicontrol {Run Settings}.
\image qtcreator-embedded-linux-deployment-overview.png "Deploy to device"

View File

@@ -26,14 +26,14 @@
/*!
//! [running on embedded linux]
\section1 Running on Embedded Linux Devices
\section1 Running on Generic Remote Linux Devices
To build the application and run it on a device:
\list 1
\li Specify a connection to the device. For more information, see
\l{Connecting Embedded Linux Devices}.
\l{Connecting Generic Remote Linux Devices}.
\li Click the \uicontrol Run button.

View File

@@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2017 The Qt Company Ltd.
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Creator documentation.
@@ -24,11 +24,11 @@
****************************************************************************/
/*!
//! [run settings embedded]
//! [run settings boot2qt]
\section1 Specifying Run Settings for Embedded Devices
\section1 Specifying Run Settings for Boot2Qt Devices
To run and debug an application on an embedded device (commercial only), you
To run and debug an application on a Boot2Qt device (commercial only), you
must create connections from the development host to the device and add the
device configurations to \l{glossary-buildandrun-kit}{kits}. Select
\uicontrol {Manage Kits} to add devices to kits. For more information, see
@@ -41,7 +41,7 @@
host and on the device.
For more information on the deployment steps, see
\l{Deploying Applications to Embedded Linux Devices}.
\l{Deploying Applications to Generic Remote Linux Devices}.
//! [run settings embedded]
//! [run settings boot2qt]
*/

View File

@@ -33,7 +33,7 @@
host to the device and add the device configurations to
\l{glossary-buildandrun-kit}{kits}. Click \uicontrol {Manage Kits} to add devices
to kits. For more information, see
\l {Connecting Embedded Linux Devices}.
\l {Connecting Generic Remote Linux Devices}.
When you run the application, \QC copies the files to the connected device.

View File

@@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Creator documentation.
@@ -33,19 +33,20 @@
\nextpage creator-developing-ios.html
\endif
\title Connecting Embedded Linux Devices
\title Connecting Generic Remote Linux Devices
You can connect embedded Linux devices to the development PC to run,
You can connect generic Linux devices to the development PC to run,
debug, and analyze applications built for them from \QC.
If you have a tool chain for building applications for embedded Linux
devices installed on the development PC, you can add
it to \QC. You can then select a \l{glossary-buildandrun-kit}{kit}
with \uicontrol {Embedded Linux} device type to
build applications for and run them on embedded Linux devices.
build applications for and run them on the devices.
To be able to run and debug applications on embedded Linux devices, you must
add devices and select them in the \QC \l{glossary-buildandrun-kit}{kit}.
To be able to run and debug applications on generic remote Linux devices,
you must add devices and select them in the \QC \l{glossary-buildandrun-kit}
{kit}.
You use a wizard to create the connections. You can edit the settings later
in \uicontrol Tools > \uicontrol Options > \uicontrol Devices >
@@ -145,7 +146,7 @@
When you run the project, \QC deploys the application as specified by the
deploy steps. By default, \QC copies the application files to the device.
For more information, see \l{Deploying Applications to Embedded Linux Devices}.
For more information, see \l{Deploying Applications to Generic Remote Linux Devices}.
\endlist

View File

@@ -36,7 +36,7 @@
\title Advanced Use
\image creator_advanceduse.png
\image front-advanced.png
\QC attempts to meet your development needs, whether you are an
experienced Qt developer or a newcomer to Qt. When you install \QC

View File

@@ -49,7 +49,7 @@
When you deploy the application to an Android device, \QC copies
the application files to the device. In addition, you can determine
the Qt libraries to use.
\li \l{Deploying Applications to Embedded Linux Devices}
\li \l{Deploying Applications to Generic Remote Linux Devices}
When you deploy the application to a generic Linux-based device, \QC
copies the application files to the connected device. You can test

View File

@@ -36,7 +36,7 @@
\title Designing User Interfaces
\image creator_designinguserinterface.png
\image front-ui.png
\QC provides integrated visual editors for designing Qt Quick and
widget-based applications in the Design mode. The integration

View File

@@ -38,9 +38,9 @@
\table
\row
\li \inlineimage creator_gettingstarted.png
\li \inlineimage creator_designinguserinterface.png
\li \inlineimage creator_advanceduse.png
\li \inlineimage front-gs.png
\li \inlineimage front-ui.png
\li \inlineimage front-advanced.png
\row
\li \b {\l{IDE Overview}}
@@ -59,8 +59,8 @@
control systems. For an overview of the options you have, go to
\l{Configuring Qt Creator}.
\row
\li \inlineimage creator_buildingrunning.png
\li \inlineimage creator_gettinghelp.png
\li \inlineimage front-preview.png
\li \inlineimage front-help.png
\li
\row
\li \b {\l{Building and Running an Example}}

View File

@@ -36,7 +36,7 @@
\title Getting Help
\image creator_gettinghelp.png
\image front-help.png
\list

View File

@@ -69,7 +69,7 @@
to debug applications on them with GDB or a hardware debugger.
\endif
\li \l{Connecting Embedded Linux Devices}
\li \l{Connecting Generic Remote Linux Devices}
If you have a tool chain for building applications for embedded
Linux devices installed on the development
@@ -114,7 +114,7 @@
You can use the experimental Qt Application Manager plugin
(commercial only) to deploy, run, and debug applications on the
local Linux PC, remote generic SSH Linux targets, or
\l{Embedded Devices}{embedded devices}.
\l{Boot2Qt Devices}{Boot2Qt devices}.
\endlist
\endif
*/

View File

@@ -47,9 +47,9 @@
\table
\row
\li \inlineimage creator_managingprojects.png
\li \inlineimage creator_designinguserinterface.png
\li \inlineimage creator_coding.png
\li \inlineimage front-projects.png
\li \inlineimage front-ui.png
\li \inlineimage front-coding.png
\row
\li \b {\l{Managing Projects}}
@@ -84,9 +84,9 @@
available that provides information about the code to IDEs.
For more information, see \l{Coding}.
\row
\li \inlineimage creator_buildingrunning.png
\li \inlineimage creator_testing.png
\li \inlineimage creator_publishing.png
\li \inlineimage front-preview.png
\li \inlineimage front-testing.png
\li \inlineimage front-publishing.png
\row
\li \b {\l{Building and Running}}

View File

@@ -112,7 +112,7 @@
\endlist
\section2 Developing for Embedded Devices
\section2 Developing for Boot2Qt Devices
Either Windows 7 or later or Ubuntu Linux 64-bit 12.04 LTS or later is
required to install and use Qt for Device Creation. For more information

View File

@@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Creator documentation.
@@ -31,30 +31,21 @@
You can develop applications for the following platforms:
\list
\li Desktop
\li Android
\li Embedded
\li Generic remote Linux
\li iOS
\li Microcontroller Units (MCU)
\li QNX
\li Universal Windows Platform (UWP)
\li WebAssembly
\li \l{Connecting Android Devices}{Android}
\li \l{Connecting Bare Metal Devices}{Bare Metal}
\li Boot2Qt
\li \l{Connecting Generic Remote Linux Devices}{Generic Remote Linux}
\li \l{Connecting iOS Devices}{iOS}
\li \l{Connecting MCUs}{Microcontroller Units (MCU)} (commercial only)
\li \l{Connecting QNX Devices}{QNX}
\li \l{Qt for UWP}{Universal Windows Platform (UWP)}
\li \l{Building Applications for the Web}{WebAssembly}
\endlist
\section2 Embedded Devices
\section2 Boot2Qt Devices
The Boot to Qt stack can be made to run on a variety of hardware. For
The Boot2Qt stack can be made to run on a variety of hardware. For
Qt for Device Creation license holders, tooling is provided to customize the
contents of the stack as well as to take it into desired production
hardware.
@@ -65,8 +56,8 @@
\l{https://doc.qt.io/QtForDeviceCreation/index.html}{Qt for Device Creation}
documentation.
\note Since \QC 4.9, only Boot to Qt version 5.9 and later are supported.
To develop for earlier Boot to Qt versions, use \QC 4.8.
\note Since \QC 4.9, only Boot2Qt version 5.9 and later are supported.
To develop for earlier Boot2Qt versions, use \QC 4.8.
\section2 Mobile Devices
@@ -99,8 +90,8 @@
\li
\row
\li MCUs
\li \image ok
\li \image ok
\li
\li
\li \image ok
\row
\li QNX

View File

@@ -36,7 +36,7 @@
\title Testing
\image creator_testing.png
\image front-testing.png
\list

View File

@@ -36,7 +36,7 @@
\title Tutorials
\image creator_gettinghelp.png
\image front-help.png
You can use \QC to create applications for several platforms by using
several technologies. The tutorials in this manual explain how to create

View File

@@ -43,7 +43,7 @@
the development environment for Android or iOS. For more information, see
\l{Connecting Android Devices} and \l{Connecting iOS Devices}.
To run an example application on an embedded device, you must set up
To run an example application on a Boot2Qt device, you must set up
Qt for Device Creation on the development host and create connections
between the host and devices. For more information, see the
\l{http://doc.qt.io/QtForDeviceCreation/qtee-installation-guide.html}
@@ -66,7 +66,7 @@
You can also use tags (3) to filter examples. For instance, enter
the \uicontrol Boot2Qt tag (commercial only) in the search field
(4) to list examples that you can run on embedded devices.
(4) to list examples that you can run on Boot2Qt devices.
\li To check that the application code can be compiled and linked for a
device, click the \uicontrol {Kit Selector} and select a

View File

@@ -36,7 +36,7 @@
\title Building and Running
\image creator_buildingrunning.png
\image front-preview.png
\QC provides support for running and deploying Qt applications built
for different target platforms, or using different compilers, debuggers, or

View File

@@ -141,10 +141,11 @@
\section1 Providing Deployment Information
If you want to run your application on an embedded Linux device, you first need to
deploy your executable and possibly other files. \QC does that for you
automatically if you provide the necessary information. This works the same
way as explained for CMake \l {Deploying CMake Projects to Embedded Linux Devices}{here},
If you want to run your application on a generic remote Linux device,
you first need to deploy your executable and possibly other files.
\QC does that for you automatically if you provide the necessary
information. This works the same way as explained for CMake
\l {Deploying CMake Projects to Generic Remote Linux Devices}{here},
except that you also need to include your application binary in the list.
\section1 Creating a Run Configuration

View File

@@ -36,7 +36,7 @@
\title Managing Projects
\image creator_managingprojects.png
\image front-projects.png
One of the major advantages of \QC is that it allows a team of designers and
developers to share a project across different development platforms with a

View File

@@ -84,7 +84,7 @@
\include creator-projects-settings-run-android.qdocinc run settings android
\include creator-projects-settings-run-linux.qdocinc run settings linux
\include creator-projects-settings-run-qnx.qdocinc run settings qnx
\include linux-mobile/creator-projects-settings-run-b2qt.qdocinc run settings embedded
\include linux-mobile/creator-projects-settings-run-b2qt.qdocinc run settings boot2qt
\section1 Selecting the Run Environment

View File

@@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Creator documentation.
@@ -47,29 +47,20 @@
devices:
\list
\li Android Device
\li Bare Metal Device
\li Boot2Qt Device (commercial only)
\li \l {Emulator}{Boot2Qt Emulator Device} (commercial only)
\li Generic Linux Device
\li iOS Device
\li \l{Connecting Android Devices}{Android Device}
\li \l{Connecting Bare Metal Devices}{Bare Metal Device}
\li \l{https://doc.qt.io/QtForDeviceCreation/b2qt-installation-guides.html}
{Boot2Qt Device} (commercial only)
\li \l{Emulator}{Boot2Qt Emulator Device} (commercial only)
\li \l{Connecting Generic Remote Linux Devices}{Generic Remote Linux Device}
\li \l{Connecting iOS Devices}{iOS Device}
\li iOS Simulator
\li QNX Device
\li Windows Phone
\li \l{Connecting MCUs}{MCU Device} (commercial only)
\li \l{Connecting QNX Devices}{QNX Device}
\li \l{Building Applications for the Web}{WebAssembly Runtime}
\li \l{Qt for UWP}{Windows Phone}
\li Windows Phone Emulator
\li Windows Runtime (local)
\endlist
\section1 Filtering Kit Settings

View File

@@ -41,7 +41,7 @@
\title Deploying Applications to QNX Neutrino Devices
You can deploy applications to QNX Neutrino devices in the way that is
described in \l{Deploying Applications to Embedded Linux Devices}.
described in \l{Deploying Applications to Generic Remote Linux Devices}.
\image qtcreator-qnx-deployment.png "Deploy to device"

View File

@@ -42,8 +42,9 @@
\section1 Adding a QNX Neutrino Device in \QC
Adding a QNX Neutrino device is very similar to \l{Connecting Embedded
Linux Devices}, except you need to select \uicontrol {QNX Device} in the
Adding a QNX Neutrino device is very similar to
\l{Connecting Generic Remote Linux Devices}, except that
you need to select \uicontrol {QNX Device} in the
\uicontrol {Device Configuration} wizard.
\section1 Adding Kits for QNX Devices

View File

@@ -196,14 +196,14 @@
\li \l{Deploying to Devices}
\list
\li \l{Deploying Applications to Android Devices}
\li \l{Deploying Applications to Embedded Linux Devices}
\li \l{Deploying Applications to Generic Remote Linux Devices}
\li \l{Deploying Applications to QNX Neutrino Devices}
\endlist
\li \l{Connecting Devices}
\list
\li \l{Connecting Android Devices}
\li \l{Connecting Bare Metal Devices}
\li \l{Connecting Embedded Linux Devices}
\li \l{Connecting Generic Remote Linux Devices}
\li \l{Connecting iOS Devices}
\li \l{Connecting MCUs}
\li \l{Connecting QNX Devices}

View File

@@ -54,10 +54,10 @@
\table
\row
\li \inlineimage creator_gettingstarted.png
\li \inlineimage creator_managingprojects.png
\li \inlineimage creator_designinguserinterface.png
\li \inlineimage creator_coding.png
\li \inlineimage front-gs.png
\li \inlineimage front-projects.png
\li \inlineimage front-ui.png
\li \inlineimage front-coding.png
\row
\li \b {\l{Getting Started}}
\list
@@ -90,10 +90,10 @@
\li \l{Editing State Charts}
\endlist
\row
\li \inlineimage creator_buildingrunning.png
\li \inlineimage creator_testing.png
\li \inlineimage creator_advanceduse.png
\li \inlineimage creator_gettinghelp.png
\li \inlineimage front-preview.png
\li \inlineimage front-testing.png
\li \inlineimage front-advanced.png
\li \inlineimage front-help.png
\row
\li \b {\l{Building and Running}}
\list

View File

@@ -50,7 +50,7 @@
until it is explicitly assigned a new value. However, to make the fullest
use of QML and its built-in support for dynamic object behaviors, most QML
types use property bindings. This means that you can specify relationships
between different object properties so that when a property's sependencies
between different object properties so that when a property's dependencies
change in value, the property's value is automatically updated accordingly.
Behind the scenes, the QML engine monitors the property's dependencies (that

View File

@@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Design Studio documentation.
@@ -34,7 +34,7 @@
To preview UIs on Android devices, you need to enable USB debugging on them
and connect them to your system with a USB cable.
\endomit
To preview UIs on embedded devices, you need to connect the devices to your
To preview UIs on Boot2Qt devices, you need to connect the devices to your
system with a USB cable, or a wired or wireless connection, depending on
the device, and configure connections to them. The necessary kits have been
predefined and you only need to enable them for your current project.
@@ -79,9 +79,9 @@
device.
\endomit
\section2 Previewing on Embedded Devices
\section2 Previewing on Boot2Qt Devices
You can preview UIs on embedded devices that are supported by
You can preview UIs on Boot2Qt devices that are supported by
\l{Qt for Device Creation}. For a list of supported devices, see
\l{https://doc.qt.io/QtForDeviceCreation/qtee-supported-platforms.html#reference-target-devices}
{Reference Target Devices}.

View File

@@ -24,7 +24,7 @@
****************************************************************************/
/*!
\example ProgressBar
\example progressbar
\ingroup studioexamples
\title Progress Bar

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

View File

@@ -0,0 +1,57 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 24.1.2, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" baseProfile="tiny" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
x="0px" y="0px" viewBox="0 0 450 270" overflow="visible" xml:space="preserve">
<g>
<g>
<path fill="#C9C7C7" d="M433.8,269.6H16.2c-7.8,0-14.2-6.4-14.2-14.2V14.2C2,6.4,8.4,0,16.2,0h417.6c7.8,0,14.2,6.4,14.2,14.2
v241.2C448,263.2,441.6,269.6,433.8,269.6z"/>
<path fill="#878686" d="M2.4,19.5L2,14.1C2,6.3,8.3,0,16.1,0h417.9c7.8,0,14.1,6.3,14.1,14.1v6.8"/>
<circle fill="#DD5858" cx="19.3" cy="10.6" r="5"/>
<circle fill="#DBC558" cx="36.1" cy="10.6" r="5"/>
<circle fill="#52B257" cx="52.9" cy="10.6" r="5"/>
</g>
<path fill="#FFFFFF" d="M437.1,262.2H13.4c-2.8,0-5-2.2-5-5V185c0-2.8,2.2-5,5-5h423.7c2.8,0,5,2.2,5,5v72.2
C442.1,260,439.9,262.2,437.1,262.2z"/>
<path fill="none" stroke="#FFFFFF" stroke-width="7.4167" stroke-linecap="round" stroke-miterlimit="10" d="M190.6,91.4
c0-24.3,19.7-44.1,44.1-44.1s44.1,19.7,44.1,44.1s-19.7,44.1-44.1,44.1"/>
<circle fill="#FFFFFF" cx="233.8" cy="91.1" r="19.7"/>
<polygon fill="#878686" points="258.9,158 256.2,193.9 267.4,180.3 284.4,183.1 "/>
<path fill="#878686" d="M228.2,195.9H19.4c-2.8,0-5-2.2-5-5V188c0-2.8,2.2-5,5-5h208.8c2.8,0,5,2.2,5,5v2.9
C233.2,193.6,231,195.9,228.2,195.9z"/>
<path fill="#878686" d="M348,223.6H206.5c-2.8,0-5-2.2-5-5v-2.9c0-2.8,2.2-5,5-5H348c2.8,0,5,2.2,5,5v2.9
C353,221.4,350.8,223.6,348,223.6z"/>
<path fill="#878686" d="M419.3,247.4h-86.1c-2.8,0-5-2.2-5-5v-2.9c0-2.8,2.2-5,5-5h86.1c2.8,0,5,2.2,5,5v2.9
C424.3,245.1,422.1,247.4,419.3,247.4z"/>
<rect x="222.4" y="199" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -77.0099 218.9356)" fill="#878686" width="6.8" height="6.8"/>
<rect x="18.4" y="199" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -136.7589 74.6888)" fill="#878686" width="6.8" height="6.8"/>
<rect x="117.4" y="199" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -107.7546 144.7115)" fill="#878686" width="6.8" height="6.8"/>
<rect x="210.5" y="226.7" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -100.0968 218.6541)" fill="#878686" width="6.8" height="6.8"/>
<rect x="307.5" y="226.7" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -71.6725 287.2764)" fill="#878686" width="6.8" height="6.8"/>
<rect x="338.2" y="251.5" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -80.1869 316.2345)" fill="#878686" width="6.8" height="6.8"/>
<rect x="410.5" y="251.5" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -59.0137 367.3511)" fill="#878686" width="6.8" height="6.8"/>
<g>
<path fill="#FFFFFF" d="M175.7,73.5v14h-2.9V76.8l-3,1.9l-1.3-2.2l4.6-3.1H175.7z"/>
</g>
<g>
<path fill="#FFFFFF" d="M290.4,59.2h-9.1v-2.5l3-3c1.1-1.1,1.8-1.9,2.2-2.5s0.6-1.2,0.6-1.9c0-0.7-0.2-1.1-0.5-1.4
c-0.3-0.3-0.8-0.4-1.5-0.4c-0.9,0-2,0.1-3.1,0.3l-0.5,0.1l-0.1-2.3c1.4-0.4,2.8-0.6,4.3-0.6c3,0,4.4,1.3,4.4,4
c0,1-0.2,1.9-0.7,2.7s-1.3,1.7-2.5,2.8l-2.4,2.2h5.8V59.2z"/>
</g>
<g>
<path fill="#8389A8" d="M238.9,145.1c1.6-0.6,3.5-1,5.5-1c2,0,3.5,0.4,4.4,1.2s1.4,2,1.4,3.7c0,1.7-0.7,3-2.1,3.9
c0.9,0.5,1.5,0.9,1.8,1.4s0.5,1.3,0.5,2.4c0,1.9-0.5,3.3-1.4,4.3c-1,0.9-2.5,1.4-4.6,1.4c-1.6,0-3.2-0.2-4.9-0.7l-0.9-0.2l0.2-2.8
c2,0.3,3.7,0.5,5,0.5c1.8,0,2.8-0.8,2.8-2.4c0-0.7-0.2-1.2-0.7-1.6c-0.5-0.4-1.1-0.6-1.9-0.6h-3.6v-3h3.6c0.6,0,1.1-0.2,1.6-0.7
c0.5-0.5,0.7-1.1,0.7-1.7c0-1.3-0.9-1.9-2.6-1.9c-1.2,0-2.5,0.1-3.9,0.4l-0.7,0.1L238.9,145.1z"/>
</g>
<line fill="none" stroke="#F9D953" stroke-width="3" stroke-miterlimit="10" x1="103.5" y1="269.2" x2="103.5" y2="165.2"/>
<polygon fill="#F9D953" points="103.4,178.2 111.2,164.7 95.6,164.7 "/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -36,9 +36,9 @@
\table
\row
\li \inlineimage studio-gs.png
\li \inlineimage studio-projects.png
\li \inlineimage studio-components.png
\li \inlineimage front-gs.png
\li \inlineimage front-projects.png
\li \inlineimage front-ui.png
\li \inlineimage studio-animation.png
\row
\li \l{Getting Started}
@@ -72,9 +72,9 @@
\endlist
\row
\li \inlineimage studio-3d-scenes.png
\li \inlineimage studio-preview.png
\li \inlineimage studio-settings.png
\li \inlineimage studio-help.png
\li \inlineimage front-preview.png
\li \inlineimage front-advanced.png
\li \inlineimage front-help.png
\row
\li \b {\l{Editing 3D Scenes}}
\list

View File

@@ -37,7 +37,8 @@ function llvmConfig(hostOS, qtcFunctions)
{
var llvmInstallDirFromEnv = Environment.getEnv("LLVM_INSTALL_DIR")
var llvmConfigVariants = [
"llvm-config", "llvm-config-7", "llvm-config-8", "llvm-config-9"
// CLANG-UPGRADE-CHECK: Adapt once we require a new minimum version.
"llvm-config", "llvm-config-8", "llvm-config-9", "llvm-config-10", "llvm-config-11", "llvm-config-12"
];
// Prefer llvm-config* from LLVM_INSTALL_DIR

View File

@@ -4,10 +4,10 @@ import qbs.FileInfo
import "qtc.js" as HelperFunctions
Module {
property string qtcreator_display_version: '4.12.1'
property string qtcreator_display_version: '4.12.2'
property string ide_version_major: '4'
property string ide_version_minor: '12'
property string ide_version_release: '1'
property string ide_version_release: '2'
property string qtcreator_version: ide_version_major + '.' + ide_version_minor + '.'
+ ide_version_release

View File

@@ -1,6 +1,6 @@
QTCREATOR_VERSION = 4.12.1
QTCREATOR_VERSION = 4.12.2
QTCREATOR_COMPAT_VERSION = 4.12.0
QTCREATOR_DISPLAY_VERSION = 4.12.1
QTCREATOR_DISPLAY_VERSION = 4.12.2
QTCREATOR_COPYRIGHT_YEAR = 2020
BINARY_ARTIFACTS_BRANCH = 4.12

View File

@@ -18,8 +18,8 @@
"specific_qt_versions": [
{
"versions": ["default"],
"sdk_essential_packages": ["build-tools;29.0.2", "ndk-bundle"],
"ndk_path": "ndk-bundle"
"sdk_essential_packages": ["build-tools;29.0.2", "ndk;21.1.6352462"],
"ndk_path": "ndk/21.1.6352462"
},
{
"versions": ["5.12.[0-5]", "5.13.[0-1]"],

View File

@@ -39,7 +39,7 @@ try:
# we do not need to hard fail in cases of partial python installation
# that will never use this.
import json
except ModuleNotFoundError:
except:
print("Python module json not found. "
"Native combined debugging might not work.")
pass

View File

@@ -35,7 +35,7 @@
#include <QDebug>
#include <QDateTime>
#include <QOperatingSystemVersion>
#include <QRegExp>
#include <QRegularExpression>
#include <QTimer>
#include <QUrl>
#include <qplatformdefs.h>
@@ -325,10 +325,10 @@ QString FilePath::shortNativePath() const
QString FileUtils::fileSystemFriendlyName(const QString &name)
{
QString result = name;
result.replace(QRegExp(QLatin1String("\\W")), QLatin1String("_"));
result.replace(QRegExp(QLatin1String("_+")), QLatin1String("_")); // compact _
result.remove(QRegExp(QLatin1String("^_*"))); // remove leading _
result.remove(QRegExp(QLatin1String("_+$"))); // remove trailing _
result.replace(QRegularExpression(QLatin1String("\\W")), QLatin1String("_"));
result.replace(QRegularExpression(QLatin1String("_+")), QLatin1String("_")); // compact _
result.remove(QRegularExpression(QLatin1String("^_*"))); // remove leading _
result.remove(QRegularExpression(QLatin1String("_+$"))); // remove trailing _
if (result.isEmpty())
result = QLatin1String("unknown");
return result;
@@ -336,8 +336,8 @@ QString FileUtils::fileSystemFriendlyName(const QString &name)
int FileUtils::indexOfQmakeUnfriendly(const QString &name, int startpos)
{
static QRegExp checkRegExp(QLatin1String("[^a-zA-Z0-9_.-]"));
return checkRegExp.indexIn(name, startpos);
static const QRegularExpression checkRegExp(QLatin1String("[^a-zA-Z0-9_.-]"));
return checkRegExp.match(name, startpos).capturedStart();
}
QString FileUtils::qmakeFriendlyName(const QString &name)

View File

@@ -31,6 +31,7 @@
#include <QDialogButtonBox>
#include <QLabel>
#include <QPlainTextEdit>
#include <QSet>
#include <QVBoxLayout>
namespace Utils {

View File

@@ -29,12 +29,12 @@
#include <utils/pathchooser.h>
#include <utils/pathlisteditor.h>
#include <QDebug>
#include <QSettings>
#include <QActionGroup>
#include <QCheckBox>
#include <QDebug>
#include <QGroupBox>
#include <QLineEdit>
#include <QSettings>
#include <QSpinBox>
#include <QTextEdit>

View File

@@ -29,9 +29,7 @@
See std(::experimental)::variant.
*/
// TODO: replace by #include <(experimental/)variant> depending on compiler and C++ version
#if __cplusplus >= 201703L
#error Please delete variant.hpp and the #else section below, then remove this error
#include <variant>
namespace Utils {

View File

@@ -617,8 +617,9 @@ QVector<AndroidDeviceInfo> AndroidConfig::connectedDevices(const FilePath &adbTo
if (adbDevs.empty())
return devices;
while (adbDevs.first().startsWith("* daemon"))
adbDevs.removeFirst(); // remove the daemon logs
for (const QString line : adbDevs) // remove the daemon logs
if (line.startsWith("* daemon"))
adbDevs.removeOne(line);
adbDevs.removeFirst(); // remove "List of devices attached" header line
// workaround for '????????????' serial numbers:

View File

@@ -87,7 +87,8 @@ void AndroidExtraLibraryListModel::updateModel()
QTC_ASSERT(rc, return);
const ProjectNode *node = m_target->project()->findNodeForBuildKey(rc->buildKey());
QTC_ASSERT(node, return);
if (!node)
return;
if (node->parseInProgress()) {
emit enabledChanged(false);

View File

@@ -206,8 +206,10 @@ AndroidDeviceInfoList AndroidToolManager::androidVirtualDevices(const Utils::Fil
if (avds.empty())
return devices;
while (avds.first().startsWith(QLatin1String("* daemon")))
avds.removeFirst(); // remove the daemon logs
for (const QString line : avds) // remove the daemon logs
if (line.startsWith("* daemon"))
avds.removeOne(line);
avds.removeFirst(); // remove "List of devices attached" header line
bool nextLineIsTargetLine = false;

View File

@@ -454,7 +454,7 @@ void ClangToolRunWorker::finalize()
{
const QString toolName = tool()->name();
if (m_filesNotAnalyzed.size() != 0) {
appendMessage(tr("Error: Failed to analyze %1 files.").arg(m_filesAnalyzed.size()),
appendMessage(tr("Error: Failed to analyze %1 files.").arg(m_filesNotAnalyzed.size()),
ErrorMessageFormat);
Target *target = runControl()->target();
if (target && target->activeBuildConfiguration() && !target->activeBuildConfiguration()->buildDirectory().exists()

View File

@@ -202,7 +202,6 @@ RawProjectPart makeRawProjectPart(const Utils::FilePath &projectFile,
kitInfo.cToolChain = toolchainFromFlags(kit,
originalFlags,
ProjectExplorer::Constants::C_LANGUAGE_ID);
ToolChainKitAspect::setToolChain(kit, kitInfo.cToolChain);
}
addDriverModeFlagIfNeeded(kitInfo.cToolChain, flags, originalFlags);
rpp.setFlagsForC({kitInfo.cToolChain, flags});
@@ -211,7 +210,6 @@ RawProjectPart makeRawProjectPart(const Utils::FilePath &projectFile,
kitInfo.cxxToolChain = toolchainFromFlags(kit,
originalFlags,
ProjectExplorer::Constants::CXX_LANGUAGE_ID);
ToolChainKitAspect::setToolChain(kit, kitInfo.cxxToolChain);
}
addDriverModeFlagIfNeeded(kitInfo.cxxToolChain, flags, originalFlags);
rpp.setFlagsForCxx({kitInfo.cxxToolChain, flags});

View File

@@ -102,7 +102,7 @@ QList<LocatorFilterEntry> FileSystemFilter::matchesFor(QFutureInterface<LocatorF
const QStringList files = dirInfo.entryList(fileFilter,
QDir::Name|QDir::IgnoreCase|QDir::LocaleAware);
const QRegularExpression regExp = createRegExp(entryFileName, caseSensitivity_);
QRegularExpression regExp = createRegExp(entryFileName, caseSensitivity_);
if (!regExp.isValid())
return {};
@@ -122,7 +122,10 @@ QList<LocatorFilterEntry> FileSystemFilter::matchesFor(QFutureInterface<LocatorF
}
}
// file names can match with +linenumber or :linenumber
const EditorManager::FilePathInfo fp = EditorManager::splitLineAndColumnNumber(entry);
const EditorManager::FilePathInfo fp = EditorManager::splitLineAndColumnNumber(entryFileName);
regExp = createRegExp(fp.filePath, caseSensitivity_);
if (!regExp.isValid())
return {};
const QString fileName = QFileInfo(fp.filePath).fileName();
for (const QString &file : files) {
if (future.isCanceled())

View File

@@ -324,6 +324,7 @@ void CppFileSettingsWidget::apply()
rc.sourceSuffix = m_ui.sourceSuffixComboBox->currentText();
rc.headerSearchPaths = trimmedPaths(m_ui.headerSearchPathsEdit->text());
rc.sourceSearchPaths = trimmedPaths(m_ui.sourceSearchPathsEdit->text());
rc.licenseTemplatePath = licenseTemplatePath();
if (rc == *m_settings)
return;

View File

@@ -150,6 +150,11 @@ public:
return fn;
}
QString fullRef(bool includePrefix = false) const
{
return fullName(includePrefix).join('/');
}
void insert(const QStringList &path, BranchNode *n)
{
BranchNode *current = this;
@@ -186,7 +191,7 @@ public:
}
return names;
}
return {fullName().join('/')};
return {fullRef()};
}
int rowOf(BranchNode *node)
@@ -346,7 +351,7 @@ QVariant BranchModel::data(const QModelIndex &index, int role) const
return res;
}
case Qt::EditRole:
return index.column() == 0 ? node->fullName().join('/') : QVariant();
return index.column() == 0 ? node->fullRef() : QVariant();
case Qt::ToolTipRole:
if (!node->isLeaf())
return QVariant();
@@ -381,7 +386,7 @@ bool BranchModel::setData(const QModelIndex &index, const QVariant &value, int r
if (newName.isEmpty())
return false;
const QString oldName = node->fullName().join('/');
const QString oldName = node->fullRef();
if (oldName == newName)
return false;
@@ -525,7 +530,7 @@ QString BranchModel::fullName(const QModelIndex &idx, bool includePrefix) const
return QString();
if (node == d->headNode)
return QString("HEAD");
return node->fullName(includePrefix).join('/');
return node->fullRef(includePrefix);
}
QStringList BranchModel::localBranchNames() const
@@ -901,7 +906,8 @@ void BranchModel::updateUpstreamStatus(BranchNode *node)
{
if (node->tracking.isEmpty())
return;
VcsCommand *command = d->client->asyncUpstreamStatus(d->workingDirectory, node->name, node->tracking);
VcsCommand *command = d->client->asyncUpstreamStatus(
d->workingDirectory, node->fullRef(), node->tracking);
QObject::connect(command, &VcsCommand::stdOutText, node, [this, node](const QString &text) {
const QStringList split = text.trimmed().split('\t');
QTC_ASSERT(split.size() == 2, return);

View File

@@ -8,6 +8,8 @@
<file>wizards/icon@2x.png</file>
<file>wizards/application/CMakeLists.txt</file>
<file>wizards/application/project.qmlproject.tpl</file>
<file>wizards/application/BareMetal/main.cpp.tpl</file>
<file>wizards/application/FreeRTOS/main.cpp.tpl</file>
<file>wizards/application/main.qml.tpl</file>
<file>wizards/application/wizard.json</file>
</qresource>

View File

@@ -61,7 +61,7 @@
namespace McuSupport {
namespace Internal {
static const int KIT_VERSION = 4; // Bumps up whenever details in Kit creation change
static const int KIT_VERSION = 5; // Bumps up whenever details in Kit creation change
static QString packagePathFromSettings(const QString &settingsKey, const QString &defaultPath = {})
{
@@ -441,7 +441,7 @@ void McuSupportOptions::deletePackagesAndTargets()
const QVersionNumber &McuSupportOptions::supportedQulVersion()
{
static const QVersionNumber v({1, 1});
static const QVersionNumber v({1, 2});
return v;
}

View File

@@ -99,8 +99,6 @@ static McuToolChainPackage *createArmGccPackage()
Utils::HostOsInfo::withExecutableSuffix("bin/arm-none-eabi-g++"),
"GNUArmEmbeddedToolchain",
McuToolChainPackage::TypeArmGcc);
result->setDownloadUrl(
"https://developer.arm.com/open-source/gnu-toolchain/gnu-rm/downloads");
result->setEnvironmentVariableName(envVar);
return result;
}
@@ -149,19 +147,6 @@ static McuPackage *createRGLPackage()
return result;
}
static McuPackage *createStm32CubeFwF7SdkPackage()
{
auto result = new McuPackage(
McuPackage::tr("STM32Cube SDK"),
"%{Env:STM32Cube_FW_F7_SDK_PATH}",
"Drivers/STM32F7xx_HAL_Driver",
"Stm32CubeFwF7Sdk");
result->setDownloadUrl(
"https://www.st.com/content/st_com/en/products/embedded-software/mcus-embedded-software/stm32-embedded-software/stm32cube-mcu-packages/stm32cubef7.html");
result->setEnvironmentVariableName("STM32Cube_FW_F7_SDK_PATH");
return result;
}
static McuPackage *createStm32CubeProgrammerPackage()
{
@@ -185,17 +170,6 @@ static McuPackage *createStm32CubeProgrammerPackage()
return result;
}
static McuPackage *createEvkbImxrt1050SdkPackage()
{
auto result = new McuPackage(
McuPackage::tr("NXP i.MXRT SDK"),
"%{Env:EVKB_IMXRT1050_SDK_PATH}", // TODO: Try to not use 1050 specifics
"EVKB-IMXRT1050_manifest_v3_5.xml",
"EvkbImxrt1050Sdk");
result->setDownloadUrl("https://mcuxpresso.nxp.com/en/welcome");
return result;
}
static McuPackage *createMcuXpressoIdePackage()
{
const char envVar[] = "MCUXpressoIDE_PATH";
@@ -318,13 +292,8 @@ static QVector<McuTarget *> targetsFromDescriptions(const QList<McuTargetDescrip
static QFileInfoList targetDescriptionFiles(const Utils::FilePath &dir)
{
// Workaround for UL-2390: Instead of "./kits/", walk through "./lib/cmake/Qul/boards/"
QFileInfoList result;
QDirIterator it(dir.toString() + "/lib/cmake/Qul/boards/", {QLatin1String("*.json")},
QDir::Files, QDirIterator::Subdirectories);
while (it.hasNext())
result.append(it.next());
return result;
const QDir kitsDir(dir.toString() + "/kits/", "*.json");
return kitsDir.entryInfoList();
}
static QString freeRTOSEnvVarForPlatform(const QString &platform)

View File

@@ -0,0 +1,14 @@
#include "%{ProjectName}.h"
#include <qul/application.h>
#include <qul/qul.h>
int main()
{
Qul::initPlatform();
Qul::Application app;
static %{ProjectName} item;
app.setRootItem(&item);
app.exec();
return 0;
}

View File

@@ -4,7 +4,7 @@ project(%{ProjectName} VERSION 0.0.1 LANGUAGES C CXX ASM)
find_package(Qul)
add_executable(%{ProjectName})
add_executable(%{ProjectName} ${OS}/main.cpp)
qul_target_qml_sources(%{ProjectName} %{MainQmlFile})
target_link_libraries(%{ProjectName} Qul::QuickUltralite)

View File

@@ -0,0 +1,38 @@
#include "%{ProjectName}.h"
#include <qul/application.h>
#include <qul/qul.h>
#include <cstdio>
#include <FreeRTOS.h>
#include <task.h>
#ifndef QUL_STACK_SIZE
#error QUL_STACK_SIZE must be defined.
#endif
static void Qul_Thread(void *argument);
int main()
{
Qul::initPlatform();
if (xTaskCreate(Qul_Thread, "QulExec", QUL_STACK_SIZE, 0, 4, 0) != pdPASS) {
std::printf("Task creation failed!.\\r\\n");
configASSERT(false);
}
vTaskStartScheduler();
// Should not reach this point
configASSERT(false);
return 0;
}
static void Qul_Thread(void *argument)
{
Qul::Application app;
static %{ProjectName} item;
app.setRootItem(&item);
app.exec();
}

View File

@@ -1,4 +1,3 @@
pragma main;
import QtQuick 2.0
Rectangle {

View File

@@ -52,6 +52,16 @@
"target": "%{ProjectDirectory}/%{ProjectName}.qmlproject",
"openInEditor": false
},
{
"source": "BareMetal/main.cpp.tpl",
"target": "%{ProjectDirectory}/BareMetal/main.cpp",
"openInEditor": false
},
{
"source": "FreeRTOS/main.cpp.tpl",
"target": "%{ProjectDirectory}/FreeRTOS/main.cpp",
"openInEditor": false
},
{
"source": "main.qml.tpl",
"target": "%{ProjectDirectory}/%{MainQmlFile}",

View File

@@ -134,21 +134,22 @@ LocalQmlPreviewSupport::LocalQmlPreviewSupport(ProjectExplorer::RunControl *runC
const auto currentTarget = runControl->target();
const auto *qmlBuildSystem = qobject_cast<QmlProjectManager::QmlBuildSystem *>(currentTarget->buildSystem());
const auto aspect = runControl->aspect<QmlProjectManager::QmlMainFileAspect>();
const QString mainScript = aspect->mainScript();
const QString currentFile = aspect->currentFile();
if (const auto aspect = runControl->aspect<QmlProjectManager::QmlMainFileAspect>()) {
const QString mainScript = aspect->mainScript();
const QString currentFile = aspect->currentFile();
const QString mainScriptFromProject = qmlBuildSystem->targetFile(
Utils::FilePath::fromString(mainScript)).toString();
const QString mainScriptFromProject = qmlBuildSystem->targetFile(
Utils::FilePath::fromString(mainScript)).toString();
const QString currentFileFromProject = qmlBuildSystem->targetFile(
Utils::FilePath::fromString(currentFile)).toString();
const QString currentFileFromProject = qmlBuildSystem->targetFile(
Utils::FilePath::fromString(currentFile)).toString();
if (!currentFile.isEmpty() && qmlProjectRunConfigurationArguments.last().contains(mainScriptFromProject)) {
qmlProjectRunConfigurationArguments.removeLast();
auto commandLine = Utils::CommandLine(runnable.commandLine().executable(), qmlProjectRunConfigurationArguments);
commandLine.addArg(currentFile);
runnable.setCommandLine(commandLine);
if (!currentFile.isEmpty() && qmlProjectRunConfigurationArguments.last().contains(mainScriptFromProject)) {
qmlProjectRunConfigurationArguments.removeLast();
auto commandLine = Utils::CommandLine(runnable.commandLine().executable(), qmlProjectRunConfigurationArguments);
commandLine.addArg(currentFile);
runnable.setCommandLine(commandLine);
}
}
Utils::QtcProcess::addArg(&runnable.commandLineArguments,

Some files were not shown because too many files have changed in this diff Show More