forked from qt-creator/qt-creator
Merge remote-tracking branch 'origin/4.9'
Change-Id: I95c56cc9371959f96afde3677fc82481f36f66c8
This commit is contained in:
12
dist/changes-4.9.0.md
vendored
12
dist/changes-4.9.0.md
vendored
@@ -46,6 +46,7 @@ All Projects
|
|||||||
(QTCREATORBUG-20577)
|
(QTCREATORBUG-20577)
|
||||||
* Fixed that dragging file from `Projects` view to desktop moved the file
|
* Fixed that dragging file from `Projects` view to desktop moved the file
|
||||||
(QTCREATORBUG-14494)
|
(QTCREATORBUG-14494)
|
||||||
|
* Fixed regression with `QTC_EXTENSION` environment variable
|
||||||
|
|
||||||
QMake Projects
|
QMake Projects
|
||||||
|
|
||||||
@@ -96,11 +97,13 @@ C++ Support
|
|||||||
* Added option to format code instead of only indenting code
|
* Added option to format code instead of only indenting code
|
||||||
* Added `Open Used .clang-format Configuration File` to editor's
|
* Added `Open Used .clang-format Configuration File` to editor's
|
||||||
context menu
|
context menu
|
||||||
|
* Fixed indentation issue after empty line (QTCREATORBUG-22238)
|
||||||
|
|
||||||
QML Support
|
QML Support
|
||||||
|
|
||||||
* Updated to parser from Qt 5.12, adding support for ECMAScript 7
|
* Updated to parser from Qt 5.12, adding support for ECMAScript 7
|
||||||
(QTCREATORBUG-20341, QTCREATORBUG-21301)
|
(QTCREATORBUG-20341, QTCREATORBUG-21301)
|
||||||
|
* Added Qt 5.13 as option to the wizards
|
||||||
* Improved error handling in Qt Quick Application project template (QTBUG-39469)
|
* Improved error handling in Qt Quick Application project template (QTBUG-39469)
|
||||||
* Fixed crash on `Find Usages`
|
* Fixed crash on `Find Usages`
|
||||||
|
|
||||||
@@ -114,15 +117,19 @@ Nim Support
|
|||||||
|
|
||||||
Debugging
|
Debugging
|
||||||
|
|
||||||
|
* Added pretty printing of `QSizePolicy`
|
||||||
* Fixed that debugger toolbar could force large minimum window size
|
* Fixed that debugger toolbar could force large minimum window size
|
||||||
(QTCREATORBUG-21885)
|
(QTCREATORBUG-21885)
|
||||||
* Added pretty printing of `QSizePolicy`
|
* Fixed restoring of debugger layout (QTCREATORBUG-21083)
|
||||||
* Fixed pretty printing of standard maps and sets from `libc++`
|
* Fixed pretty printing of standard maps and sets from `libc++`
|
||||||
(QTCREATORBUG-18536)
|
(QTCREATORBUG-18536)
|
||||||
* GDB
|
* GDB
|
||||||
* Added support for rvalue references in function arguments
|
* Added support for rvalue references in function arguments
|
||||||
|
* Fixed `Break on Abort` with GDB > 8.1 (QTBUG-73993)
|
||||||
* LLDB
|
* LLDB
|
||||||
* Fixed `Source Paths Mappings` functionality (QTCREATORBUG-17468)
|
* Fixed `Source Paths Mappings` functionality (QTCREATORBUG-17468)
|
||||||
|
* QML
|
||||||
|
* Fixed loading QML stack (QTCREATORBUG-22209)
|
||||||
|
|
||||||
Clang Analyzer Tools
|
Clang Analyzer Tools
|
||||||
|
|
||||||
@@ -142,6 +149,8 @@ Qt Quick Designer
|
|||||||
|
|
||||||
* Made QML Live Preview integration opensource
|
* Made QML Live Preview integration opensource
|
||||||
* Added support for `Dialog` (QTCREATORBUG-22120)
|
* Added support for `Dialog` (QTCREATORBUG-22120)
|
||||||
|
* Fixed layout icons (QDS-538)
|
||||||
|
* Fixed crash when creating item inside `TabView` tab (QTCREATORBUG-21542)
|
||||||
|
|
||||||
Version Control Systems
|
Version Control Systems
|
||||||
|
|
||||||
@@ -192,6 +201,7 @@ Windows
|
|||||||
* Fixed issue with UNC paths in `.pro` files (QTCREATORBUG-21881)
|
* Fixed issue with UNC paths in `.pro` files (QTCREATORBUG-21881)
|
||||||
* Fixed language version detections with MSVC and precompiled headers
|
* Fixed language version detections with MSVC and precompiled headers
|
||||||
(QTCREATORBUG-21860)
|
(QTCREATORBUG-21860)
|
||||||
|
* Fixed submenu arrow styling (QTCREATORBUG-21376)
|
||||||
|
|
||||||
Linux
|
Linux
|
||||||
|
|
||||||
|
@@ -39,7 +39,6 @@ depends += qtwidgets \
|
|||||||
qtgui \
|
qtgui \
|
||||||
qthelp \
|
qthelp \
|
||||||
qtquickcontrols \
|
qtquickcontrols \
|
||||||
qtquickcontrols2 \
|
|
||||||
qtquickextras \
|
qtquickextras \
|
||||||
qtlinguist \
|
qtlinguist \
|
||||||
qtscxml \
|
qtscxml \
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.4 KiB |
BIN
doc/images/qtcreator-text-encoding.png
Normal file
BIN
doc/images/qtcreator-text-encoding.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 12 KiB |
@@ -489,7 +489,8 @@
|
|||||||
\li M222
|
\li M222
|
||||||
\li Error
|
\li Error
|
||||||
\li Functions are not supported in a Qt Quick UI form.
|
\li Functions are not supported in a Qt Quick UI form.
|
||||||
\li
|
\li For a list of supported JavaScript functions, see
|
||||||
|
\l{Supported Methods}.
|
||||||
|
|
||||||
\row
|
\row
|
||||||
\li M223
|
\li M223
|
||||||
|
@@ -52,6 +52,8 @@
|
|||||||
\image studio-edit-mode.png
|
\image studio-edit-mode.png
|
||||||
\endif
|
\endif
|
||||||
|
|
||||||
|
\section2 Navigating Between Open Files and Symbols
|
||||||
|
|
||||||
Use the toolbar to navigate between open files and symbols in use. To browse
|
Use the toolbar to navigate between open files and symbols in use. To browse
|
||||||
backward or forward through your location history, click
|
backward or forward through your location history, click
|
||||||
\inlineimage prev.png
|
\inlineimage prev.png
|
||||||
@@ -59,8 +61,12 @@
|
|||||||
(\uicontrol {Go Forward}).
|
(\uicontrol {Go Forward}).
|
||||||
|
|
||||||
To go to any open file, select it from the \uicontrol {Open files} drop-down
|
To go to any open file, select it from the \uicontrol {Open files} drop-down
|
||||||
menu (1). Right-click the menu title and select \uicontrol {Copy Full Path}
|
menu (1). To open a context menu that contains commands for managing open
|
||||||
to copy the path and name of the current file to the clipboard.
|
files, right-click the file name or icon on the toolbar. In addition to the
|
||||||
|
commands also available in the \uicontrol File menu, you can copy the path
|
||||||
|
and name of the current file and the number of the line where the cursor is
|
||||||
|
currently located to the clipboard by selecting \uicontrol {Copy Full Path},
|
||||||
|
\uicontrol {Copy File Name}, or \uicontrol {Copy Path and Line Number}.
|
||||||
|
|
||||||
To jump to any symbol used in the current file, select it from the
|
To jump to any symbol used in the current file, select it from the
|
||||||
\uicontrol Symbols drop-down menu (2). By default, the symbols are displayed
|
\uicontrol Symbols drop-down menu (2). By default, the symbols are displayed
|
||||||
@@ -70,10 +76,16 @@
|
|||||||
|
|
||||||
To jump to a line and column in the current file, select the line and column
|
To jump to a line and column in the current file, select the line and column
|
||||||
indicator (3) or press \key {Ctrl+K} (or \key {Cmd+K} on \macos) to open the
|
indicator (3) or press \key {Ctrl+K} (or \key {Cmd+K} on \macos) to open the
|
||||||
locator. Enter the line number and column number in the locator, separated
|
\l{Searching with the Locator}{locator}. Enter the line number and column
|
||||||
by a colon (:).
|
number in the locator, separated by a colon (:).
|
||||||
|
|
||||||
|
\note Other convenient ways of navigating in \QC are provided
|
||||||
|
by the \l{Keyboard Shortcuts} {keyboard shortcuts} and the
|
||||||
|
\l{Browsing Project Contents}{sidebar}.
|
||||||
|
|
||||||
\if defined(qtcreator)
|
\if defined(qtcreator)
|
||||||
|
\section2 Selecting Parse Context
|
||||||
|
|
||||||
Code might be interpreted differently in different contexts. A file can be
|
Code might be interpreted differently in different contexts. A file can be
|
||||||
used by different projects or subprojects with different defines, or it can
|
used by different projects or subprojects with different defines, or it can
|
||||||
be included in the context of C, C++, Objective-C, or Objective-C++. To
|
be included in the context of C, C++, Objective-C, or Objective-C++. To
|
||||||
@@ -86,19 +98,22 @@
|
|||||||
incorrect, select \uicontrol {Additional Preprocessor Directives} to
|
incorrect, select \uicontrol {Additional Preprocessor Directives} to
|
||||||
add preprocessor directives.
|
add preprocessor directives.
|
||||||
|
|
||||||
|
\section2 Changing Text Encoding
|
||||||
|
|
||||||
To show the file encoding of the current file on the editor toolbar (5),
|
To show the file encoding of the current file on the editor toolbar (5),
|
||||||
select \uicontrol Tools > \uicontrol Options > \uicontrol {Text Editor} >
|
select \uicontrol Tools > \uicontrol Options > \uicontrol {Text Editor} >
|
||||||
\uicontrol Display > \uicontrol {Display file encoding}. To change the
|
\uicontrol Display > \uicontrol {Display file encoding}.
|
||||||
encoding, click it on the toolbar and select new encoding in the
|
|
||||||
\uicontrol {Text Encoding} dialog. To reload the file with the selected
|
To change the text encoding, click it on the toolbar and select new
|
||||||
encoding, select \uicontrol {Reload with Encoding}. To save the file with
|
encoding in the \uicontrol {Text Encoding} dialog:
|
||||||
|
|
||||||
|
\image qtcreator-text-encoding.png "Text Encoding dialog"
|
||||||
|
|
||||||
|
To reload the file with the selected encoding, select
|
||||||
|
\uicontrol {Reload with Encoding}. To save the file with
|
||||||
the new encoding, select \uicontrol {Save with Encoding}.
|
the new encoding, select \uicontrol {Save with Encoding}.
|
||||||
\endif
|
\endif
|
||||||
|
|
||||||
\note Other convenient ways of navigating in \QC are provided by the
|
|
||||||
\l{Searching with the Locator}{locator}, \l{Keyboard Shortcuts}
|
|
||||||
{keyboard shortcuts}, and the \l{Browsing Project Contents}{sidebar}.
|
|
||||||
|
|
||||||
\section1 Splitting the Editor View
|
\section1 Splitting the Editor View
|
||||||
|
|
||||||
Split the editor view or open the editor in a new window when you want to
|
Split the editor view or open the editor in a new window when you want to
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
**
|
**
|
||||||
** Copyright (C) 2018 The Qt Company Ltd.
|
** Copyright (C) 2019 The Qt Company Ltd.
|
||||||
** Contact: https://www.qt.io/licensing/
|
** Contact: https://www.qt.io/licensing/
|
||||||
**
|
**
|
||||||
** This file is part of the Qt Creator documentation.
|
** This file is part of the Qt Creator documentation.
|
||||||
@@ -55,7 +55,7 @@
|
|||||||
|
|
||||||
\li \l{Creating a Mobile Application}
|
\li \l{Creating a Mobile Application}
|
||||||
|
|
||||||
Learn how to create a Qt Quick application using Qt Quick Controls 2
|
Learn how to create a Qt Quick application using Qt Quick Controls
|
||||||
for Android and iOS devices.
|
for Android and iOS devices.
|
||||||
|
|
||||||
\endlist
|
\endlist
|
||||||
|
@@ -118,7 +118,7 @@
|
|||||||
|
|
||||||
Create a Qt Quick application that uses
|
Create a Qt Quick application that uses
|
||||||
\l{http://doc.qt.io/qt-5/qtquickcontrols2-index.html}
|
\l{http://doc.qt.io/qt-5/qtquickcontrols2-index.html}
|
||||||
{Qt Quick Controls 2} to implement a scrollable list (requires
|
{Qt Quick Controls} to implement a scrollable list (requires
|
||||||
Qt 5.9 or later) or a set of pages with a stack-based or
|
Qt 5.9 or later) or a set of pages with a stack-based or
|
||||||
swipe-based navigation model (requires Qt 5.7 or later).
|
swipe-based navigation model (requires Qt 5.7 or later).
|
||||||
|
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
**
|
**
|
||||||
** Copyright (C) 2018 The Qt Company Ltd.
|
** Copyright (C) 2019 The Qt Company Ltd.
|
||||||
** Contact: https://www.qt.io/licensing/
|
** Contact: https://www.qt.io/licensing/
|
||||||
**
|
**
|
||||||
** This file is part of the Qt Creator documentation.
|
** This file is part of the Qt Creator documentation.
|
||||||
@@ -792,7 +792,7 @@
|
|||||||
"data":
|
"data":
|
||||||
{
|
{
|
||||||
"wordWrap": true,
|
"wordWrap": true,
|
||||||
"trText": "Creates a deployable Qt Quick 2 application using Qt Quick Controls 2.",
|
"trText": "Creates a deployable Qt Quick 2 application using Qt Quick Controls.",
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
\endcode
|
\endcode
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
**
|
**
|
||||||
** Copyright (C) 2018 The Qt Company Ltd.
|
** Copyright (C) 2019 The Qt Company Ltd.
|
||||||
** Contact: https://www.qt.io/licensing/
|
** Contact: https://www.qt.io/licensing/
|
||||||
**
|
**
|
||||||
** This file is part of the Qt Creator documentation.
|
** This file is part of the Qt Creator documentation.
|
||||||
@@ -38,7 +38,7 @@
|
|||||||
\title Creating a Mobile Application
|
\title Creating a Mobile Application
|
||||||
|
|
||||||
This tutorial describes developing Qt Quick applications for Android and iOS
|
This tutorial describes developing Qt Quick applications for Android and iOS
|
||||||
devices using Qt Quick Controls 2.
|
devices using Qt Quick Controls.
|
||||||
We use \QC to implement a Qt Quick application
|
We use \QC to implement a Qt Quick application
|
||||||
that accelerates an SVG (Scalable Vector Graphics) image based on the
|
that accelerates an SVG (Scalable Vector Graphics) image based on the
|
||||||
changing accelerometer values.
|
changing accelerometer values.
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
**
|
**
|
||||||
** Copyright (C) 2017 The Qt Company Ltd.
|
** Copyright (C) 2019 The Qt Company Ltd.
|
||||||
** Contact: https://www.qt.io/licensing/
|
** Contact: https://www.qt.io/licensing/
|
||||||
**
|
**
|
||||||
** This file is part of the Qt Creator documentation.
|
** This file is part of the Qt Creator documentation.
|
||||||
@@ -44,7 +44,7 @@
|
|||||||
use for building and running the project: \l qmake,
|
use for building and running the project: \l qmake,
|
||||||
\l {Setting Up CMake}{CMake}, or \l {Setting Up Qbs}{Qbs}.
|
\l {Setting Up CMake}{CMake}, or \l {Setting Up Qbs}{Qbs}.
|
||||||
|
|
||||||
\li In the \uicontrol {Qt Quick Controls 2 Style} field, select one of
|
\li In the \uicontrol {Qt Quick Controls Style} field, select one of
|
||||||
the predefined \l{Styling Qt Quick Controls 2}{UI styles} to use,
|
the predefined \l{Styling Qt Quick Controls 2}{UI styles} to use,
|
||||||
and then select \uicontrol Next.
|
and then select \uicontrol Next.
|
||||||
|
|
||||||
|
@@ -59,7 +59,7 @@
|
|||||||
\li \l {Creating Components}
|
\li \l {Creating Components}
|
||||||
|
|
||||||
You can use basic QML types to create your own components that you
|
You can use basic QML types to create your own components that you
|
||||||
can combine with ready-made Qt Quick Controls 2 and Layouts
|
can combine with ready-made Qt Quick Controls and Layouts
|
||||||
(available since Qt 5.7).
|
(available since Qt 5.7).
|
||||||
|
|
||||||
\li \l {Managing Item Hierarchy}
|
\li \l {Managing Item Hierarchy}
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
**
|
**
|
||||||
** Copyright (C) 2018 The Qt Company Ltd.
|
** Copyright (C) 2019 The Qt Company Ltd.
|
||||||
** Contact: https://www.qt.io/licensing/
|
** Contact: https://www.qt.io/licensing/
|
||||||
**
|
**
|
||||||
** This file is part of the Qt Creator documentation.
|
** This file is part of the Qt Creator documentation.
|
||||||
@@ -51,8 +51,7 @@
|
|||||||
For more information about developing Qt Quick applications in the Design
|
For more information about developing Qt Quick applications in the Design
|
||||||
mode, see \l{Developing Qt Quick Applications}.
|
mode, see \l{Developing Qt Quick Applications}.
|
||||||
|
|
||||||
For examples of using Qt Quick Controls 2, see
|
For examples of using Qt Quick Controls, see \l{Qt Quick Controls Examples}.
|
||||||
\l{Qt Quick Controls 2 Examples}.
|
|
||||||
|
|
||||||
\include creator-tutorial-create-qq-project.qdocinc qt quick application
|
\include creator-tutorial-create-qq-project.qdocinc qt quick application
|
||||||
|
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
**
|
**
|
||||||
** Copyright (C) 2018 The Qt Company Ltd.
|
** Copyright (C) 2019 The Qt Company Ltd.
|
||||||
** Contact: https://www.qt.io/licensing/
|
** Contact: https://www.qt.io/licensing/
|
||||||
**
|
**
|
||||||
** This file is part of the Qt Creator documentation.
|
** This file is part of the Qt Creator documentation.
|
||||||
@@ -120,6 +120,12 @@
|
|||||||
support for \l{http://doc.qt.io/qt-5/qtvirtualkeyboard-index.html}
|
support for \l{http://doc.qt.io/qt-5/qtvirtualkeyboard-index.html}
|
||||||
{Qt Virtual Keyboard} to the application.
|
{Qt Virtual Keyboard} to the application.
|
||||||
|
|
||||||
|
\note If you have not installed the Qt Virtual Keyboard module when
|
||||||
|
you installed Qt, an error message will appear when you try to open
|
||||||
|
the \e main.qml in the \uicontrol {Form Editor} in the Design mode.
|
||||||
|
You can use the \l {Installing Qt}{Qt Maintenance Tool} to install
|
||||||
|
Qt Virtual Keyboard.
|
||||||
|
|
||||||
\li Select \uicontrol Next.
|
\li Select \uicontrol Next.
|
||||||
|
|
||||||
\li Select \l{glossary-buildandrun-kit}{kits} for running and building
|
\li Select \l{glossary-buildandrun-kit}{kits} for running and building
|
||||||
@@ -136,7 +142,7 @@
|
|||||||
\QC generates a QML file, \e main.qml, that you can modify in the Design
|
\QC generates a QML file, \e main.qml, that you can modify in the Design
|
||||||
mode.
|
mode.
|
||||||
|
|
||||||
\section1 Creating Qt Quick Controls 2 Applications
|
\section1 Creating Qt Quick Controls Applications
|
||||||
|
|
||||||
\list 1
|
\list 1
|
||||||
|
|
||||||
@@ -155,7 +161,7 @@
|
|||||||
use for building and running the project: \l qmake,
|
use for building and running the project: \l qmake,
|
||||||
\l {Setting Up CMake}{CMake}, or \l {Setting Up Qbs}{Qbs}.
|
\l {Setting Up CMake}{CMake}, or \l {Setting Up Qbs}{Qbs}.
|
||||||
|
|
||||||
\li In the \uicontrol {Qt Quick Controls 2 Style} field, select one of
|
\li In the \uicontrol {Qt Quick Controls Style} field, select one of
|
||||||
the predefined \l{Styling Qt Quick Controls 2}{UI styles} to use,
|
the predefined \l{Styling Qt Quick Controls 2}{UI styles} to use,
|
||||||
and then select \uicontrol Next.
|
and then select \uicontrol Next.
|
||||||
|
|
||||||
|
@@ -179,6 +179,6 @@
|
|||||||
qmlDesignerImportPaths in your product (for Qbs projects).
|
qmlDesignerImportPaths in your product (for Qbs projects).
|
||||||
Modules in the import paths defined in \c{QML_DESIGNER_IMPORT_PATH} will be
|
Modules in the import paths defined in \c{QML_DESIGNER_IMPORT_PATH} will be
|
||||||
used only in the Design mode.
|
used only in the Design mode.
|
||||||
For an example, see \l {Qt Quick Controls 2 - Contact List}.
|
For an example, see \l {Qt Quick Controls - Contact List}.
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
@@ -92,6 +92,9 @@
|
|||||||
You can use the following QML types to create components:
|
You can use the following QML types to create components:
|
||||||
|
|
||||||
\list
|
\list
|
||||||
|
\li \l [QML]{AnimatedImage}{Animated Image} provides a way to play
|
||||||
|
animations stored as images containing a series of frames, such
|
||||||
|
as those stored in GIF files.
|
||||||
\li \l [QML]{BorderImage}{Border Image} uses an image as a border or
|
\li \l [QML]{BorderImage}{Border Image} uses an image as a border or
|
||||||
background.
|
background.
|
||||||
\li \l [QML]{Image} adds a bitmap to the scene. You can stretch and
|
\li \l [QML]{Image} adds a bitmap to the scene. You can stretch and
|
||||||
@@ -119,13 +122,13 @@
|
|||||||
\li \l{GridView}{Grid View} provides a grid vizualization of a model.
|
\li \l{GridView}{Grid View} provides a grid vizualization of a model.
|
||||||
\li \l{ListView}{List View} provides a list vizualization of a model.
|
\li \l{ListView}{List View} provides a list vizualization of a model.
|
||||||
\li \l{PathView}{Path View} visualizes the contents of a model along a
|
\li \l{PathView}{Path View} visualizes the contents of a model along a
|
||||||
path.
|
path. For more information, see \l{Editing PathView Properties}.
|
||||||
\li \l [QtQuickControls2] {ScrollView}{Scroll View} provides scrolling
|
\li \l [QtQuickControls] {ScrollView}{Scroll View} provides scrolling
|
||||||
for user-defined content. It can be used instead of a \l Flickable
|
for user-defined content. It can be used instead of a \l Flickable
|
||||||
item.
|
item.
|
||||||
\li \l [QtQuickControls2] {StackView}{Stack View} provides a stack-based
|
\li \l [QtQuickControls] {StackView}{Stack View} provides a stack-based
|
||||||
navigation model.
|
navigation model.
|
||||||
\li \l[QtQuickControls2] {SwipeView}{Swipe View} enables users to
|
\li \l[QtQuickControls] {SwipeView}{Swipe View} enables users to
|
||||||
navigate pages by swiping sideways.
|
navigate pages by swiping sideways.
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
@@ -333,21 +336,21 @@
|
|||||||
|
|
||||||
\section2 Organizing Items
|
\section2 Organizing Items
|
||||||
|
|
||||||
Since Qt 5.7, you can use the following \l{Qt Quick Controls 2} types to
|
Since Qt 5.7, you can use the following \l{Qt Quick Controls} types to
|
||||||
organize items on screens:
|
organize items on screens:
|
||||||
|
|
||||||
\list
|
\list
|
||||||
\li \l [QtQuickControls2]{Frame} places a logical group of controls
|
\li \l [QtQuickControls]{Frame} places a logical group of controls
|
||||||
within a visual frame.
|
within a visual frame.
|
||||||
\li \l [QtQuickControls2]{GroupBox}{Group Box} is used to lay out a
|
\li \l [QtQuickControls]{GroupBox}{Group Box} is used to lay out a
|
||||||
logical group of controls together, within a titled visual frame.
|
logical group of controls together, within a titled visual frame.
|
||||||
\li \l [QtQuickControls2]{Label} is a text label with inherited styling
|
\li \l [QtQuickControls]{Label} is a text label with inherited styling
|
||||||
and font.
|
and font.
|
||||||
\li \l [QtQuickControls2]{Page} provides a styled page control with
|
\li \l [QtQuickControls]{Page} provides a styled page control with
|
||||||
support for a header and footer.
|
support for a header and footer.
|
||||||
\li \l [QtQuickControls2]{PageIndicator}{Page Indicator} indicates the
|
\li \l [QtQuickControls]{PageIndicator}{Page Indicator} indicates the
|
||||||
currently active page.
|
currently active page.
|
||||||
\li \l [QtQuickControls2]{Pane} provides a background matching with the
|
\li \l [QtQuickControls]{Pane} provides a background matching with the
|
||||||
application style and theme.
|
application style and theme.
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
@@ -365,62 +368,62 @@
|
|||||||
\li \l [QML]{MouseArea}{Mouse Area} enables simple mouse handling.
|
\li \l [QML]{MouseArea}{Mouse Area} enables simple mouse handling.
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
Since Qt 5.7, you can also use the following \l{Qt Quick Controls 2} types
|
Since Qt 5.7, you can also use the following \l{Qt Quick Controls} types
|
||||||
to inform users about the progress of the application or to gather input
|
to inform users about the progress of the application or to gather input
|
||||||
from the user:
|
from the user:
|
||||||
|
|
||||||
\list
|
\list
|
||||||
\li \l [QtQuickControls2]{BusyIndicator}{Busy Indicator} indicates
|
\li \l [QtQuickControls]{BusyIndicator}{Busy Indicator} indicates
|
||||||
activity while content is being loaded.
|
activity while content is being loaded.
|
||||||
\li \l [QtQuickControls2]{Button} provides a push button that you can
|
\li \l [QtQuickControls]{Button} provides a push button that you can
|
||||||
associate with an action.
|
associate with an action.
|
||||||
\li \l [QtQuickControls2]{CheckBox}{Check Box} provides an option button
|
\li \l [QtQuickControls]{CheckBox}{Check Box} provides an option button
|
||||||
that can be toggled on (checked) or off (unchecked).
|
that can be toggled on (checked) or off (unchecked).
|
||||||
\li \l [QtQuickControls2]{CheckDelegate}{Check Delegate} presents an
|
\li \l [QtQuickControls]{CheckDelegate}{Check Delegate} presents an
|
||||||
item delegate that can be toggled on (checked) or off (unchecked).
|
item delegate that can be toggled on (checked) or off (unchecked).
|
||||||
\li \l [QtQuickControls2]{ComboBox}{Combo Box} is a combined button and
|
\li \l [QtQuickControls]{ComboBox}{Combo Box} is a combined button and
|
||||||
popup list that is populated by using a data model.
|
popup list that is populated by using a data model.
|
||||||
\li \l [QtQuickControls2]{DelayButton}{Delay Button} provides an option
|
\li \l [QtQuickControls]{DelayButton}{Delay Button} provides an option
|
||||||
button that is triggered when held down long enough.
|
button that is triggered when held down long enough.
|
||||||
\li \l [QtQuickControls2]{Dial} is a circular dial that is rotated to
|
\li \l [QtQuickControls]{Dial} is a circular dial that is rotated to
|
||||||
set a value.
|
set a value.
|
||||||
\li \l [QtQuickControls2]{ProgressBar}{Progress Bar} indicates the
|
\li \l [QtQuickControls]{ProgressBar}{Progress Bar} indicates the
|
||||||
progress of an operation.
|
progress of an operation.
|
||||||
\li \l [QtQuickControls2]{RadioButton}{Radio Button} provides an option
|
\li \l [QtQuickControls]{RadioButton}{Radio Button} provides an option
|
||||||
button that can be switched on (checked) or off (unchecked).
|
button that can be switched on (checked) or off (unchecked).
|
||||||
\li \l [QtQuickControls2]{RadioDelegate}{Radio Delegate} presents an
|
\li \l [QtQuickControls]{RadioDelegate}{Radio Delegate} presents an
|
||||||
item delegate that can be toggled on (checked) or off (unchecked).
|
item delegate that can be toggled on (checked) or off (unchecked).
|
||||||
\li \l [QtQuickControls2]{RangeSlider}{Range Slider} enables users to
|
\li \l [QtQuickControls]{RangeSlider}{Range Slider} enables users to
|
||||||
select a range of values by sliding two handles along a track.
|
select a range of values by sliding two handles along a track.
|
||||||
\li \l [QtQuickControls2]{RoundButton}{Round Button} provides a push
|
\li \l [QtQuickControls]{RoundButton}{Round Button} provides a push
|
||||||
button with rounded corners that you can associate with an action.
|
button with rounded corners that you can associate with an action.
|
||||||
\li \l [QtQuickControls2]{Slider} selects a value by sliding a handle
|
\li \l [QtQuickControls]{Slider} selects a value by sliding a handle
|
||||||
along a track.
|
along a track.
|
||||||
\li \l [QtQuickControls2]{SpinBox}{Spin Box} enables the user to specify
|
\li \l [QtQuickControls]{SpinBox}{Spin Box} enables the user to specify
|
||||||
a value by clicking the up or down buttons, by pressing up or down
|
a value by clicking the up or down buttons, by pressing up or down
|
||||||
on the keyboard, or by entering a value in the box.
|
on the keyboard, or by entering a value in the box.
|
||||||
\li \l [QtQuickControls2]{Switch} is an option button that can be
|
\li \l [QtQuickControls]{Switch} is an option button that can be
|
||||||
toggled on or off.
|
toggled on or off.
|
||||||
\li \l [QtQuickControls2]{SwitchDelegate}{SwitchDelegate} presents an
|
\li \l [QtQuickControls]{SwitchDelegate}{Switch Delegate} presents an
|
||||||
item delegate with a switch indicator that can be toggled on or off.
|
item delegate with a switch indicator that can be toggled on or off.
|
||||||
\li \l [QtQuickControls2] {TabBar}{Tab Bar} enables users to switch
|
\li \l [QtQuickControls] {TabBar}{Tab Bar} enables users to switch
|
||||||
between different views or subtasks.
|
between different views or subtasks.
|
||||||
\li \l [QtQuickControls2]{TabButton}{Tab Button} is a button
|
\li \l [QtQuickControls]{TabButton}{Tab Button} is a button
|
||||||
that is functionally similar to \uicontrol Button, but provides a
|
that is functionally similar to \uicontrol Button, but provides a
|
||||||
look that is more suitable for a \uicontrol {Tab Bar}.
|
look that is more suitable for a \uicontrol {Tab Bar}.
|
||||||
\li \l [QtQuickControls2]{TextArea}{Text Area} displays multiple lines
|
\li \l [QtQuickControls]{TextArea}{Text Area} displays multiple lines
|
||||||
of editable formatted text.
|
of editable formatted text.
|
||||||
\li \l [QtQuickControls2]{TextField}{Text Field} displays a single line
|
\li \l [QtQuickControls]{TextField}{Text Field} displays a single line
|
||||||
of editable plain text.
|
of editable plain text.
|
||||||
\li \l [QtQuickControls2]{ToolBar}{Tool Bar} is a container of
|
\li \l [QtQuickControls]{ToolBar}{Tool Bar} is a container of
|
||||||
application-wide and context sensitive actions and controls, such as
|
application-wide and context sensitive actions and controls, such as
|
||||||
navigation buttons and search fields.
|
navigation buttons and search fields.
|
||||||
\li \l [QtQuickControls2]{ToolButton}{Tool Button} is a button
|
\li \l [QtQuickControls]{ToolButton}{Tool Button} is a button
|
||||||
that is functionally similar to \uicontrol Button, but provides a
|
that is functionally similar to \uicontrol Button, but provides a
|
||||||
look that is more suitable for a \uicontrol {Tool Bar}.
|
look that is more suitable for a \uicontrol {Tool Bar}.
|
||||||
\li \l [QtQuickControls2]{ToolSeparator}{Tool Separator} separates a
|
\li \l [QtQuickControls]{ToolSeparator}{Tool Separator} separates a
|
||||||
group of items from adjacent items on a \uicontrol {Tool Bar}.
|
group of items from adjacent items on a \uicontrol {Tool Bar}.
|
||||||
\li \l [QtQuickControls2]{Tumbler} is a spinnable wheel of items that
|
\li \l [QtQuickControls]{Tumbler} is a spinnable wheel of items that
|
||||||
can be selected.
|
can be selected.
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
|
@@ -73,7 +73,7 @@
|
|||||||
|
|
||||||
\li \uicontrol {Library} (2) displays the building blocks that you
|
\li \uicontrol {Library} (2) displays the building blocks that you
|
||||||
can use to design applications: predefined QML types, your own
|
can use to design applications: predefined QML types, your own
|
||||||
QML components, or Qt Quick Controls 2 that you import to the
|
QML components, or Qt Quick Controls that you import to the
|
||||||
project, and other resources. For more information, see
|
project, and other resources. For more information, see
|
||||||
\l {Creating Components}.
|
\l {Creating Components}.
|
||||||
|
|
||||||
|
@@ -52,10 +52,9 @@
|
|||||||
When you copy an item, all its child items are also copied. When
|
When you copy an item, all its child items are also copied. When
|
||||||
you remove an item, the child items are also removed.
|
you remove an item, the child items are also removed.
|
||||||
|
|
||||||
You can show and hide items on the canvas to focus on specific parts of the
|
To show and hide items on the canvas when focusing on specific parts of the
|
||||||
application. Click the \inlineimage icon_color_none.png
|
application, click \inlineimage eye_open.png
|
||||||
(\uicontrol Transparent) button to change the visibility of an item on the
|
. To change the visibility of an item in the application code, select the
|
||||||
canvas. To change the visibility of an item in the application, select the
|
|
||||||
\uicontrol Visibility check box in the \uicontrol Properties pane or select
|
\uicontrol Visibility check box in the \uicontrol Properties pane or select
|
||||||
\uicontrol Edit > \uicontrol Visibility in the context menu.
|
\uicontrol Edit > \uicontrol Visibility in the context menu.
|
||||||
|
|
||||||
@@ -86,16 +85,14 @@
|
|||||||
Items with the same stacking value are drawn in the order they are listed,
|
Items with the same stacking value are drawn in the order they are listed,
|
||||||
from the last item up.
|
from the last item up.
|
||||||
|
|
||||||
To raise or lower the stack value of an item, select \inlineimage raise.png
|
|
||||||
(\uicontrol Raise) or \inlineimage lower.png
|
|
||||||
(\uicontrol Lower) on the toolbar.
|
|
||||||
|
|
||||||
To move an item to the front or back of all its siblings, right-click it in
|
To move an item to the front or back of all its siblings, right-click it in
|
||||||
the navigator or the \uicontrol {Form Editor} and select
|
the navigator or the \uicontrol {Form Editor} and select
|
||||||
\uicontrol {Stack (z)}. To remove the \c z property, select
|
\uicontrol {Stack (z)} > \uicontrol {To Front} or \uicontrol {To Back}.
|
||||||
|
To raise or lower the stack value of an item, select \uicontrol Raise
|
||||||
|
or \uicontrol Lower. To remove the \c z property, select
|
||||||
\uicontrol {Reset z Property}.
|
\uicontrol {Reset z Property}.
|
||||||
|
|
||||||
You can also use a \uicontrol StackLayout item (Qt Quick Controls 2) to
|
You can also use a \uicontrol StackLayout item (Qt Quick Controls) to
|
||||||
create a stacked view. For more information, see \l {Using Layouts}.
|
create a stacked view. For more information, see \l {Using Layouts}.
|
||||||
|
|
||||||
\section1 Switching Parent Items
|
\section1 Switching Parent Items
|
||||||
|
@@ -122,7 +122,7 @@ def main():
|
|||||||
copy_regexp(build_include_regexp, arguments.build, arguments.target_directory, arguments.verbose)
|
copy_regexp(build_include_regexp, arguments.build, arguments.target_directory, arguments.verbose)
|
||||||
|
|
||||||
if arguments.sevenzip_target:
|
if arguments.sevenzip_target:
|
||||||
subprocess.check_call([arguments.sevenzip, 'a', '-mx9', arguments.sevenzip_target,
|
subprocess.check_call([arguments.sevenzip, 'a', '-mx9', '-mmt2', arguments.sevenzip_target,
|
||||||
os.path.join(arguments.target_directory, '*')])
|
os.path.join(arguments.target_directory, '*')])
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
@@ -58,7 +58,7 @@ def main():
|
|||||||
common.codesign(tempdir)
|
common.codesign(tempdir)
|
||||||
# package
|
# package
|
||||||
zip_source = os.path.join(tempdir, '*') if arguments.exclude_toplevel else tempdir
|
zip_source = os.path.join(tempdir, '*') if arguments.exclude_toplevel else tempdir
|
||||||
subprocess.check_call([arguments.sevenzip, 'a',
|
subprocess.check_call([arguments.sevenzip, 'a', '-mmt2',
|
||||||
arguments.target_archive, zip_source])
|
arguments.target_archive, zip_source])
|
||||||
finally:
|
finally:
|
||||||
shutil.rmtree(tempdir_base)
|
shutil.rmtree(tempdir_base)
|
||||||
|
@@ -1,13 +1,13 @@
|
|||||||
{
|
{
|
||||||
"version": 1,
|
"version": 1,
|
||||||
"supportedProjectTypes": [ "Qt4ProjectManager.Qt4Project" ],
|
"supportedProjectTypes": [ "CMakeProjectManager.CMakeProject", "Qbs.QbsProject", "Qt4ProjectManager.Qt4Project" ],
|
||||||
"id": "R.AutoTest",
|
"id": "R.AutoTest",
|
||||||
"category": "H.Project",
|
"category": "H.Project",
|
||||||
"trDescription": "Creates a new unit test project. Unit tests allow you to verify that the code is fit for use and that there are no regressions.",
|
"trDescription": "Creates a new unit test project. Unit tests allow you to verify that the code is fit for use and that there are no regressions.",
|
||||||
"trDisplayName": "Auto Test Project",
|
"trDisplayName": "Auto Test Project",
|
||||||
"trDisplayCategory": "Other Project",
|
"trDisplayCategory": "Other Project",
|
||||||
"icon": "autotest.png",
|
"icon": "autotest.png",
|
||||||
"featuresRequired": [ "QtSupport.Wizards.FeatureQt", "QtSupport.Wizards.FeatureDesktop" ],
|
"featuresRequired": [ "QtSupport.Wizards.FeatureDesktop" ],
|
||||||
"enabled": "%{JS: [ %{Plugins} ].indexOf('AutoTest') >= 0}",
|
"enabled": "%{JS: [ %{Plugins} ].indexOf('AutoTest') >= 0}",
|
||||||
|
|
||||||
"options":
|
"options":
|
||||||
@@ -187,7 +187,7 @@
|
|||||||
"enabled": "%{IsTopLevelProject}",
|
"enabled": "%{IsTopLevelProject}",
|
||||||
"data": {
|
"data": {
|
||||||
"projectFilePath": "%{ProjectFilePath}",
|
"projectFilePath": "%{ProjectFilePath}",
|
||||||
"requiredFeatures": [ "%{JS: (('%{BuildSystem}' === 'cmake' && '%{TestFrameWork}' === 'QtTest') || '%{TestFrameWork}' === 'QtQuickTest') ? 'QtSupport.Wizards.FeatureQt.5' : 'QtSupport.Wizards.FeatureQt' }" ]
|
"requiredFeatures": [ "%{JS: ('%{TestFrameWork}' === 'QtQuickTest' ? 'QtSupport.Wizards.FeatureQt.5' : (('%{BuildSystem}' === 'qmake' || '%{TestFrameWork}' === 'QtTest') ? 'QtSupport.Wizards.FeatureQt' : 'DeviceType.Desktop' )) }" ]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@@ -194,8 +194,6 @@
|
|||||||
</array>
|
</array>
|
||||||
<key>NSPrincipalClass</key>
|
<key>NSPrincipalClass</key>
|
||||||
<string>NSApplication</string>
|
<string>NSApplication</string>
|
||||||
<key>NSSupportsAutomaticGraphicsSwitching</key>
|
|
||||||
<true/>
|
|
||||||
<key>CFBundleDocumentTypes</key>
|
<key>CFBundleDocumentTypes</key>
|
||||||
<array>
|
<array>
|
||||||
<dict>
|
<dict>
|
||||||
|
@@ -55,19 +55,7 @@ Rectangle {
|
|||||||
onRangeChanged: {
|
onRangeChanged: {
|
||||||
zoomSliderToolBar.updateZoomLevel();
|
zoomSliderToolBar.updateZoomLevel();
|
||||||
content.scroll();
|
content.scroll();
|
||||||
|
selectionRange.update();
|
||||||
// If you select something in the main view and then resize the current range by some
|
|
||||||
// other means, the selection should stay where it was.
|
|
||||||
var oldTimePerPixel = selectionRange.viewTimePerPixel;
|
|
||||||
selectionRange.viewTimePerPixel = zoomControl.rangeDuration / content.width;
|
|
||||||
if (selectionRange.creationState === selectionRange.creationFinished &&
|
|
||||||
oldTimePerPixel != selectionRange.viewTimePerPixel) {
|
|
||||||
var newWidth = selectionRange.rangeWidth * oldTimePerPixel /
|
|
||||||
selectionRange.viewTimePerPixel;
|
|
||||||
selectionRange.rangeLeft = selectionRange.rangeLeft * oldTimePerPixel /
|
|
||||||
selectionRange.viewTimePerPixel;
|
|
||||||
selectionRange.rangeRight = selectionRange.rangeLeft + newWidth;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
onWindowChanged: {
|
onWindowChanged: {
|
||||||
content.scroll();
|
content.scroll();
|
||||||
@@ -216,6 +204,8 @@ Rectangle {
|
|||||||
buttonsBar.updateLockButton(selectionLocked);
|
buttonsBar.updateLockButton(selectionLocked);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
onWidthChanged: selectionRange.update();
|
||||||
|
|
||||||
onPropagateSelection: {
|
onPropagateSelection: {
|
||||||
if (lockItemSelection || (newModel === selectedModel && newItem === selectedItem))
|
if (lockItemSelection || (newModel === selectedModel && newItem === selectedItem))
|
||||||
return;
|
return;
|
||||||
@@ -314,6 +304,18 @@ Rectangle {
|
|||||||
root.selectionRangeMode = false;
|
root.selectionRangeMode = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function update() {
|
||||||
|
// If you select something in the main view and then resize the current range by some
|
||||||
|
// other means, the selection should stay where it was.
|
||||||
|
var oldTimePerPixel = viewTimePerPixel;
|
||||||
|
viewTimePerPixel = zoomControl.rangeDuration / content.width;
|
||||||
|
if (creationState === creationFinished && oldTimePerPixel != viewTimePerPixel) {
|
||||||
|
var newWidth = rangeWidth * oldTimePerPixel / viewTimePerPixel;
|
||||||
|
rangeLeft = rangeLeft * oldTimePerPixel / viewTimePerPixel;
|
||||||
|
rangeRight = rangeLeft + newWidth;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -5,6 +5,7 @@ QtcPlugin {
|
|||||||
|
|
||||||
Depends { name: "Core" }
|
Depends { name: "Core" }
|
||||||
Depends { name: "TextEditor" }
|
Depends { name: "TextEditor" }
|
||||||
|
Depends { name: "CppEditor" }
|
||||||
Depends { name: "CppTools" }
|
Depends { name: "CppTools" }
|
||||||
Depends { name: "ProjectExplorer" }
|
Depends { name: "ProjectExplorer" }
|
||||||
Depends { name: "Utils" }
|
Depends { name: "Utils" }
|
||||||
|
@@ -2031,14 +2031,18 @@ void BreakHandler::setWatchpointAtExpression(const QString &exp)
|
|||||||
|
|
||||||
void BreakHandler::releaseAllBreakpoints()
|
void BreakHandler::releaseAllBreakpoints()
|
||||||
{
|
{
|
||||||
|
GlobalBreakpoints gbps;
|
||||||
for (Breakpoint bp : breakpoints()) {
|
for (Breakpoint bp : breakpoints()) {
|
||||||
bp->removeChildren();
|
bp->removeChildren();
|
||||||
bp->destroyMarker();
|
bp->destroyMarker();
|
||||||
if (GlobalBreakpoint gbp = bp->globalBreakpoint())
|
gbps.append(bp->globalBreakpoint());
|
||||||
gbp->updateMarker();
|
|
||||||
}
|
}
|
||||||
clear();
|
clear();
|
||||||
// The now-unclaimed breakpoints are globally visible again.
|
// Make now-unclaimed breakpoints globally visible again.
|
||||||
|
for (GlobalBreakpoint gbp: qAsConst(gbps)) {
|
||||||
|
if (gbp)
|
||||||
|
gbp->updateMarker();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
QString BreakpointItem::msgWatchpointByExpressionTriggered(const QString &expr) const
|
QString BreakpointItem::msgWatchpointByExpressionTriggered(const QString &expr) const
|
||||||
|
@@ -444,7 +444,10 @@ void DebuggerMainWindow::restorePersistentSettings()
|
|||||||
|
|
||||||
qCDebug(perspectivesLog) << "LOADED DOCKS:" << theMainWindow->d->m_persistentChangedDocks;
|
qCDebug(perspectivesLog) << "LOADED DOCKS:" << theMainWindow->d->m_persistentChangedDocks;
|
||||||
|
|
||||||
|
QTC_ASSERT(theMainWindow, return);
|
||||||
|
QTC_ASSERT(theMainWindow->d, return);
|
||||||
for (Perspective *perspective : theMainWindow->d->m_perspectives) {
|
for (Perspective *perspective : theMainWindow->d->m_perspectives) {
|
||||||
|
QTC_ASSERT(perspective, continue);
|
||||||
qCDebug(perspectivesLog) << "RESTORING PERSPECTIVE" << perspective->d->m_id;
|
qCDebug(perspectivesLog) << "RESTORING PERSPECTIVE" << perspective->d->m_id;
|
||||||
for (DockOperation &op : perspective->d->m_dockOperations) {
|
for (DockOperation &op : perspective->d->m_dockOperations) {
|
||||||
if (op.operationType != Perspective::Raise) {
|
if (op.operationType != Perspective::Raise) {
|
||||||
@@ -477,6 +480,7 @@ void DebuggerMainWindow::savePersistentSettings()
|
|||||||
|
|
||||||
QSet<QString> changedDocks = theMainWindow->d->m_persistentChangedDocks;
|
QSet<QString> changedDocks = theMainWindow->d->m_persistentChangedDocks;
|
||||||
for (Perspective *perspective : theMainWindow->d->m_perspectives) {
|
for (Perspective *perspective : theMainWindow->d->m_perspectives) {
|
||||||
|
QTC_ASSERT(perspective, continue);
|
||||||
qCDebug(perspectivesLog) << "SAVE PERSPECTIVE" << perspective->d->m_id;
|
qCDebug(perspectivesLog) << "SAVE PERSPECTIVE" << perspective->d->m_id;
|
||||||
for (const DockOperation &op : perspective->d->m_dockOperations) {
|
for (const DockOperation &op : perspective->d->m_dockOperations) {
|
||||||
if (op.operationType != Perspective::Raise) {
|
if (op.operationType != Perspective::Raise) {
|
||||||
|
@@ -168,6 +168,7 @@ PerfProfilerTool::PerfProfilerTool()
|
|||||||
m_delayLabel->setProperty("panelwidget", true);
|
m_delayLabel->setProperty("panelwidget", true);
|
||||||
|
|
||||||
m_perspective.setAboutToActivateCallback([this]() { createViews(); });
|
m_perspective.setAboutToActivateCallback([this]() { createViews(); });
|
||||||
|
updateRunActions();
|
||||||
}
|
}
|
||||||
|
|
||||||
void PerfProfilerTool::createViews()
|
void PerfProfilerTool::createViews()
|
||||||
|
@@ -382,6 +382,11 @@ void TargetSetupPage::handleKitUpdate(Kit *k)
|
|||||||
m_importer->makePersistent(k);
|
m_importer->makePersistent(k);
|
||||||
|
|
||||||
bool acceptable = !m_requiredPredicate || m_requiredPredicate(k);
|
bool acceptable = !m_requiredPredicate || m_requiredPredicate(k);
|
||||||
|
const bool wasAcceptable = Utils::contains(m_widgets, [k](const TargetSetupWidget *w) {
|
||||||
|
return w->kit() == k;
|
||||||
|
});
|
||||||
|
if (acceptable == wasAcceptable)
|
||||||
|
return;
|
||||||
|
|
||||||
if (!acceptable)
|
if (!acceptable)
|
||||||
removeWidget(k);
|
removeWidget(k);
|
||||||
|
@@ -441,8 +441,8 @@ void ToolChainOptionsWidget::toolChainSelectionChanged()
|
|||||||
ToolChainTreeItem *item = currentTreeItem();
|
ToolChainTreeItem *item = currentTreeItem();
|
||||||
|
|
||||||
QWidget *currentTcWidget = item ? item->widget : nullptr;
|
QWidget *currentTcWidget = item ? item->widget : nullptr;
|
||||||
|
if (currentTcWidget)
|
||||||
m_widgetStack->setCurrentWidget(currentTcWidget);
|
m_widgetStack->setCurrentWidget(currentTcWidget);
|
||||||
m_container->setVisible(currentTcWidget);
|
m_container->setVisible(currentTcWidget);
|
||||||
updateState();
|
updateState();
|
||||||
}
|
}
|
||||||
|
@@ -298,13 +298,15 @@ void QmlProfilerStatisticsMainView::displayTypeIndex(int typeIndex)
|
|||||||
QAbstractItemModel *sourceModel = sortModel->sourceModel();
|
QAbstractItemModel *sourceModel = sortModel->sourceModel();
|
||||||
QTC_ASSERT(sourceModel, return);
|
QTC_ASSERT(sourceModel, return);
|
||||||
|
|
||||||
QModelIndex sourceIndex = sourceModel->index(qMin(typeIndex, sourceModel->rowCount() - 1),
|
if (typeIndex < sourceModel->rowCount()) {
|
||||||
MainCallCount);
|
QModelIndex sourceIndex = sourceModel->index(typeIndex, MainCallCount);
|
||||||
QTC_ASSERT(sourceIndex.data(TypeIdRole).toInt() == typeIndex, return);
|
QTC_ASSERT(sourceIndex.data(TypeIdRole).toInt() == typeIndex, return);
|
||||||
|
setCurrentIndex(sourceIndex.data(SortRole).toInt() > 0
|
||||||
setCurrentIndex(sourceIndex.data(SortRole).toInt() > 0
|
? sortModel->mapFromSource(sourceIndex)
|
||||||
? sortModel->mapFromSource(sourceIndex)
|
: QModelIndex());
|
||||||
: QModelIndex());
|
} else {
|
||||||
|
setCurrentIndex(QModelIndex());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// show in callers/callees subwindow
|
// show in callers/callees subwindow
|
||||||
|
Submodule src/shared/qbs updated: e0c6f88fe5...1301eb87fd
@@ -45,7 +45,7 @@
|
|||||||
:CppTools__Internal__CompletionSettingsPage.Behavior_QGroupBox {container=':qt_tabwidget_stackedwidget_QScrollArea' name='groupBox' title='Behavior' type='QGroupBox' visible='1'}
|
:CppTools__Internal__CompletionSettingsPage.Behavior_QGroupBox {container=':qt_tabwidget_stackedwidget_QScrollArea' name='groupBox' title='Behavior' type='QGroupBox' visible='1'}
|
||||||
:DebugModeWidget.Debugger Log_QDockWidget {container=':Qt Creator.DebugModeWidget_QSplitter' name='GlobalLogDockWidget' type='QDockWidget' visible='1'}
|
:DebugModeWidget.Debugger Log_QDockWidget {container=':Qt Creator.DebugModeWidget_QSplitter' name='GlobalLogDockWidget' type='QDockWidget' visible='1'}
|
||||||
:DebugModeWidget.Debugger.Docks.BreakDockWidget_QDockWidget {container=':Qt Creator.DebugModeWidget_QSplitter' name='Debugger.Docks.BreakpointManagerDockWidget' type='QDockWidget' visible='1'}
|
:DebugModeWidget.Debugger.Docks.BreakDockWidget_QDockWidget {container=':Qt Creator.DebugModeWidget_QSplitter' name='Debugger.Docks.BreakpointManagerDockWidget' type='QDockWidget' visible='1'}
|
||||||
:DebugModeWidget.Debugger.Docks.LocalsAndInspectorDockWidget_QDockWidget {container=':Qt Creator.DebugModeWidget_QSplitter' name='Debugger.Docks.LocalsAndInspectorDockWidget' type='QDockWidget' visible='1'}
|
:DebugModeWidget.Debugger.Docks.LocalsAndInspectorDockWidget_QDockWidget {container=':Qt Creator.DebugModeWidget_QSplitter' name~='Debugger\\\\.Dock\\\\.LocalsAndInspector\\\\.\\\\d+DockWidget' type='QDockWidget' visible='1'}
|
||||||
:DebugModeWidget.OK_QPushButton {container=':Qt Creator.DebugModeWidget_QSplitter' text='OK' type='QPushButton' unnamed='1' visible='1'}
|
:DebugModeWidget.OK_QPushButton {container=':Qt Creator.DebugModeWidget_QSplitter' text='OK' type='QPushButton' unnamed='1' visible='1'}
|
||||||
:DebugModeWidget.Toolbar_QDockWidget {container=':Qt Creator.DebugModeWidget_QSplitter' name='Toolbar' type='QDockWidget' visible='1'}
|
:DebugModeWidget.Toolbar_QDockWidget {container=':Qt Creator.DebugModeWidget_QSplitter' name='Toolbar' type='QDockWidget' visible='1'}
|
||||||
:DebugModeWidget_Debugger::Internal::ConsoleView {container=':Qt Creator.DebugModeWidget_QSplitter' type='Debugger::Internal::ConsoleView' unnamed='1' visible='1'}
|
:DebugModeWidget_Debugger::Internal::ConsoleView {container=':Qt Creator.DebugModeWidget_QSplitter' type='Debugger::Internal::ConsoleView' unnamed='1' visible='1'}
|
||||||
@@ -54,7 +54,7 @@
|
|||||||
:Debugger Toolbar.Exit Debugger_QToolButton {container=':DebugModeWidget.Toolbar_QDockWidget' text='Stop Debugger' type='QToolButton' unnamed='1' visible='1'}
|
:Debugger Toolbar.Exit Debugger_QToolButton {container=':DebugModeWidget.Toolbar_QDockWidget' text='Stop Debugger' type='QToolButton' unnamed='1' visible='1'}
|
||||||
:Debugger Toolbar.StatusText_Utils::StatusLabel {container=':DebugModeWidget.Toolbar_QDockWidget' type='Utils::StatusLabel' unnamed='1'}
|
:Debugger Toolbar.StatusText_Utils::StatusLabel {container=':DebugModeWidget.Toolbar_QDockWidget' type='Utils::StatusLabel' unnamed='1'}
|
||||||
:Debugger.Docks.BreakDockWidget.Debugger.Docks.Break_QFrame {container=':DebugModeWidget.Debugger.Docks.BreakDockWidget_QDockWidget' name='Debugger.Docks.BreakpointManager' type='QFrame' visible='1'}
|
:Debugger.Docks.BreakDockWidget.Debugger.Docks.Break_QFrame {container=':DebugModeWidget.Debugger.Docks.BreakDockWidget_QDockWidget' name='Debugger.Docks.BreakpointManager' type='QFrame' visible='1'}
|
||||||
:Debugger.Docks.LocalsAndWatchersDockWidget.Inspector_QFrame {container=':DebugModeWidget.Debugger.Docks.LocalsAndInspectorDockWidget_QDockWidget' name='Inspector' type='QFrame' visible='1'}
|
:Debugger.Docks.LocalsAndWatchersDockWidget.Inspector_QFrame {container=':DebugModeWidget.Debugger.Docks.LocalsAndInspectorDockWidget_QDockWidget' name~='Debugger\\\\.Dock\\\\.Inspector\\\\.\\\\d+' type='QFrame' visible='1'}
|
||||||
:Debugger::Internal::ConsoleEdit {columnIndex='0' container=':DebugModeWidget_Debugger::Internal::ConsoleView' rowIndex='0' type='Debugger::Internal::ConsoleEdit' unnamed='1' visible='1'}
|
:Debugger::Internal::ConsoleEdit {columnIndex='0' container=':DebugModeWidget_Debugger::Internal::ConsoleView' rowIndex='0' type='Debugger::Internal::ConsoleEdit' unnamed='1' visible='1'}
|
||||||
:Description.description_Utils::CompletingTextEdit {container=':splitter.Description_QGroupBox' name='description' type='Utils::CompletingTextEdit' visible='1'}
|
:Description.description_Utils::CompletingTextEdit {container=':splitter.Description_QGroupBox' name='description' type='Utils::CompletingTextEdit' visible='1'}
|
||||||
:Dialog.OK_QPushButton {text='OK' type='QPushButton' unnamed='1' visible='1' window=':Dialog_QmlJSEditor::Internal::ComponentNameDialog'}
|
:Dialog.OK_QPushButton {text='OK' type='QPushButton' unnamed='1' visible='1' window=':Dialog_QmlJSEditor::Internal::ComponentNameDialog'}
|
||||||
|
@@ -34,17 +34,13 @@ def __platformToBeRunToday__():
|
|||||||
# for all machines using the same IP-address like you.
|
# for all machines using the same IP-address like you.
|
||||||
skipPastingToPastebinCom = platform.system() not in __platformToBeRunToday__()
|
skipPastingToPastebinCom = platform.system() not in __platformToBeRunToday__()
|
||||||
|
|
||||||
NAME_KDE = "Paste.KDE.Org"
|
|
||||||
NAME_PBCOM = "Pastebin.Com"
|
NAME_PBCOM = "Pastebin.Com"
|
||||||
NAME_PCXYZ = "Pastecode.Xyz"
|
NAME_PCXYZ = "Pastecode.Xyz"
|
||||||
|
|
||||||
serverProblems = "Server side problems."
|
serverProblems = "Server side problems."
|
||||||
|
|
||||||
def invalidPasteId(protocol):
|
def invalidPasteId(protocol):
|
||||||
if protocol == NAME_KDE:
|
return -1
|
||||||
return None
|
|
||||||
else:
|
|
||||||
return -1
|
|
||||||
|
|
||||||
def closeHTTPStatusAndPasterDialog(protocol, pasterDialog):
|
def closeHTTPStatusAndPasterDialog(protocol, pasterDialog):
|
||||||
try:
|
try:
|
||||||
@@ -170,7 +166,7 @@ def main():
|
|||||||
startQC()
|
startQC()
|
||||||
if not startedWithoutPluginError():
|
if not startedWithoutPluginError():
|
||||||
return
|
return
|
||||||
protocolsToTest = [NAME_KDE, NAME_PBCOM, NAME_PCXYZ]
|
protocolsToTest = [NAME_PBCOM, NAME_PCXYZ]
|
||||||
sourceFile = os.path.join(os.getcwd(), "testdata", "main.cpp")
|
sourceFile = os.path.join(os.getcwd(), "testdata", "main.cpp")
|
||||||
# make sure General Messages is open
|
# make sure General Messages is open
|
||||||
openGeneralMessages()
|
openGeneralMessages()
|
||||||
@@ -179,10 +175,7 @@ def main():
|
|||||||
with TestSection(protocol):
|
with TestSection(protocol):
|
||||||
skippedPasting = True
|
skippedPasting = True
|
||||||
description = "Paste from 2017-05-11"
|
description = "Paste from 2017-05-11"
|
||||||
if protocol == NAME_KDE:
|
if skipPastingToPastebinCom and protocol == NAME_PBCOM:
|
||||||
pasteId = "pysjk6n2i"
|
|
||||||
pastedText = readFile(os.path.join(os.getcwd(), "testdata", "main-prepasted.cpp"))
|
|
||||||
elif skipPastingToPastebinCom and protocol == NAME_PBCOM:
|
|
||||||
pasteId = "8XHP0ZgH"
|
pasteId = "8XHP0ZgH"
|
||||||
pastedText = readFile(os.path.join(os.getcwd(), "testdata", "main-prepasted.cpp"))
|
pastedText = readFile(os.path.join(os.getcwd(), "testdata", "main-prepasted.cpp"))
|
||||||
else:
|
else:
|
||||||
@@ -219,7 +212,7 @@ def main():
|
|||||||
clickButton(waitForObject(":*Qt Creator.Clear_QToolButton"))
|
clickButton(waitForObject(":*Qt Creator.Clear_QToolButton"))
|
||||||
continue
|
continue
|
||||||
test.compare(filenameCombo.currentText, "%s: %s" % (protocol, pasteId), "Verify title of editor")
|
test.compare(filenameCombo.currentText, "%s: %s" % (protocol, pasteId), "Verify title of editor")
|
||||||
if protocol in (NAME_KDE, NAME_PBCOM) and pastedText.endswith("\n"):
|
if protocol == NAME_PBCOM and pastedText.endswith("\n"):
|
||||||
pastedText = pastedText[:-1]
|
pastedText = pastedText[:-1]
|
||||||
test.compare(editor.plainText, pastedText, "Verify that pasted and fetched texts are the same")
|
test.compare(editor.plainText, pastedText, "Verify that pasted and fetched texts are the same")
|
||||||
invokeMenuItem("File", "Close All")
|
invokeMenuItem("File", "Close All")
|
||||||
|
Reference in New Issue
Block a user