Merge remote-tracking branch 'origin/4.11'
Change-Id: I066040bd5e762d580c8a903122f451f2193df186
1
dist/changes-4.11.0.md
vendored
@@ -101,6 +101,7 @@ you can check out from the public Git repository. For example:
|
|||||||
|
|
||||||
### Qbs
|
### Qbs
|
||||||
|
|
||||||
|
* Updated to Qbs version 1.15.0
|
||||||
* Fixed that include paths were not correctly categorized into user and system paths
|
* Fixed that include paths were not correctly categorized into user and system paths
|
||||||
for the code model
|
for the code model
|
||||||
|
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ HTML.extraimages = images/commercial.png
|
|||||||
qhp.QtCreator.extraFiles = images/commercial.png
|
qhp.QtCreator.extraFiles = images/commercial.png
|
||||||
|
|
||||||
depends += qtwidgets \
|
depends += qtwidgets \
|
||||||
|
qtcmake \
|
||||||
qtcore \
|
qtcore \
|
||||||
qtqml \
|
qtqml \
|
||||||
qtquick \
|
qtquick \
|
||||||
|
|||||||
BIN
doc/images/qmldesigner-alignment.png
Normal file
|
After Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 5.5 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 7.6 KiB After Width: | Height: | Size: 21 KiB |
BIN
doc/images/qmldesigner-distribute-objects.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
doc/images/qmldesigner-distribute-spacing-evenly.png
Normal file
|
After Width: | Height: | Size: 636 B |
BIN
doc/images/qmldesigner-distribute-spacing-pixels.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
doc/images/qmldesigner-distribute-spacing-x.png
Normal file
|
After Width: | Height: | Size: 293 B |
@@ -31,7 +31,7 @@
|
|||||||
|
|
||||||
\title Connecting MCUs
|
\title Connecting MCUs
|
||||||
|
|
||||||
\l{Qt for MCU} enables you to use subsets of QML and Qt Quick Controls
|
Qt for MCU enables you to use subsets of QML and Qt Quick Controls
|
||||||
to create user interfaces for devices that are powered by microcontroller
|
to create user interfaces for devices that are powered by microcontroller
|
||||||
units (MCU). It includes a new graphics rendering engine that has a low
|
units (MCU). It includes a new graphics rendering engine that has a low
|
||||||
memory footprint and is optimized for MCUs and other resource-constrained
|
memory footprint and is optimized for MCUs and other resource-constrained
|
||||||
|
|||||||
@@ -183,7 +183,7 @@
|
|||||||
Since Qt 5.11, you can compile QML source code into the final binary. This
|
Since Qt 5.11, you can compile QML source code into the final binary. This
|
||||||
improves the startup time of the application and eliminates the need to
|
improves the startup time of the application and eliminates the need to
|
||||||
deploy QML files together with the application. For more information, see
|
deploy QML files together with the application. For more information, see
|
||||||
\l{Compiling QML Ahead of Time}.
|
\l{Ahead-of-Time Compilation}.
|
||||||
|
|
||||||
\QC new project wizards create Qt Quick projects that can be compiled,
|
\QC new project wizards create Qt Quick projects that can be compiled,
|
||||||
because they are set up to use the Qt Resource System. To compile Qt Quick
|
because they are set up to use the Qt Resource System. To compile Qt Quick
|
||||||
|
|||||||
@@ -154,6 +154,7 @@
|
|||||||
\list
|
\list
|
||||||
\li \l{Setting Bindings}
|
\li \l{Setting Bindings}
|
||||||
\li \l{Setting Anchors and Margins}
|
\li \l{Setting Anchors and Margins}
|
||||||
|
\li \l{Aligning and Distributing Items}
|
||||||
\li \l{Using Positioners}
|
\li \l{Using Positioners}
|
||||||
\li \l{Using Layouts}
|
\li \l{Using Layouts}
|
||||||
\li \l{Organizing Items}
|
\li \l{Organizing Items}
|
||||||
@@ -252,9 +253,9 @@
|
|||||||
Rectangle {
|
Rectangle {
|
||||||
id: rectangle2
|
id: rectangle2
|
||||||
anchors.left: rectangle1.right
|
anchors.left: rectangle1.right
|
||||||
anchors.leftMargin: 15
|
anchors.leftMargin: 10
|
||||||
anchors.bottom: parent.bottom
|
anchors.bottom: parent.bottom
|
||||||
anchors.bottomMargin: 15
|
anchors.bottomMargin: 10
|
||||||
//
|
//
|
||||||
}
|
}
|
||||||
\endqml
|
\endqml
|
||||||
@@ -263,6 +264,60 @@
|
|||||||
item. Margins only have meaning for anchors. They do not take any effect
|
item. Margins only have meaning for anchors. They do not take any effect
|
||||||
when using layouts or absolute positioning.
|
when using layouts or absolute positioning.
|
||||||
|
|
||||||
|
\section2 Aligning and Distributing Items
|
||||||
|
|
||||||
|
When you're working with a group of items, you can select them to align
|
||||||
|
and distribute them evenly. As the positions of the items are fixed, you
|
||||||
|
cannot apply these functions to anchored items. For scalability, you can
|
||||||
|
anchor the aligned and distributed items when your design is ready.
|
||||||
|
|
||||||
|
\image qmldesigner-alignment.png "Aligning sibling items"
|
||||||
|
|
||||||
|
Select the buttons in the \uicontrol Align group to align the top/bottom
|
||||||
|
or left/right edges of the items in the group to the one farthest away from
|
||||||
|
the center of the group. For example, when left-aligning, the items are
|
||||||
|
aligned to the leftmost item. You can also align the horizontal/vertical
|
||||||
|
centers of items, or both, as in the image above.
|
||||||
|
|
||||||
|
In the \uicontrol {Align to} field, select whether to align the items in
|
||||||
|
respect to the selection, the root item, or a \e {key object} that you
|
||||||
|
select in the \uicontrol {Key object} field. The key object must be a part
|
||||||
|
of the selection.
|
||||||
|
|
||||||
|
You can distribute either \e objects or the \e spacing between them. If the
|
||||||
|
objects or spacing cannot be distributed to equal pixel values without
|
||||||
|
ending up with half pixels, you receive a notification. You can either allow
|
||||||
|
\QDS to distribute objects or spacing using the closest values possible or
|
||||||
|
tweak your design so that the objects and spacing can be distributed
|
||||||
|
perfectly.
|
||||||
|
|
||||||
|
When distributing objects, you can select whether the distance between
|
||||||
|
them is calculated from their top/bottom or left/right edges or their
|
||||||
|
horizontal/vertical center.
|
||||||
|
|
||||||
|
\image qmldesigner-distribute-objects.png "Distribute objects buttons"
|
||||||
|
|
||||||
|
You can distribute spacing either evenly within a target area or at
|
||||||
|
specified distances, calculated from a starting point.
|
||||||
|
|
||||||
|
You can select the orientation in which the objects are distributed evenly
|
||||||
|
within the target area: horizontally along the x axis or vertically along
|
||||||
|
the y axis.
|
||||||
|
|
||||||
|
\image qmldesigner-distribute-spacing-evenly.png "Distribute spacing evenly"
|
||||||
|
|
||||||
|
Alternatively, you can distribute spacing in pixels by selecting one of the
|
||||||
|
starting point buttons: left/right or top/bottom edge of the target area,
|
||||||
|
or its horizontal/vertical center. Note that some items might end up outside
|
||||||
|
the target area.
|
||||||
|
|
||||||
|
\image qmldesigner-distribute-spacing-pixels.png "Distribute spacing in pixels"
|
||||||
|
|
||||||
|
You can set the space between objects in pixels. You can
|
||||||
|
disable the distribution of spacing in pixels by clicking
|
||||||
|
the \inlineimage qmldesigner-distribute-spacing-x.png
|
||||||
|
button.
|
||||||
|
|
||||||
\section2 Using Positioners
|
\section2 Using Positioners
|
||||||
|
|
||||||
\l{Important Concepts In Qt Quick - Positioning#positioners}
|
\l{Important Concepts In Qt Quick - Positioning#positioners}
|
||||||
|
|||||||
@@ -73,7 +73,7 @@
|
|||||||
\endif
|
\endif
|
||||||
\li \l{Previewing in Browsers}
|
\li \l{Previewing in Browsers}
|
||||||
|
|
||||||
You can open \l{http://qt-webassembly.io/designviewer/}{\QDV}
|
You can open \l{https://qt-webassembly.io/designviewer/}{\QDV}
|
||||||
in a browser and load applications to it.
|
in a browser and load applications to it.
|
||||||
\endlist
|
\endlist
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -342,8 +342,8 @@
|
|||||||
|
|
||||||
In order to understand the scene graph category, it's important to
|
In order to understand the scene graph category, it's important to
|
||||||
understand how the Qt Quick scene graph works. See
|
understand how the Qt Quick scene graph works. See
|
||||||
\l {Qt Quick Scene Graph} and \l {Qt Quick Scene Graph Renderer} for a
|
\l {Qt Quick Scene Graph} and \l {Qt Quick Scene Graph Default Renderer}
|
||||||
detailed description. The following events are reported in the
|
for a detailed description. The following events are reported in the
|
||||||
\uicontrol {Scene Graph} category. Not all events are generated by all render
|
\uicontrol {Scene Graph} category. Not all events are generated by all render
|
||||||
loops. In the Windows and Basic render loops everything runs in the same
|
loops. In the Windows and Basic render loops everything runs in the same
|
||||||
thread and the distinction between GUI thread and render thread is
|
thread and the distinction between GUI thread and render thread is
|
||||||
|
|||||||
@@ -619,6 +619,7 @@ void TestRunner::debugTests()
|
|||||||
runControl, &RunControl::initiateStop);
|
runControl, &RunControl::initiateStop);
|
||||||
|
|
||||||
connect(runControl, &RunControl::stopped, this, &TestRunner::onFinished);
|
connect(runControl, &RunControl::stopped, this, &TestRunner::onFinished);
|
||||||
|
m_finishDebugConnect = connect(runControl, &RunControl::finished, this, &TestRunner::onFinished);
|
||||||
ProjectExplorerPlugin::startRunControl(runControl);
|
ProjectExplorerPlugin::startRunControl(runControl);
|
||||||
if (useOutputProcessor && AutotestPlugin::settings()->popupOnStart)
|
if (useOutputProcessor && AutotestPlugin::settings()->popupOnStart)
|
||||||
AutotestPlugin::popupResultsPane();
|
AutotestPlugin::popupResultsPane();
|
||||||
@@ -715,6 +716,7 @@ void TestRunner::onFinished()
|
|||||||
m_selectedTests.clear();
|
m_selectedTests.clear();
|
||||||
|
|
||||||
disconnect(m_stopDebugConnect);
|
disconnect(m_stopDebugConnect);
|
||||||
|
disconnect(m_finishDebugConnect);
|
||||||
disconnect(m_targetConnect);
|
disconnect(m_targetConnect);
|
||||||
m_fakeFutureInterface = nullptr;
|
m_fakeFutureInterface = nullptr;
|
||||||
m_runMode = TestRunMode::None;
|
m_runMode = TestRunMode::None;
|
||||||
|
|||||||
@@ -108,6 +108,7 @@ private:
|
|||||||
QMetaObject::Connection m_buildConnect;
|
QMetaObject::Connection m_buildConnect;
|
||||||
// temporarily used when debugging
|
// temporarily used when debugging
|
||||||
QMetaObject::Connection m_stopDebugConnect;
|
QMetaObject::Connection m_stopDebugConnect;
|
||||||
|
QMetaObject::Connection m_finishDebugConnect;
|
||||||
// temporarily used for handling of switching the current target
|
// temporarily used for handling of switching the current target
|
||||||
QMetaObject::Connection m_targetConnect;
|
QMetaObject::Connection m_targetConnect;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -33,6 +33,7 @@
|
|||||||
#include <utils/synchronousprocess.h>
|
#include <utils/synchronousprocess.h>
|
||||||
|
|
||||||
#include <QAction>
|
#include <QAction>
|
||||||
|
#include <QPointer>
|
||||||
#include <QRegularExpression>
|
#include <QRegularExpression>
|
||||||
#include <QScrollBar>
|
#include <QScrollBar>
|
||||||
#include <QTextBlock>
|
#include <QTextBlock>
|
||||||
@@ -58,7 +59,7 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
IContext *outputWindowContext = nullptr;
|
IContext *outputWindowContext = nullptr;
|
||||||
Utils::OutputFormatter *formatter = nullptr;
|
QPointer<Utils::OutputFormatter> formatter;
|
||||||
QString settingsKey;
|
QString settingsKey;
|
||||||
|
|
||||||
bool enforceNewline = false;
|
bool enforceNewline = false;
|
||||||
|
|||||||
@@ -53,8 +53,8 @@ def main():
|
|||||||
["Resources", "adding.qrc"],
|
["Resources", "adding.qrc"],
|
||||||
["QML", "example.qml"]]:
|
["QML", "example.qml"]]:
|
||||||
filenames = ["ABCD" + filename.upper(), "abcd" + filename.lower(), "test", "TEST", filename]
|
filenames = ["ABCD" + filename.upper(), "abcd" + filename.lower(), "test", "TEST", filename]
|
||||||
if (filename.endswith(".qrc") and JIRA.isBugStillOpen(20101)):
|
if filename.endswith(".qrc"):
|
||||||
filenames.remove("ABCD" + filename.upper())
|
filenames = ["ABCD" + filename.lower(), "abcd" + filename.lower(), filename]
|
||||||
previous = filenames[-1]
|
previous = filenames[-1]
|
||||||
for filename in filenames:
|
for filename in filenames:
|
||||||
tempFiletype = filetype
|
tempFiletype = filetype
|
||||||
|
|||||||