Merge remote-tracking branch 'origin/14.0' into qds/dev
Change-Id: I1c354102209ba0c3505e3e2745e64ce77cc22bb3
@@ -1,6 +1,6 @@
|
|||||||
set(IDE_VERSION "13.0.84") # The IDE version.
|
set(IDE_VERSION "14.0.0") # The IDE version.
|
||||||
set(IDE_VERSION_COMPAT "13.0.84") # The IDE Compatibility version.
|
set(IDE_VERSION_COMPAT "14.0.0") # The IDE Compatibility version.
|
||||||
set(IDE_VERSION_DISPLAY "14.0.0-rc1") # The IDE display version.
|
set(IDE_VERSION_DISPLAY "14.0.0") # The IDE display version.
|
||||||
set(IDE_COPYRIGHT_YEAR "2024") # The IDE current copyright year.
|
set(IDE_COPYRIGHT_YEAR "2024") # The IDE current copyright year.
|
||||||
|
|
||||||
set(IDE_SETTINGSVARIANT "QtProject") # The IDE settings variation.
|
set(IDE_SETTINGSVARIANT "QtProject") # The IDE settings variation.
|
||||||
|
24
dist/changelog/changes-14.0.0.md
vendored
@@ -17,6 +17,8 @@ General
|
|||||||
([Documentation](https://doc-snapshots.qt.io/qtcreator-extending/lua-extensions.html))
|
([Documentation](https://doc-snapshots.qt.io/qtcreator-extending/lua-extensions.html))
|
||||||
* Added a mode for managing extensions
|
* Added a mode for managing extensions
|
||||||
* Added `Clear` and `Save Contents` to context menus of all output views
|
* Added `Clear` and `Save Contents` to context menus of all output views
|
||||||
|
* Fixed the tab focus order in the search toolbar
|
||||||
|
([QTCREATORBUG-30791](https://bugreports.qt.io/browse/QTCREATORBUG-30791))
|
||||||
* Locator
|
* Locator
|
||||||
* Added the option to show results relative to project root
|
* Added the option to show results relative to project root
|
||||||
([QTCREATORBUG-29462](https://bugreports.qt.io/browse/QTCREATORBUG-29462))
|
([QTCREATORBUG-29462](https://bugreports.qt.io/browse/QTCREATORBUG-29462))
|
||||||
@@ -46,6 +48,14 @@ Editing
|
|||||||
([QTCREATORBUG-31116](https://bugreports.qt.io/browse/QTCREATORBUG-31116))
|
([QTCREATORBUG-31116](https://bugreports.qt.io/browse/QTCREATORBUG-31116))
|
||||||
* Fixed the unindenting with backspace when multiple cursors are active
|
* Fixed the unindenting with backspace when multiple cursors are active
|
||||||
([QTCREATORBUG-31158](https://bugreports.qt.io/browse/QTCREATORBUG-31158))
|
([QTCREATORBUG-31158](https://bugreports.qt.io/browse/QTCREATORBUG-31158))
|
||||||
|
* Fixed the `Save` shortcut after closing a document while the document's
|
||||||
|
drop-down menu is shown
|
||||||
|
([QTCREATORBUG-31205](https://bugreports.qt.io/browse/QTCREATORBUG-31205))
|
||||||
|
* Fixed the highlighting of matches for `Whole Words Only` searches
|
||||||
|
([QTCREATORBUG-31020](https://bugreports.qt.io/browse/QTCREATORBUG-31020))
|
||||||
|
* Fixed that the documents chooser did not close when releasing `Ctrl` in
|
||||||
|
some setups
|
||||||
|
([QTCREATORBUG-31228](https://bugreports.qt.io/browse/QTCREATORBUG-31228))
|
||||||
|
|
||||||
### C++
|
### C++
|
||||||
|
|
||||||
@@ -79,6 +89,9 @@ Editing
|
|||||||
([QTCREATORBUG-29943](https://bugreports.qt.io/browse/QTCREATORBUG-29943))
|
([QTCREATORBUG-29943](https://bugreports.qt.io/browse/QTCREATORBUG-29943))
|
||||||
* Fixed the handling of system headers
|
* Fixed the handling of system headers
|
||||||
([QTCREATORBUG-30474](https://bugreports.qt.io/browse/QTCREATORBUG-30474))
|
([QTCREATORBUG-30474](https://bugreports.qt.io/browse/QTCREATORBUG-30474))
|
||||||
|
* Fixed a warning when adding an empty session to the list of sessions with
|
||||||
|
a single Clangd instance
|
||||||
|
([QTCREATORBUG-31186](https://bugreports.qt.io/browse/QTCREATORBUG-31186))
|
||||||
* Built-in
|
* Built-in
|
||||||
* Added the `Enable indexing` option in `Preferences` > `C++` > `Code Model`
|
* Added the `Enable indexing` option in `Preferences` > `C++` > `Code Model`
|
||||||
to turn off the built-in indexer
|
to turn off the built-in indexer
|
||||||
@@ -101,6 +114,8 @@ Editing
|
|||||||
([Documentation](https://doc.qt.io/qtcreator/creator-quick-ui-forms.html))
|
([Documentation](https://doc.qt.io/qtcreator/creator-quick-ui-forms.html))
|
||||||
* Fixed that the color preview did not work on named colors
|
* Fixed that the color preview did not work on named colors
|
||||||
([QTCREATORBUG-30594](https://bugreports.qt.io/browse/QTCREATORBUG-30594))
|
([QTCREATORBUG-30594](https://bugreports.qt.io/browse/QTCREATORBUG-30594))
|
||||||
|
* Fixed the default path to `qmlformat` on Windows
|
||||||
|
([QTCREATORBUG-31257](https://bugreports.qt.io/browse/QTCREATORBUG-31257))
|
||||||
* Language Server
|
* Language Server
|
||||||
* Switched on by default for Qt 6.8 and later
|
* Switched on by default for Qt 6.8 and later
|
||||||
* Added an option for generating `qmlls.ini` files for CMake projects in
|
* Added an option for generating `qmlls.ini` files for CMake projects in
|
||||||
@@ -206,6 +221,8 @@ Projects
|
|||||||
([QTCREATORBUG-30836](https://bugreports.qt.io/browse/QTCREATORBUG-30836))
|
([QTCREATORBUG-30836](https://bugreports.qt.io/browse/QTCREATORBUG-30836))
|
||||||
* Added support for custom build types
|
* Added support for custom build types
|
||||||
([QTCREATORBUG-30014](https://bugreports.qt.io/browse/QTCREATORBUG-30014))
|
([QTCREATORBUG-30014](https://bugreports.qt.io/browse/QTCREATORBUG-30014))
|
||||||
|
* Fixed issues with cross-compilation setups
|
||||||
|
([QTCREATORBUG-31249](https://bugreports.qt.io/browse/QTCREATORBUG-31249))
|
||||||
|
|
||||||
([Documentation](https://doc-snapshots.qt.io/qtcreator-14.0/creator-build-settings-cmake-presets.html))
|
([Documentation](https://doc-snapshots.qt.io/qtcreator-14.0/creator-build-settings-cmake-presets.html))
|
||||||
|
|
||||||
@@ -317,6 +334,9 @@ Platforms
|
|||||||
* Improved the performance of the generic deployment method
|
* Improved the performance of the generic deployment method
|
||||||
* Fixed that the file size check that is performed before parsing C++ files
|
* Fixed that the file size check that is performed before parsing C++ files
|
||||||
could freeze Qt Creator until finished for remote projects
|
could freeze Qt Creator until finished for remote projects
|
||||||
|
* Fixed that the deployment of a directory deployed only its contents instead
|
||||||
|
of the directory itself
|
||||||
|
([QTCREATORBUG-31136](https://bugreports.qt.io/browse/QTCREATORBUG-31136))
|
||||||
|
|
||||||
### Qt Application Manager
|
### Qt Application Manager
|
||||||
|
|
||||||
@@ -333,8 +353,9 @@ Ahmad Samir
|
|||||||
Aleksei German
|
Aleksei German
|
||||||
Alessandro Portale
|
Alessandro Portale
|
||||||
Alexander Drozdov
|
Alexander Drozdov
|
||||||
|
Alexandre Laurent
|
||||||
Ali Kianian
|
Ali Kianian
|
||||||
Andre Hartmann
|
André Hartmann
|
||||||
André Pönitz
|
André Pönitz
|
||||||
Artem Sokolovskii
|
Artem Sokolovskii
|
||||||
Assam Boudjelthia
|
Assam Boudjelthia
|
||||||
@@ -364,6 +385,7 @@ Mats Honkamaa
|
|||||||
Michael Weghorn
|
Michael Weghorn
|
||||||
Miikka Heikkinen
|
Miikka Heikkinen
|
||||||
Orgad Shaneh
|
Orgad Shaneh
|
||||||
|
Pino Toscano
|
||||||
Pranta Dastider
|
Pranta Dastider
|
||||||
Ralf Habacker
|
Ralf Habacker
|
||||||
Robert Löhning
|
Robert Löhning
|
||||||
|
@@ -30,16 +30,17 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="indexboxcont indexboxbar">
|
<div class="indexboxcont indexboxbar">
|
||||||
<ul>
|
<ul>
|
||||||
<li><a href="creator-tutorial-adding-internal-libraries-to-projects.html">Adding an Internal Library to a qmake Project</a></li>
|
<li><a href="creator-build-example-application.html">Build and run</a></li>
|
||||||
<li><a href="creator-build-example-application.html">Building and Running an Example</a></li>
|
<li><a href="creator-debugging-example.html">C++ debugging</a></li>
|
||||||
<li><a href="qtcreator-accelbubble-example.html">Creating a Mobile Application</a></li>
|
<li><a href="qtcreator-accelbubble-example.html">Mobile application</a></li>
|
||||||
<li><a href="qtcreator-transitions-example.html">Creating a Qt Quick Application</a></li>
|
<li><a href="creator-tutorial-python-application-qt-quick.html">Qt Quick and Python</a></li>
|
||||||
<li><a href="creator-writing-program.html">Creating a Qt Widget Based Application</a></li>
|
<li><a href="qtcreator-transitions-example.html">Qt Quick application</a></li>
|
||||||
<li><a href="creator-tutorial-python-application-qt-quick.html">Creating a Qt for Python Application with Qt Quick</a></li>
|
<li><a href="creator-qml-debugging-example.html">Qt Quick debugging</a></li>
|
||||||
<li><a href="creator-tutorial-python-application-qt-widgets.html">Creating a Qt for Python Application with Qt Widgets</a></li>
|
<li><a href="creator-tutorial-python-application-qt-widgets.html">Qt Widgets and Python</a></li>
|
||||||
<li><a href="creator-debugging-example.html">Debugging a C++ Application</a></li>
|
<li><a href="creator-writing-program.html">Qt Widgets application</a></li>
|
||||||
<li><a href="creator-qml-debugging-example.html">Debugging a Qt Quick Application</a></li>
|
<li><a href="creator-tutorial-python-application-qt-widgets-ui.html">Qt Widgets UI and Python</a></li>
|
||||||
<li><a href="creator-tutorials.html">See All</a></li>
|
<li><a href="creator-tutorial-adding-internal-libraries-to-projects.html">Use internal libraries with qmake</a></li>
|
||||||
|
<li><a href="creator-tutorials.html">Tutorials</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -61,7 +62,7 @@
|
|||||||
<li><a href="creator-how-tos.html#test">Test</a></li>
|
<li><a href="creator-how-tos.html#test">Test</a></li>
|
||||||
<li><a href="creator-how-tos.html#use-qt-creator">Use Qt Creator</a></li>
|
<li><a href="creator-how-tos.html#use-qt-creator">Use Qt Creator</a></li>
|
||||||
<li><a href="creator-how-tos.html#use-the-ui">Use the UI</a></li>
|
<li><a href="creator-how-tos.html#use-the-ui">Use the UI</a></li>
|
||||||
<li><a href="creator-how-tos.html">See All</a></li>
|
<li><a href="creator-how-tos.html">How To</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div class="sectionlist normallist">
|
<div class="sectionlist normallist">
|
||||||
@@ -76,6 +77,7 @@
|
|||||||
<li><a href="creator-glossary.html">Glossary</a></li>
|
<li><a href="creator-glossary.html">Glossary</a></li>
|
||||||
<li><a href="creator-keyboard-shortcuts.html">Keyboard Shortcuts</a></li>
|
<li><a href="creator-keyboard-shortcuts.html">Keyboard Shortcuts</a></li>
|
||||||
<li><a href="creator-known-issues.html">Known Issues</a></li>
|
<li><a href="creator-known-issues.html">Known Issues</a></li>
|
||||||
|
<li><a href="creator-sdk-tool.html">SDK Tool</a></li>
|
||||||
<li><a href="technical-support.html">Technical Support</a></li>
|
<li><a href="technical-support.html">Technical Support</a></li>
|
||||||
<li><a href="creator-version-control.html">Version Control Systems</a></li>
|
<li><a href="creator-version-control.html">Version Control Systems</a></li>
|
||||||
<li><a href="creator-reference.html#analyzers">Analyzers</a></li>
|
<li><a href="creator-reference.html#analyzers">Analyzers</a></li>
|
||||||
@@ -87,6 +89,6 @@
|
|||||||
<li><a href="creator-reference.html#preferences">Preferences</a></li>
|
<li><a href="creator-reference.html#preferences">Preferences</a></li>
|
||||||
<li><a href="creator-reference.html#ui-design">UI Design</a></li>
|
<li><a href="creator-reference.html#ui-design">UI Design</a></li>
|
||||||
<li><a href="creator-reference.html#views">Views</a></li>
|
<li><a href="creator-reference.html#views">Views</a></li>
|
||||||
<li><a href="creator-reference.html">See All</a></li>
|
<li><a href="creator-reference.html">Reference</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
Before Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 8.2 KiB |
Before Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 34 KiB |
BIN
doc/qtcreator/images/qtcreator-ctf-visualizer-timeline.webp
Normal file
After Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 11 KiB |
BIN
doc/qtcreator/images/qtcreator-new-file-qrc.webp
Normal file
After Width: | Height: | Size: 9.5 KiB |
BIN
doc/qtcreator/images/qtcreator-new-file-qrc1.webp
Normal file
After Width: | Height: | Size: 5.0 KiB |
BIN
doc/qtcreator/images/qtcreator-new-file-qrc2.webp
Normal file
After Width: | Height: | Size: 6.0 KiB |
Before Width: | Height: | Size: 8.2 KiB |
BIN
doc/qtcreator/images/qtcreator-new-project-build-system.webp
Normal file
After Width: | Height: | Size: 5.2 KiB |
BIN
doc/qtcreator/images/qtcreator-new-project-class-info.webp
Normal file
After Width: | Height: | Size: 7.0 KiB |
BIN
doc/qtcreator/images/qtcreator-new-project-kit-selection.webp
Normal file
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 6.7 KiB |
After Width: | Height: | Size: 6.0 KiB |
After Width: | Height: | Size: 5.0 KiB |
After Width: | Height: | Size: 2.2 KiB |
After Width: | Height: | Size: 7.3 KiB |
BIN
doc/qtcreator/images/qtcreator-new-project-python-window-ui.webp
Normal file
After Width: | Height: | Size: 6.5 KiB |
Before Width: | Height: | Size: 5.7 KiB After Width: | Height: | Size: 8.7 KiB |
Before Width: | Height: | Size: 17 KiB |
BIN
doc/qtcreator/images/qtcreator-new-project-qt-widgets.webp
Normal file
After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 13 KiB |
BIN
doc/qtcreator/images/qtcreator-new-project-summary.webp
Normal file
After Width: | Height: | Size: 7.4 KiB |
BIN
doc/qtcreator/images/qtcreator-new-project-translation-file.webp
Normal file
After Width: | Height: | Size: 6.5 KiB |
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 4.9 KiB |
Before Width: | Height: | Size: 6.0 KiB After Width: | Height: | Size: 6.0 KiB |
Before Width: | Height: | Size: 5.8 KiB After Width: | Height: | Size: 6.0 KiB |
Before Width: | Height: | Size: 5.9 KiB After Width: | Height: | Size: 5.9 KiB |
Before Width: | Height: | Size: 5.4 KiB |
Before Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 5.5 KiB After Width: | Height: | Size: 6.5 KiB |
Before Width: | Height: | Size: 6.4 KiB After Width: | Height: | Size: 6.0 KiB |
BIN
doc/qtcreator/images/qtcreator-project-settings-copilot.webp
Normal file
After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 9.4 KiB |
After Width: | Height: | Size: 6.8 KiB |
@@ -179,11 +179,10 @@
|
|||||||
\li Go to \uicontrol Projects > \uicontrol {Project Settings} >
|
\li Go to \uicontrol Projects > \uicontrol {Project Settings} >
|
||||||
\uicontrol Axivion.
|
\uicontrol Axivion.
|
||||||
\image qtcreator-preferences-axivion-project.webp {Axivion settings in Project Settings}
|
\image qtcreator-preferences-axivion-project.webp {Axivion settings in Project Settings}
|
||||||
\li From \uicontrol {Dashboard} select one of the configured Axivion
|
\li Select the Axivion dashboard server to fetch projects from.
|
||||||
dashboard configurations.
|
\li Select \uicontrol {Fetch Projects} to list projects from the server.
|
||||||
\li Select \uicontrol {Fetch Projects} to list projects from Axivion.
|
\li In \uicontrol {Dashboard projects} select a project.
|
||||||
\li Select a project, and then select \uicontrol {Link Project} to link
|
\li Select \uicontrol {Link Project} to link to the project.
|
||||||
to it.
|
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
To unlink a project, select \uicontrol {Unlink Project}.
|
To unlink a project, select \uicontrol {Unlink Project}.
|
||||||
|
@@ -60,32 +60,32 @@
|
|||||||
The \uicontrol Timeline view displays a graphical representation of trace
|
The \uicontrol Timeline view displays a graphical representation of trace
|
||||||
events and a condensed view of all recorded events.
|
events and a condensed view of all recorded events.
|
||||||
|
|
||||||
\image qtcreator-ctf-visualizer-timeline.png "Chrome Trace Format Visualizer"
|
\image qtcreator-ctf-visualizer-timeline.webp {Timeline view}
|
||||||
|
|
||||||
Each category in the timeline describes a thread in the application. Move
|
Each category in the timeline describes a thread in the application. Move
|
||||||
the cursor on an event (1) on a row to view its duration and event category.
|
the cursor on an event (5) on a row to view its duration and event category.
|
||||||
To display the information only when an event is selected, disable the
|
To display the information only when an event is selected, disable the
|
||||||
\uicontrol {View Event Information on Mouseover} button (2).
|
\uicontrol {View Event Information on Mouseover} button (4).
|
||||||
|
|
||||||
The outline (3) summarizes the period for which data was collected. Drag
|
The outline (10) summarizes the period for which data was collected. Drag
|
||||||
the zoom range (4) or click the outline to move on the outline. To move
|
the zoom range (8) or click the outline to move on the outline. To move
|
||||||
between events, select the \uicontrol {Jump to Previous Event} and
|
between events, select the \uicontrol {Jump to Previous Event} and
|
||||||
\uicontrol {Jump to Next Event} buttons (5).
|
\uicontrol {Jump to Next Event} buttons (1).
|
||||||
|
|
||||||
Select the \uicontrol {Show Zoom Slider} button (6) to open a slider that
|
Select the \uicontrol {Show Zoom Slider} button (2) to open a slider that
|
||||||
you can use to set the zoom level. You can also drag the zoom handles (7).
|
you can use to set the zoom level. You can also drag the zoom handles (9).
|
||||||
To reset the default zoom level, right-click the timeline to open the
|
To reset the default zoom level, right-click the timeline to open the
|
||||||
context menu, and select \uicontrol {Reset Zoom}.
|
context menu, and select \uicontrol {Reset Zoom}.
|
||||||
|
|
||||||
Select the \inlineimage icons/filtericon.png
|
Select the \inlineimage icons/filtericon.png
|
||||||
(\uicontrol {Restrict to Threads}) button (10) to select the threads to
|
(\uicontrol {Restrict to Threads}) button (6) to select the threads to
|
||||||
show.
|
show.
|
||||||
|
|
||||||
\section2 Selecting Event Ranges
|
\section2 Selecting Event Ranges
|
||||||
|
|
||||||
You can select an event range (8) to view the time it represents or to zoom
|
You can select an event range (7) to view the time it represents or to zoom
|
||||||
into a specific region of the trace. Select the \uicontrol {Select Range}
|
into a specific region of the trace. Select the \uicontrol {Select Range}
|
||||||
button (9) to activate the selection tool. Then click in the timeline to
|
button (3) to activate the selection tool. Then click in the timeline to
|
||||||
specify the beginning of the event range. Drag the selection handle to
|
specify the beginning of the event range. Drag the selection handle to
|
||||||
define the end of the range.
|
define the end of the range.
|
||||||
|
|
||||||
|
@@ -227,7 +227,7 @@
|
|||||||
|
|
||||||
If you use CMake as the build system, you must specify the Android package
|
If you use CMake as the build system, you must specify the Android package
|
||||||
source directory, \c QT_ANDROID_PACKAGE_SOURCE_DIR, in the CMakeList.txt
|
source directory, \c QT_ANDROID_PACKAGE_SOURCE_DIR, in the CMakeList.txt
|
||||||
file, as instructed in the \l{Locking Device Orientation}
|
file, as instructed in the \l{Lock device orientation}
|
||||||
{mobile device tutorial}.
|
{mobile device tutorial}.
|
||||||
|
|
||||||
To use \QC to create an Android manifest file and to open it in the Android
|
To use \QC to create an Android manifest file and to open it in the Android
|
||||||
|
@@ -126,6 +126,9 @@
|
|||||||
To speed up the process on Windows, specify the \c CMAKE_C_COMPILER and
|
To speed up the process on Windows, specify the \c CMAKE_C_COMPILER and
|
||||||
\c CMAKE_CXX_COMPILER in the \c cacheVariables section.
|
\c CMAKE_CXX_COMPILER in the \c cacheVariables section.
|
||||||
|
|
||||||
|
For possible values of some of the \c debugger parameters, see
|
||||||
|
\l{Adding Debuggers}.
|
||||||
|
|
||||||
\section1 Ninja Generator Example
|
\section1 Ninja Generator Example
|
||||||
|
|
||||||
The following configure and build presets set Ninja Multi-Config as the
|
The following configure and build presets set Ninja Multi-Config as the
|
||||||
@@ -297,5 +300,5 @@
|
|||||||
}
|
}
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
\sa {CMake Build Configuration}, {CMake}
|
\sa {CMake Build Configuration}, {CMake}, {SDK Tool}
|
||||||
*/
|
*/
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2018 The Qt Company Ltd.
|
// Copyright (C) 2024 The Qt Company Ltd.
|
||||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
|
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
|
||||||
|
|
||||||
// **********************************************************************
|
// **********************************************************************
|
||||||
@@ -14,11 +14,12 @@
|
|||||||
|
|
||||||
\ingroup creator-tutorials
|
\ingroup creator-tutorials
|
||||||
|
|
||||||
\title Debugging a C++ Application
|
\keyword {Debugging a C++ Application}
|
||||||
|
\title Tutorial: C++ debugging
|
||||||
|
|
||||||
\brief How to debug a C++ application.
|
\brief How to debug a C++ application.
|
||||||
|
|
||||||
This tutorial uses the \l{Creating a Qt Widget Based Application}{TextFinder}
|
This tutorial uses the \l{Tutorial: Qt Widgets application}{TextFinder}
|
||||||
example to illustrate how to debug Qt C++ applications in the
|
example to illustrate how to debug Qt C++ applications in the
|
||||||
\uicontrol Debug mode.
|
\uicontrol Debug mode.
|
||||||
|
|
||||||
@@ -95,5 +96,5 @@
|
|||||||
(\uicontrol {Step Into}), and \inlineimage icons/debugger_stepout_small.png
|
(\uicontrol {Step Into}), and \inlineimage icons/debugger_stepout_small.png
|
||||||
(\uicontrol {Step Out}).
|
(\uicontrol {Step Out}).
|
||||||
|
|
||||||
\sa {Creating a Qt Widget Based Application}, {Debugging}, {Debuggers}, {Debugger}
|
\sa {Tutorial: Qt Widgets application}, {Debugging}, {Debuggers}, {Debugger}
|
||||||
*/
|
*/
|
||||||
|
@@ -140,7 +140,7 @@
|
|||||||
|
|
||||||
\l{https://docs.python.org/3/library/pdb.html}{PDB} is a source code debugger
|
\l{https://docs.python.org/3/library/pdb.html}{PDB} is a source code debugger
|
||||||
for Python applications. You can use it to debug projects that have a
|
for Python applications. You can use it to debug projects that have a
|
||||||
\l {Creating a Qt for Python Application with Qt Widgets}{.pyproject}
|
\l {Tutorial: Qt Widgets and Python}{.pyproject}
|
||||||
configuration file.
|
configuration file.
|
||||||
|
|
||||||
Install Python and set the interpreter to use in \uicontrol Projects
|
Install Python and set the interpreter to use in \uicontrol Projects
|
||||||
|
@@ -207,9 +207,9 @@
|
|||||||
expressions.
|
expressions.
|
||||||
|
|
||||||
For more information, see \l{Debugging Qt Quick Projects} and
|
For more information, see \l{Debugging Qt Quick Projects} and
|
||||||
\l{Debugging a Qt Quick Application}.
|
\l{Tutorial: Qt Quick debugging}.
|
||||||
|
|
||||||
\sa {Debugging a C++ Application}, {Debug}{How To: Debug}, {Debuggers},
|
\sa {Tutorial: C++ debugging}, {Debug}{How To: Debug}, {Debuggers},
|
||||||
{Debugger}, {Kits}
|
{Debugger}, {Kits}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -263,7 +263,7 @@
|
|||||||
|
|
||||||
\section1 Debug Python projects
|
\section1 Debug Python projects
|
||||||
|
|
||||||
For \l {Creating a Qt for Python Application with Qt Widgets}{Python} projects,
|
For \l {Tutorial: Qt Widgets and Python}{Python} projects,
|
||||||
start debugging the \c main.py file. If you encounter problems, check the
|
start debugging the \c main.py file. If you encounter problems, check the
|
||||||
active build target in the \l{Build for many platforms}{kit selector}.
|
active build target in the \l{Build for many platforms}{kit selector}.
|
||||||
|
|
||||||
|
@@ -19,7 +19,8 @@
|
|||||||
|
|
||||||
\ingroup creator-tutorials
|
\ingroup creator-tutorials
|
||||||
|
|
||||||
\title Debugging a Qt Quick Application
|
\keyword {Debugging a Qt Quick Application}
|
||||||
|
\title Tutorial: Qt Quick debugging
|
||||||
|
|
||||||
\brief How to debug a Qt Quick application.
|
\brief How to debug a Qt Quick application.
|
||||||
|
|
||||||
|
@@ -26,7 +26,7 @@
|
|||||||
JavaScript variables, as well as change their values temporarily at runtime.
|
JavaScript variables, as well as change their values temporarily at runtime.
|
||||||
|
|
||||||
For an example of how to debug Qt Quick Projects, see
|
For an example of how to debug Qt Quick Projects, see
|
||||||
\l{Debugging a Qt Quick Application}.
|
\l{Tutorial: Qt Quick debugging}.
|
||||||
|
|
||||||
\if defined(qtdesignstudio)
|
\if defined(qtdesignstudio)
|
||||||
\note In this section, you are using advanced menu items. These are not
|
\note In this section, you are using advanced menu items. These are not
|
||||||
|
@@ -98,14 +98,24 @@
|
|||||||
You can turn the Copilot suggestions on and off either globally for all
|
You can turn the Copilot suggestions on and off either globally for all
|
||||||
projects or at project level for a particular project.
|
projects or at project level for a particular project.
|
||||||
|
|
||||||
|
\section2 Toggle Copilot suggestions
|
||||||
|
|
||||||
To turn Copilot suggestions on or off globally, select
|
To turn Copilot suggestions on or off globally, select
|
||||||
\inlineimage icons/copilot.png (\uicontrol {Toggle Copilot}). This also
|
\inlineimage icons/copilot.png (\uicontrol {Toggle Copilot}). This also
|
||||||
sets the value of \uicontrol {Enable Copilot} in \preferences >
|
sets the value of \uicontrol {Enable Copilot} in \preferences >
|
||||||
\uicontrol Copilot accordingly.
|
\uicontrol Copilot accordingly.
|
||||||
|
|
||||||
To turn Copilot suggestions on or off for a particular project,
|
\section2 Turn suggestions on or off for a project
|
||||||
go to \uicontrol Projects > \uicontrol {Project Settings} >
|
|
||||||
\uicontrol Copilot and then select or clear \uicontrol {Enable Copilot}.
|
To turn Copilot suggestions on or off for a particular project:
|
||||||
|
|
||||||
|
\list 1
|
||||||
|
\li Go to \uicontrol Projects > \uicontrol {Project Settings} >
|
||||||
|
\uicontrol Copilot.
|
||||||
|
\image qtcreator-project-settings-copilot.webp {Copilot project settings}
|
||||||
|
\li Clear \uicontrol {Use global settings}.
|
||||||
|
\li Select or clear \uicontrol {Enable Copilot}.
|
||||||
|
\endlist
|
||||||
|
|
||||||
\sa {Enable and disable plugins}, {Edit Mode}
|
\sa {Enable and disable plugins}, {Edit Mode}
|
||||||
*/
|
*/
|
||||||
|
@@ -58,7 +58,7 @@
|
|||||||
and \c <cur> to access the parameter and current value. Use \c <type> to
|
and \c <cur> to access the parameter and current value. Use \c <type> to
|
||||||
access the type and \c <T> for the template parameter.
|
access the type and \c <T> for the template parameter.
|
||||||
|
|
||||||
\image qtcreator-refactoring-options-templates.png {Settings for handling custom parameter types}
|
\image qtcreator-refactoring-options-templates.webp {Settings for handling custom parameter types}
|
||||||
|
|
||||||
Usually, arguments are passed by using a \c const reference. To pass
|
Usually, arguments are passed by using a \c const reference. To pass
|
||||||
arguments of a particular type as values, list them in the
|
arguments of a particular type as values, list them in the
|
||||||
|
@@ -39,10 +39,16 @@
|
|||||||
\uicontrol Help mode, go to \preferences > \uicontrol Help.
|
\uicontrol Help mode, go to \preferences > \uicontrol Help.
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
|
\if defined(qtdesignstudio)
|
||||||
|
The following image shows the context sensitive help in the \l Code view.
|
||||||
|
|
||||||
|
\image qds-help-in-code-view.webp {Context-sensitive help in the Code view.}
|
||||||
|
\else
|
||||||
The following image shows the context sensitive help in the \uicontrol Edit
|
The following image shows the context sensitive help in the \uicontrol Edit
|
||||||
mode.
|
mode.
|
||||||
|
|
||||||
\image qtcreator-context-sensitive-help.webp {Context-sensitive help in Edit mode}
|
\image qtcreator-context-sensitive-help.webp {Context-sensitive help in Edit mode}
|
||||||
|
\endif
|
||||||
|
|
||||||
\section1 Change the font
|
\section1 Change the font
|
||||||
|
|
||||||
@@ -88,7 +94,13 @@
|
|||||||
To use a keyboard shortcut for viewing help tooltips, select
|
To use a keyboard shortcut for viewing help tooltips, select
|
||||||
\uicontrol {Show help tooltips using keyboard shortcut (Alt)}.
|
\uicontrol {Show help tooltips using keyboard shortcut (Alt)}.
|
||||||
|
|
||||||
|
\if defined(qtdesignstudio)
|
||||||
|
\section1 See Also
|
||||||
|
|
||||||
|
\generatelist creator-how-to-get-help
|
||||||
|
\else
|
||||||
\sa {Read Documentation}{How To: Read Documentation}
|
\sa {Read Documentation}{How To: Read Documentation}
|
||||||
|
\endif
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
@@ -140,7 +152,9 @@
|
|||||||
|
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
|
\if defined(qtcreator)
|
||||||
\sa {Read Documentation}{How To: Read Documentation}
|
\sa {Read Documentation}{How To: Read Documentation}
|
||||||
|
\endif
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
@@ -180,7 +194,9 @@
|
|||||||
\uicontrol General and select \uicontrol {Import Bookmarks} or
|
\uicontrol General and select \uicontrol {Import Bookmarks} or
|
||||||
\uicontrol {Export Bookmarks}.
|
\uicontrol {Export Bookmarks}.
|
||||||
|
|
||||||
|
\if defined(qtcreator)
|
||||||
\sa {Read Documentation}{How To: Read Documentation}
|
\sa {Read Documentation}{How To: Read Documentation}
|
||||||
|
\endif
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
@@ -236,7 +252,9 @@
|
|||||||
punctuation, such as domain names, use the asterisk as a wild card. For
|
punctuation, such as domain names, use the asterisk as a wild card. For
|
||||||
example, to find \c {Pastebin.Com}, enter the search term \c {Pastebin*}.
|
example, to find \c {Pastebin.Com}, enter the search term \c {Pastebin*}.
|
||||||
|
|
||||||
|
\if defined(qtcreator)
|
||||||
\sa {Read Documentation}{How To: Read Documentation}
|
\sa {Read Documentation}{How To: Read Documentation}
|
||||||
|
\endif
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
@@ -268,7 +286,9 @@
|
|||||||
|
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
|
\if defined(qtcreator)
|
||||||
\sa {Read Documentation}{How To: Read Documentation}
|
\sa {Read Documentation}{How To: Read Documentation}
|
||||||
|
\endif
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
@@ -287,7 +307,11 @@
|
|||||||
code editor when you press \key F1. If there is not enough vertical
|
code editor when you press \key F1. If there is not enough vertical
|
||||||
space, the help opens in the full-screen help mode.
|
space, the help opens in the full-screen help mode.
|
||||||
|
|
||||||
|
\if defined(qtdesignstudio)
|
||||||
|
\image qds-help-in-code-view.webp {Context-sensitive help in the Code view.}
|
||||||
|
\else
|
||||||
\image qtcreator-context-sensitive-help.webp {Context-sensitive help in Edit mode}
|
\image qtcreator-context-sensitive-help.webp {Context-sensitive help in Edit mode}
|
||||||
|
\endif
|
||||||
|
|
||||||
To specify that the help always opens in full-screen mode or in an external
|
To specify that the help always opens in full-screen mode or in an external
|
||||||
window, go to \preferences > \uicontrol Help > \uicontrol General.
|
window, go to \preferences > \uicontrol Help > \uicontrol General.
|
||||||
@@ -300,7 +324,9 @@
|
|||||||
|
|
||||||
To change this setting in a help view, select \inlineimage icons/linkicon.png.
|
To change this setting in a help view, select \inlineimage icons/linkicon.png.
|
||||||
|
|
||||||
|
\if defined(qtcreator)
|
||||||
\sa {Read Documentation}{How To: Read Documentation}
|
\sa {Read Documentation}{How To: Read Documentation}
|
||||||
|
\endif
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
@@ -335,7 +361,9 @@
|
|||||||
home page.
|
home page.
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
|
\if defined(qtcreator)
|
||||||
\sa {Read Documentation}{How To: Read Documentation}
|
\sa {Read Documentation}{How To: Read Documentation}
|
||||||
|
\endif
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
@@ -401,5 +429,7 @@
|
|||||||
|
|
||||||
To remove the selected filter, select \inlineimage icons/minus.png.
|
To remove the selected filter, select \inlineimage icons/minus.png.
|
||||||
|
|
||||||
|
\if defined(qtcreator)
|
||||||
\sa {Read Documentation}{How To: Read Documentation}
|
\sa {Read Documentation}{How To: Read Documentation}
|
||||||
|
\endif
|
||||||
*/
|
*/
|
||||||
|
@@ -39,18 +39,18 @@
|
|||||||
\li \inlineimage icons/tutorials.png
|
\li \inlineimage icons/tutorials.png
|
||||||
\li \inlineimage icons/api-reference.png
|
\li \inlineimage icons/api-reference.png
|
||||||
\row
|
\row
|
||||||
\li \b {\l{Building and Running an Example}}
|
\li \b {\l{Tutorial: Build and run}{Building and Running an Example}}
|
||||||
|
|
||||||
To check that \l{https://www.qt.io/download-qt-installer}
|
To check that \l{https://www.qt.io/download-qt-installer}
|
||||||
{\QOI} created \l{Kits}
|
{\QOI} created \l{Kits}
|
||||||
{build and run kits}, open an example application and run it.
|
{build and run kits}, open an example application and run it.
|
||||||
If you have not done so before, go to
|
If you have not done so before, go to
|
||||||
\l{Building and Running an Example}.
|
\l{Tutorial: Build and run}.
|
||||||
\li \b {\l{Tutorials}}
|
\li \b {\l{Tutorials}}
|
||||||
|
|
||||||
Now you are ready to start developing your own applications.
|
Now you are ready to start developing your own applications.
|
||||||
Pick a tutorial to follow in \l{Tutorials}. To start developing
|
Pick a tutorial to follow in \l{Tutorials}. To start developing
|
||||||
for mobile devices, select \l{Creating a Mobile Application}.
|
for mobile devices, select \l{Tutorial: Mobile application}.
|
||||||
\li \b{\l {Qt Documentation}}
|
\li \b{\l {Qt Documentation}}
|
||||||
|
|
||||||
For more examples, as well as the details about using Qt tools
|
For more examples, as well as the details about using Qt tools
|
||||||
|
@@ -114,6 +114,8 @@
|
|||||||
|
|
||||||
\section2 Debugger
|
\section2 Debugger
|
||||||
|
|
||||||
|
Preferences for debugging.
|
||||||
|
|
||||||
\annotatedlist creator-reference-preferences-debugger
|
\annotatedlist creator-reference-preferences-debugger
|
||||||
|
|
||||||
\section2 Kits
|
\section2 Kits
|
||||||
|
@@ -150,7 +150,7 @@
|
|||||||
\list 1
|
\list 1
|
||||||
\li Select \uicontrol File > \uicontrol {New File} > \uicontrol {Qt} >
|
\li Select \uicontrol File > \uicontrol {New File} > \uicontrol {Qt} >
|
||||||
\uicontrol {Qt Resource File} > \uicontrol Choose.
|
\uicontrol {Qt Resource File} > \uicontrol Choose.
|
||||||
\image qtcreator-add-resource-wizard.png {New File dialog}
|
\image qtcreator-new-file-qrc.webp {New File dialog}
|
||||||
\li Follow the instructions of the wizard to create a resource
|
\li Follow the instructions of the wizard to create a resource
|
||||||
collection file (.qrc).
|
collection file (.qrc).
|
||||||
\li Open the resource file in the resource editor.
|
\li Open the resource file in the resource editor.
|
||||||
|
@@ -6,6 +6,7 @@
|
|||||||
\previouspage creator-how-tos.html
|
\previouspage creator-how-tos.html
|
||||||
|
|
||||||
\ingroup creator-how-to-projects-create
|
\ingroup creator-how-to-projects-create
|
||||||
|
\ingroup creator-how-to-projects-files
|
||||||
|
|
||||||
\title Add wizards
|
\title Add wizards
|
||||||
|
|
||||||
|
@@ -14,7 +14,8 @@
|
|||||||
|
|
||||||
\ingroup creator-tutorials
|
\ingroup creator-tutorials
|
||||||
|
|
||||||
\title Building and Running an Example
|
\keyword {Building and Running an Example}
|
||||||
|
\title Tutorial: Build and run
|
||||||
|
|
||||||
\brief How to build and run a Qt example.
|
\brief How to build and run a Qt example.
|
||||||
|
|
||||||
|
@@ -52,7 +52,7 @@
|
|||||||
which plugins you have installed. If you do not get to choose,
|
which plugins you have installed. If you do not get to choose,
|
||||||
the project usually uses CMake as the build system.
|
the project usually uses CMake as the build system.
|
||||||
|
|
||||||
\image qtcreator-new-project-build-system-qt-gui.png {Define Build System dialog}
|
\image qtcreator-new-project-build-system.webp {Define Build System dialog}
|
||||||
|
|
||||||
You can use wizards also to create plain C or C++ projects that use
|
You can use wizards also to create plain C or C++ projects that use
|
||||||
qmake, Qbs, or CMake, but do not use the Qt library.
|
qmake, Qbs, or CMake, but do not use the Qt library.
|
||||||
|
@@ -52,13 +52,13 @@
|
|||||||
translations in the .json file using the following syntax:
|
translations in the .json file using the following syntax:
|
||||||
|
|
||||||
\code
|
\code
|
||||||
"trDisplayName": { "C": "default", "en_US": "english", "de_DE": "deutsch" }
|
"trDisplayName": { "C": "default", "en": "english", "de": "deutsch" }
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
For example:
|
For example:
|
||||||
|
|
||||||
\code
|
\code
|
||||||
"trDisplayName": { "C": "Project Location", "en_US": "Project Location", "de_DE": "Projekt Verzeichnis" }
|
"trDisplayName": { "C": "Project Location", "en": "Project Location", "de": "Projektverzeichnis" }
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
\section1 Creating Wizards
|
\section1 Creating Wizards
|
||||||
|
@@ -91,7 +91,7 @@
|
|||||||
For more information about the project file settings, see
|
For more information about the project file settings, see
|
||||||
\l{Declaring Other Libraries}{qmake Manual: Declaring Other Libraries}.
|
\l{Declaring Other Libraries}{qmake Manual: Declaring Other Libraries}.
|
||||||
|
|
||||||
\sa {Using an Internal Library in a qmake Project}{Tutorial: Using an Internal Library in a qmake Project},
|
\sa {Tutorial: Use internal libraries with qmake},
|
||||||
{Add subprojects to projects}, {Add libraries to CMake projects},
|
{Add subprojects to projects}, {Add libraries to CMake projects},
|
||||||
{Use project wizards}, {Creating Projects}
|
{Use project wizards}, {Creating Projects}
|
||||||
*/
|
*/
|
||||||
@@ -103,7 +103,7 @@
|
|||||||
|
|
||||||
\ingroup creator-tutorials
|
\ingroup creator-tutorials
|
||||||
|
|
||||||
\title Using an Internal Library in a qmake Project
|
\title Tutorial: Use internal libraries with qmake
|
||||||
|
|
||||||
\brief How to create your own library and link your application against it
|
\brief How to create your own library and link your application against it
|
||||||
when using qmake as the build system.
|
when using qmake as the build system.
|
||||||
@@ -114,7 +114,7 @@
|
|||||||
\note This tutorial only applies when you select qmake as the build
|
\note This tutorial only applies when you select qmake as the build
|
||||||
system for the subdirs project.
|
system for the subdirs project.
|
||||||
|
|
||||||
\section1 Creating a shared library
|
\section1 Create a shared library
|
||||||
|
|
||||||
To create a shared library:
|
To create a shared library:
|
||||||
|
|
||||||
@@ -154,7 +154,7 @@
|
|||||||
list, select a subdirs project. For example, \e MyApplication.
|
list, select a subdirs project. For example, \e MyApplication.
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
\section1 Linking an application to the library
|
\section1 Link an application to the library
|
||||||
|
|
||||||
To link a project to the shared library:
|
To link a project to the shared library:
|
||||||
|
|
||||||
|
@@ -59,7 +59,7 @@
|
|||||||
|
|
||||||
To change the values of environment variables for the build environment,
|
To change the values of environment variables for the build environment,
|
||||||
select the variable and then select \uicontrol Edit. Enter the new value
|
select the variable and then select \uicontrol Edit. Enter the new value
|
||||||
in the editor on the righ side.
|
in the editor on the right side.
|
||||||
|
|
||||||
To add new variables, select \uicontrol {Add}.
|
To add new variables, select \uicontrol {Add}.
|
||||||
|
|
||||||
|
@@ -85,7 +85,7 @@
|
|||||||
\li \l{Specify clangd settings}{Clangd}
|
\li \l{Specify clangd settings}{Clangd}
|
||||||
\li \l{Specify Clang tools settings}{Clang Tools}
|
\li \l{Specify Clang tools settings}{Clang Tools}
|
||||||
\li \l{Override CMake settings for a project}{CMake}
|
\li \l{Override CMake settings for a project}{CMake}
|
||||||
\li \l{Set Copilot preferences}{Copilot}
|
\li \l{Turn suggestions on or off for a project}{Copilot}
|
||||||
\li \l{Configure C++ code model}{C++ Code Model}
|
\li \l{Configure C++ code model}{C++ Code Model}
|
||||||
\li \l{Specify code style}{C++ Code Style}
|
\li \l{Specify code style}{C++ Code Style}
|
||||||
\li \l{Set C++ file naming preferences}{C++ File Naming}
|
\li \l{Set C++ file naming preferences}{C++ File Naming}
|
||||||
|
@@ -16,9 +16,10 @@
|
|||||||
\title Share project settings
|
\title Share project settings
|
||||||
|
|
||||||
\QC stores user-specific project settings in a \e {.user} file. You can
|
\QC stores user-specific project settings in a \e {.user} file. You can
|
||||||
share these settings between several projects as a \e {.shared} file. It
|
share these settings between several projects as a \e {.shared} file
|
||||||
has the same XML structure as a \e {.user} file, but only has the
|
(such as, \c {CMakeLists.txt.shared}, \c {qtcreator.pro.shared}, or
|
||||||
settings to share.
|
\c {qtcreator.qbs.shared}). It has the same XML structure as a \e {.user}
|
||||||
|
file, but only has the settings to share.
|
||||||
|
|
||||||
To share CMake project settings, use \l{CMake Presets} or a
|
To share CMake project settings, use \l{CMake Presets} or a
|
||||||
\c {CMakeLists.txt.shared} file.
|
\c {CMakeLists.txt.shared} file.
|
||||||
|
@@ -35,8 +35,9 @@
|
|||||||
|
|
||||||
\section1 Set up PySide6
|
\section1 Set up PySide6
|
||||||
|
|
||||||
If you have not installed the required version of PySide6, \QC prompts you to
|
The recommended way to run PySide6 projects from \QC is to install PySide6
|
||||||
do so when you open a .py file.
|
for each project. \QC prompts you to do so the first time you open a .py file
|
||||||
|
for a project.
|
||||||
|
|
||||||
\image qtcreator-python-install.webp {Prompts to install PySide6 and Python language server}
|
\image qtcreator-python-install.webp {Prompts to install PySide6 and Python language server}
|
||||||
|
|
||||||
@@ -55,12 +56,6 @@
|
|||||||
\QD form, and the Qt Quick Application wizard creates a \c {.qml} file that
|
\QD form, and the Qt Quick Application wizard creates a \c {.qml} file that
|
||||||
imports Qt Quick controls.
|
imports Qt Quick controls.
|
||||||
|
|
||||||
\note Before importing UI classes and after editing them, create the Python
|
|
||||||
code from your UI form. In PySide6, run \c{pyside6-uic form.ui -o ui_form.py}
|
|
||||||
in the \l Terminal view.
|
|
||||||
|
|
||||||
\image qtcreator-new-qt-for-python-app-window-ui-uic.webp {Creating Python code in Terminal}
|
|
||||||
|
|
||||||
The \uicontrol Window wizard adds code to the source file, without the UI
|
The \uicontrol Window wizard adds code to the source file, without the UI
|
||||||
file.
|
file.
|
||||||
|
|
||||||
@@ -113,7 +108,7 @@
|
|||||||
\uicontrol {REPL Import File}. To also import all functions from
|
\uicontrol {REPL Import File}. To also import all functions from
|
||||||
the file, select \uicontrol {REPL Import *}.
|
the file, select \uicontrol {REPL Import *}.
|
||||||
|
|
||||||
\sa {Creating a Qt for Python Application with Qt Widgets},
|
\sa {Tutorial: Qt Widgets and Python}, {Tutorial: Qt Widgets UI and Python},
|
||||||
{Creating a Qt for Python Application with Qt Quick},
|
{Tutorial: Qt Quick and Python},
|
||||||
{Activate kits for a project}
|
{Activate kits for a project}
|
||||||
*/
|
*/
|
||||||
|
@@ -0,0 +1,115 @@
|
|||||||
|
// Copyright (C) 2024 The Qt Company Ltd.
|
||||||
|
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\page creator-tutorial-python-application-qt-widgets-ui.html
|
||||||
|
\previouspage creator-tutorials.html
|
||||||
|
\nextpage creator-how-tos.html
|
||||||
|
|
||||||
|
\ingroup creator-tutorials
|
||||||
|
|
||||||
|
\title Tutorial: Qt Widgets UI and Python
|
||||||
|
|
||||||
|
\brief How to develop a Qt widget-based application that contains a
|
||||||
|
\l {UI file} (.ui) with Python.
|
||||||
|
|
||||||
|
First, create a Qt for Python application project. Then, use the integrated
|
||||||
|
\QD to design a widgets-based UI.
|
||||||
|
|
||||||
|
\image qtcreator-new-project-python-window-ui-ready.webp {A small Qt Widgets application}
|
||||||
|
|
||||||
|
For more examples of creating Qt for Python applications, see
|
||||||
|
\l {https://doc.qt.io/qtforpython/tutorials/index.html}
|
||||||
|
{Qt for Python Examples and Tutorials}.
|
||||||
|
|
||||||
|
\section1 Create a window UI project
|
||||||
|
|
||||||
|
To create a Qt for Python application that has the source file for a main
|
||||||
|
class:
|
||||||
|
|
||||||
|
\list 1
|
||||||
|
\li Go to \uicontrol File > \uicontrol {New Project}.
|
||||||
|
\li Select \uicontrol {Application (Qt for Python)} >
|
||||||
|
\uicontrol {Window UI} > \uicontrol Choose to open the
|
||||||
|
\uicontrol {Project Location} dialog.
|
||||||
|
\image qtcreator-new-project-python-window-ui.webp {Project Location dialog}
|
||||||
|
\li In \uicontrol {Name}, enter the project name. For example,
|
||||||
|
\e {hello_world_ui}.
|
||||||
|
\li In \uicontrol {Create in}, enter the path for the project files.
|
||||||
|
For example, \c {C:\Examples}.
|
||||||
|
\li Select \uicontrol{Next} (on Windows and Linux) or \uicontrol Continue
|
||||||
|
(on \macos) to open the \uicontrol {Define Class} dialog.
|
||||||
|
\image qtcreator-new-project-python-window-ui-define-class.webp {Define Class dialog}
|
||||||
|
\li In \uicontrol {Class name}, select \b {MainWindow} as the class
|
||||||
|
name.
|
||||||
|
\li In \uicontrol {Base class}, select \b {QMainWindow} as the base class.
|
||||||
|
\note The \uicontrol {Source file} field is automatically updated to
|
||||||
|
match the name of the class.
|
||||||
|
\li In \uicontrol {Project file}, enter a name for the project file.
|
||||||
|
\li Select \uicontrol{Next} or \uicontrol Continue to open the
|
||||||
|
\uicontrol {Define Python Interpreter} dialog.
|
||||||
|
\image qtcreator-new-project-python-window-ui-define-python-interpreter.webp {Define Python Interpreter dialog}
|
||||||
|
\li In \uicontrol {PySide version}, select the PySide version of the
|
||||||
|
generated code.
|
||||||
|
\li Select \uicontrol {Next} or \uicontrol {Continue} to open the
|
||||||
|
\uicontrol {Kit Selection} dialog.
|
||||||
|
\image qtcreator-new-project-qt-for-python-kit-selection.webp {Selecting a kit for a Python project}
|
||||||
|
\li Select Python kits for building, deploying, and running the
|
||||||
|
project. By default, this creates a virtual environment for the
|
||||||
|
project inside the source directory. To use the global interpreter,
|
||||||
|
select the build configuration with the same name as the Python of
|
||||||
|
the kit in \uicontrol {Details}.
|
||||||
|
\li Select \uicontrol {Next} or \uicontrol {Continue}.
|
||||||
|
\li Review the project settings, and select \uicontrol {Finish} (on
|
||||||
|
Windows and Linux) or \uicontrol Done (on \macos) to create the
|
||||||
|
project.
|
||||||
|
\endlist
|
||||||
|
|
||||||
|
The wizard generates the following files:
|
||||||
|
|
||||||
|
\list
|
||||||
|
\li \c {form.ui}, which is the UI file for the window UI.
|
||||||
|
\li \c {hello_world_ui.pyproject}, which lists the files in the Python
|
||||||
|
project.
|
||||||
|
\li \c {mainwindow.py}, which has some boilerplate code for a class.
|
||||||
|
\li \c {reguirements.txt}, which stores the PySide version of the
|
||||||
|
generated code. You can use this file to install the required PySide
|
||||||
|
version using pip.
|
||||||
|
\endlist
|
||||||
|
|
||||||
|
\include creator-tutorial-python-application-qtquick.qdoc install-pyside6
|
||||||
|
|
||||||
|
\section1 Design a widgets-based UI
|
||||||
|
|
||||||
|
\list 1
|
||||||
|
\li In the \uicontrol {Edit} mode, double-click the \c {form.ui} file
|
||||||
|
in the \uicontrol{Projects} view to launch the integrated \QD.
|
||||||
|
\li Drag the following widgets from \uicontrol {Widget Box} to the form:
|
||||||
|
\list
|
||||||
|
\li \uicontrol {Text Edit} (QTextEdit)
|
||||||
|
\li \uicontrol {Check Box} (QCheckBox)
|
||||||
|
\li \uicontrol {Push Button} (QPushButton)
|
||||||
|
\endlist
|
||||||
|
\image qtcreator-new-project-python-window-ui-widgets.webp {Adding widgets to the UI}
|
||||||
|
\note To easily locate the widgets, use the search box at the top of the
|
||||||
|
\uicontrol {Widget Box}. For example, to find the \uicontrol {Text Edit}
|
||||||
|
widget, start typing the word \b text.
|
||||||
|
\li Double-click the \uicontrol {Text Edit} widget and enter the text
|
||||||
|
\b{Enter text here}.
|
||||||
|
\li Double-click the \uicontrol {Check Box} widget and enter the text
|
||||||
|
\b{Select me}.
|
||||||
|
\li Double-click the \uicontrol {Push Button} widget and enter the text
|
||||||
|
\b{Click me}.
|
||||||
|
\li Press \key {Ctrl+S} (or \key {Cmd+S}) to save your changes.
|
||||||
|
\endlist
|
||||||
|
|
||||||
|
For more information about designing UIs with \QD, see \l{\QD Manual}.
|
||||||
|
|
||||||
|
\section1 Run the application
|
||||||
|
|
||||||
|
Select the \inlineimage icons/run_small.png
|
||||||
|
button to run the application.
|
||||||
|
|
||||||
|
\sa {Tutorial: Qt Quick and Python}, {Tutorial: Qt Widgets and Python},
|
||||||
|
{Develop Qt for Python Applications}
|
||||||
|
*/
|
@@ -8,7 +8,8 @@
|
|||||||
|
|
||||||
\ingroup creator-tutorials
|
\ingroup creator-tutorials
|
||||||
|
|
||||||
\title Creating a Qt for Python Application with Qt Widgets
|
\keyword {Creating a Qt for Python Application with Qt Widgets}
|
||||||
|
\title Tutorial: Qt Widgets and Python
|
||||||
|
|
||||||
\brief How to develop a Qt widget-based application with Python.
|
\brief How to develop a Qt widget-based application with Python.
|
||||||
|
|
||||||
@@ -22,7 +23,7 @@
|
|||||||
\l {https://doc.qt.io/qtforpython/tutorials/index.html}
|
\l {https://doc.qt.io/qtforpython/tutorials/index.html}
|
||||||
{Qt for Python Examples and Tutorials}.
|
{Qt for Python Examples and Tutorials}.
|
||||||
|
|
||||||
\section1 Creating an Empty Window Project
|
\section1 Create an empty window project
|
||||||
|
|
||||||
To create a Qt for Python application that has the source file for a main
|
To create a Qt for Python application that has the source file for a main
|
||||||
class:
|
class:
|
||||||
@@ -75,7 +76,9 @@
|
|||||||
using pip.
|
using pip.
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
\section1 Adding Qt Widgets Imports
|
\include creator-tutorial-python-application-qtquick.qdoc install-pyside6
|
||||||
|
|
||||||
|
\section1 Add Qt Widgets imports
|
||||||
|
|
||||||
The wizard adds the imports to the \c mywidget.py source file for access to
|
The wizard adds the imports to the \c mywidget.py source file for access to
|
||||||
the QApplication and the base class you selected in the Qt Widgets module,
|
the QApplication and the base class you selected in the Qt Widgets module,
|
||||||
@@ -90,7 +93,7 @@
|
|||||||
from PySide6 import QtCore, QtWidgets
|
from PySide6 import QtCore, QtWidgets
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
\section1 Adding a Widgets-Based UI
|
\section1 Add a widgets-based UI
|
||||||
|
|
||||||
The wizard adds a main class with the specified name that inherits from the
|
The wizard adds a main class with the specified name that inherits from the
|
||||||
specified base class:
|
specified base class:
|
||||||
@@ -118,7 +121,7 @@
|
|||||||
...
|
...
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
\section1 Adding Signals and Slots
|
\section1 Add signals and slots
|
||||||
|
|
||||||
Then, add a signal and a slot to implement the random function:
|
Then, add a signal and a slot to implement the random function:
|
||||||
|
|
||||||
@@ -131,7 +134,7 @@
|
|||||||
self.text.setText(random.choice(self.hello))
|
self.text.setText(random.choice(self.hello))
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
\section1 Adding a Main Function
|
\section1 Add a main function
|
||||||
|
|
||||||
The wizard adds a main function, where it creates a QApplication instance. As
|
The wizard adds a main function, where it creates a QApplication instance. As
|
||||||
Qt can receive arguments from the command line, you can pass any arguments to
|
Qt can receive arguments from the command line, you can pass any arguments to
|
||||||
@@ -144,7 +147,7 @@
|
|||||||
...
|
...
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
\section1 Instantiating the MainWindow Class
|
\section1 Instantiate the MainWindow class
|
||||||
|
|
||||||
The wizard instantiates the \c MainWindow class and shows it:
|
The wizard instantiates the \c MainWindow class and shows it:
|
||||||
|
|
||||||
@@ -155,7 +158,7 @@
|
|||||||
...
|
...
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
\section1 Executing the Qt Code
|
\section1 Execute the Qt Code
|
||||||
|
|
||||||
Finally, the wizard calls the \c app.exec() method to enter the Qt
|
Finally, the wizard calls the \c app.exec() method to enter the Qt
|
||||||
main loop and start executing the Qt code:
|
main loop and start executing the Qt code:
|
||||||
@@ -165,11 +168,11 @@
|
|||||||
sys.exit(app.exec())
|
sys.exit(app.exec())
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
\section1 Running the Application
|
\section1 Run the application
|
||||||
|
|
||||||
Select the \inlineimage icons/run_small.png
|
Select the \inlineimage icons/run_small.png
|
||||||
button to run the application.
|
button to run the application.
|
||||||
|
|
||||||
\sa {Creating a Qt for Python Application with Qt Quick},
|
\sa {Tutorial: Qt Quick and Python}, {Tutorial: Qt Widgets UI and Python},
|
||||||
{Develop Qt for Python Applications}
|
{Develop Qt for Python Applications}
|
||||||
*/
|
*/
|
||||||
|
@@ -8,7 +8,8 @@
|
|||||||
|
|
||||||
\ingroup creator-tutorials
|
\ingroup creator-tutorials
|
||||||
|
|
||||||
\title Creating a Qt for Python Application with Qt Quick
|
\keyword {Creating a Qt for Python Application with Qt Quick}
|
||||||
|
\title Tutorial: Qt Quick and Python
|
||||||
|
|
||||||
\brief How to develop a Qt Quick application with Python.
|
\brief How to develop a Qt Quick application with Python.
|
||||||
|
|
||||||
@@ -22,7 +23,7 @@
|
|||||||
\l {https://doc.qt.io/qtforpython/tutorials/index.html}
|
\l {https://doc.qt.io/qtforpython/tutorials/index.html}
|
||||||
{Qt for Python Examples and Tutorials}.
|
{Qt for Python Examples and Tutorials}.
|
||||||
|
|
||||||
\section1 Creating an Empty Project
|
\section1 Create an empty project
|
||||||
|
|
||||||
To create a Qt for Python application that has a main QML file:
|
To create a Qt for Python application that has a main QML file:
|
||||||
|
|
||||||
@@ -65,7 +66,16 @@
|
|||||||
using pip.
|
using pip.
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
\section1 Adding Qt Quick Imports
|
//! [install-pyside6]
|
||||||
|
\section1 Install PySide6 for the project
|
||||||
|
|
||||||
|
In the \uicontrol {Edit} mode, select \uicontrol {Install} to set up PySide6
|
||||||
|
for the project.
|
||||||
|
|
||||||
|
\image qtcreator-python-install.webp {Prompt to install PySide6}
|
||||||
|
//! [install-pyside6]
|
||||||
|
|
||||||
|
\section1 Add Qt Quick imports
|
||||||
|
|
||||||
The wizard adds the following imports to the \c {main.py} source file for
|
The wizard adds the following imports to the \c {main.py} source file for
|
||||||
access to QGuiApplication and QQmlApplicationEngine:
|
access to QGuiApplication and QQmlApplicationEngine:
|
||||||
@@ -78,7 +88,7 @@
|
|||||||
from PySide6.QtQml import QQmlApplicationEngine
|
from PySide6.QtQml import QQmlApplicationEngine
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
\section1 Adding a Main Function
|
\section1 Add a main function
|
||||||
|
|
||||||
The wizard also adds a main function, where it creates a QGuiApplication
|
The wizard also adds a main function, where it creates a QGuiApplication
|
||||||
instance and passes system arguments to the QGuiApplication object:
|
instance and passes system arguments to the QGuiApplication object:
|
||||||
@@ -89,7 +99,7 @@
|
|||||||
...
|
...
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
\section1 Loading the QML File
|
\section1 Load the QML file
|
||||||
|
|
||||||
The following lines in the main class create a QQmlApplicationEngine
|
The following lines in the main class create a QQmlApplicationEngine
|
||||||
instance and load the generated QML file to the engine object:
|
instance and load the generated QML file to the engine object:
|
||||||
@@ -115,12 +125,12 @@
|
|||||||
...
|
...
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
\section1 Designing the UI
|
\section1 Design the UI
|
||||||
|
|
||||||
Open the \c {main.qml} file in the \uicontrol Edit mode to design a
|
Open the \c {main.qml} file in the \uicontrol Edit mode to design a
|
||||||
Qt Quick UI.
|
Qt Quick UI.
|
||||||
|
|
||||||
\section2 Adding Imports
|
\section2 Add imports
|
||||||
|
|
||||||
Add imports for Qt Quick Controls and Layouts:
|
Add imports for Qt Quick Controls and Layouts:
|
||||||
|
|
||||||
@@ -131,7 +141,7 @@
|
|||||||
import QtQuick.Layouts
|
import QtQuick.Layouts
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
\section2 Adding Properties and Functions
|
\section2 Add properties and functions
|
||||||
|
|
||||||
The wizard adds a main window:
|
The wizard adds a main window:
|
||||||
|
|
||||||
@@ -158,7 +168,7 @@
|
|||||||
}
|
}
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
\section2 Adding Qt Quick Controls
|
\section2 Add Qt Quick Controls
|
||||||
|
|
||||||
Add \l {Text} and \l {Button} QML types within a \l {ColumnLayout} type to
|
Add \l {Text} and \l {Button} QML types within a \l {ColumnLayout} type to
|
||||||
design the UI:
|
design the UI:
|
||||||
@@ -182,11 +192,10 @@
|
|||||||
|
|
||||||
You can also use \l{Qt Design Studio Manual}{\QDS} to design Qt Quick UIs.
|
You can also use \l{Qt Design Studio Manual}{\QDS} to design Qt Quick UIs.
|
||||||
|
|
||||||
\section1 Running the Application
|
\section1 Run the application
|
||||||
|
|
||||||
Select the \inlineimage icons/run_small.png
|
Select \inlineimage icons/run_small.png to run the application.
|
||||||
button to run the application.
|
|
||||||
|
|
||||||
\sa {Creating a Qt for Python Application with Qt Widgets},
|
\sa {Tutorial: Qt Widgets and Python}, {Tutorial: Qt Widgets UI and Python},
|
||||||
{Develop Qt for Python Applications}
|
{Develop Qt for Python Applications}
|
||||||
*/
|
*/
|
||||||
|
@@ -7,7 +7,8 @@
|
|||||||
\nextpage creator-how-tos.html
|
\nextpage creator-how-tos.html
|
||||||
\ingroup creator-tutorials
|
\ingroup creator-tutorials
|
||||||
|
|
||||||
\title Creating a Mobile Application
|
\keyword {Creating a Mobile Application}
|
||||||
|
\title Tutorial: Mobile application
|
||||||
|
|
||||||
\brief How to create a Qt Quick application that uses Qt Quick Controls and
|
\brief How to create a Qt Quick application that uses Qt Quick Controls and
|
||||||
runs on Android and iOS devices.
|
runs on Android and iOS devices.
|
||||||
@@ -24,7 +25,7 @@
|
|||||||
|
|
||||||
\image creator_android_tutorial_ex_app.png
|
\image creator_android_tutorial_ex_app.png
|
||||||
|
|
||||||
\section1 Setting up the Development Environment
|
\section1 Set up the development environment
|
||||||
|
|
||||||
To build the application for and run it on a mobile device, you must
|
To build the application for and run it on a mobile device, you must
|
||||||
set up the development environment for the device platform and configure a
|
set up the development environment for the device platform and configure a
|
||||||
@@ -41,7 +42,7 @@
|
|||||||
|
|
||||||
\include qtquick-tutorial-create-empty-project.qdocinc qtquick empty application
|
\include qtquick-tutorial-create-empty-project.qdocinc qtquick empty application
|
||||||
|
|
||||||
\section1 Adding Images as Resources
|
\section1 Add images as resources
|
||||||
|
|
||||||
The main view of the application displays an SVG bubble image that moves
|
The main view of the application displays an SVG bubble image that moves
|
||||||
around the screen when you tilt the device.
|
around the screen when you tilt the device.
|
||||||
@@ -54,7 +55,7 @@
|
|||||||
\skipto qt_add_qml_module
|
\skipto qt_add_qml_module
|
||||||
\printuntil )
|
\printuntil )
|
||||||
|
|
||||||
\section1 Creating the Accelbubble Main View
|
\section1 Create the Accelbubble main view
|
||||||
|
|
||||||
Create the main view in the \e main.qml file by adding an \l Image
|
Create the main view in the \e main.qml file by adding an \l Image
|
||||||
component with \e Bluebubble.svg as the source:
|
component with \e Bluebubble.svg as the source:
|
||||||
@@ -113,7 +114,7 @@
|
|||||||
\printuntil }
|
\printuntil }
|
||||||
\printuntil }
|
\printuntil }
|
||||||
|
|
||||||
\section1 Locking Device Orientation
|
\section1 Lock device orientation
|
||||||
|
|
||||||
The device display is rotated by default when the device orientation
|
The device display is rotated by default when the device orientation
|
||||||
changes between portrait and landscape. For this example, it would be
|
changes between portrait and landscape. For this example, it would be
|
||||||
@@ -153,7 +154,7 @@
|
|||||||
\skipto set_target_properties
|
\skipto set_target_properties
|
||||||
\printuntil )
|
\printuntil )
|
||||||
|
|
||||||
\section1 Adding Dependencies
|
\section1 Add dependencies
|
||||||
|
|
||||||
You must tell the build system which Qt modules your application needs by
|
You must tell the build system which Qt modules your application needs by
|
||||||
specifying dependencies in the project file. Select \uicontrol Projects to
|
specifying dependencies in the project file. Select \uicontrol Projects to
|
||||||
@@ -184,7 +185,7 @@
|
|||||||
For more information about the CMakeLists.txt file, see
|
For more information about the CMakeLists.txt file, see
|
||||||
\l{Getting started with CMake}.
|
\l{Getting started with CMake}.
|
||||||
|
|
||||||
\section1 Running the Application
|
\section1 Run the application
|
||||||
|
|
||||||
You can now deploy the application to a device:
|
You can now deploy the application to a device:
|
||||||
|
|
||||||
|
@@ -7,7 +7,8 @@
|
|||||||
\nextpage creator-how-tos.html
|
\nextpage creator-how-tos.html
|
||||||
\ingroup creator-tutorials
|
\ingroup creator-tutorials
|
||||||
|
|
||||||
\title Creating a Qt Quick Application
|
\keyword {Creating a Qt Quick Application}
|
||||||
|
\title Tutorial: Qt Quick application
|
||||||
|
|
||||||
\brief How to create a Qt Quick Application in the \uicontrol Edit mode.
|
\brief How to create a Qt Quick Application in the \uicontrol Edit mode.
|
||||||
|
|
||||||
@@ -33,7 +34,7 @@
|
|||||||
\QC generates a component file, \e Main.qml, and opens it in the
|
\QC generates a component file, \e Main.qml, and opens it in the
|
||||||
\uicontrol Edit mode.
|
\uicontrol Edit mode.
|
||||||
|
|
||||||
\section1 Deploying Applications
|
\section1 Deploy applications
|
||||||
|
|
||||||
The main view of the application displays a Qt logo inside a rectangle in
|
The main view of the application displays a Qt logo inside a rectangle in
|
||||||
the top left corner of the view and two empty rectangles.
|
the top left corner of the view and two empty rectangles.
|
||||||
@@ -46,7 +47,7 @@
|
|||||||
\skipto qt_add_qml_module
|
\skipto qt_add_qml_module
|
||||||
\printuntil )
|
\printuntil )
|
||||||
|
|
||||||
\section1 Creating Custom QML Types
|
\section1 Create a custom QML type
|
||||||
|
|
||||||
Because the \l Window QML type requires that you add states into child
|
Because the \l Window QML type requires that you add states into child
|
||||||
components, use the wizard to create a custom QML type called
|
components, use the wizard to create a custom QML type called
|
||||||
@@ -58,7 +59,7 @@
|
|||||||
\li Go to \uicontrol File > \uicontrol {New File}.
|
\li Go to \uicontrol File > \uicontrol {New File}.
|
||||||
\li Select \uicontrol Qt > \uicontrol {QML File (Qt Quick 2)}.
|
\li Select \uicontrol Qt > \uicontrol {QML File (Qt Quick 2)}.
|
||||||
\li Select \uicontrol Choose to open the \uicontrol Location dialog.
|
\li Select \uicontrol Choose to open the \uicontrol Location dialog.
|
||||||
\li In the \uicontrol {File name} field, enter a name for the custom
|
\li In \uicontrol {File name}, enter a name for the custom
|
||||||
QML type: \e Page.
|
QML type: \e Page.
|
||||||
\li Select \uicontrol Next to open the \uicontrol {Project Management}
|
\li Select \uicontrol Next to open the \uicontrol {Project Management}
|
||||||
dialog.
|
dialog.
|
||||||
@@ -117,7 +118,7 @@
|
|||||||
Next, make the image move between the rectangles when users click
|
Next, make the image move between the rectangles when users click
|
||||||
them by adding states and by connecting mouse clicks to state changes.
|
them by adding states and by connecting mouse clicks to state changes.
|
||||||
|
|
||||||
\section1 Connecting Mouse Clicks to State Changes
|
\section1 Connect mouse clicks to state changes
|
||||||
|
|
||||||
To make the image move between the rectangles when users click them, add
|
To make the image move between the rectangles when users click them, add
|
||||||
states to the Page component where you change the values of the \c x and
|
states to the Page component where you change the values of the \c x and
|
||||||
@@ -139,7 +140,7 @@
|
|||||||
|
|
||||||
Because you develop with Qt 6, you must specify the connections as functions.
|
Because you develop with Qt 6, you must specify the connections as functions.
|
||||||
|
|
||||||
\section1 Adding Page to the Main View
|
\section1 Add Page to the main view
|
||||||
|
|
||||||
Open \e Main.qml for editing and add an instance of the Page custom
|
Open \e Main.qml for editing and add an instance of the Page custom
|
||||||
component to it:
|
component to it:
|
||||||
@@ -151,7 +152,7 @@
|
|||||||
Press \key {Ctrl+R} to run the application, and click the rectangles to
|
Press \key {Ctrl+R} to run the application, and click the rectangles to
|
||||||
move the Qt logo from one rectangle to another.
|
move the Qt logo from one rectangle to another.
|
||||||
|
|
||||||
\section1 Animating Transitions
|
\section1 Animate transitions
|
||||||
|
|
||||||
Create transitions to apply animation to the image. For example,
|
Create transitions to apply animation to the image. For example,
|
||||||
the image bounces back when it moves to \e middleRightRect and eases into
|
the image bounces back when it moves to \e middleRightRect and eases into
|
||||||
|
@@ -95,9 +95,9 @@
|
|||||||
\QC creates a QML file, \e Main.qml, that you can modify in the
|
\QC creates a QML file, \e Main.qml, that you can modify in the
|
||||||
\uicontrol Edit mode.
|
\uicontrol Edit mode.
|
||||||
|
|
||||||
\sa {Create Qt Quick UI Prototypes}, {Creating a Mobile Application},
|
\sa {Create Qt Quick UI Prototypes}, {Tutorial: Mobile application},
|
||||||
{Creating a Qt for Python Application with Qt Quick},
|
{Tutorial: Qt Quick and Python},
|
||||||
{Creating a Qt Quick Application}, {Creating Projects},
|
{Tutorial: Qt Quick application}, {Creating Projects},
|
||||||
{Developing Qt Quick Applications}
|
{Developing Qt Quick Applications}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -4,11 +4,11 @@
|
|||||||
/*!
|
/*!
|
||||||
//! [qtquick empty application]
|
//! [qtquick empty application]
|
||||||
|
|
||||||
\section1 Creating the Project
|
\section1 Create the project
|
||||||
|
|
||||||
\list 1
|
\list 1
|
||||||
|
|
||||||
\li Select \uicontrol File > \uicontrol {New Project} >
|
\li Go to \uicontrol File > \uicontrol {New Project} >
|
||||||
\uicontrol {Application (Qt)} > \uicontrol {Qt Quick Application}.
|
\uicontrol {Application (Qt)} > \uicontrol {Qt Quick Application}.
|
||||||
|
|
||||||
\image qtcreator-project-qt-quick.webp {New Project dialog}
|
\image qtcreator-project-qt-quick.webp {New Project dialog}
|
||||||
@@ -16,11 +16,11 @@
|
|||||||
\li Select \uicontrol Choose to open the
|
\li Select \uicontrol Choose to open the
|
||||||
\uicontrol {Project Location} dialog.
|
\uicontrol {Project Location} dialog.
|
||||||
|
|
||||||
\li In the \uicontrol Name field, enter a name for the application.
|
\li In \uicontrol Name, enter a name for the application.
|
||||||
When naming your own projects, keep in mind that you cannot
|
When naming your own projects, keep in mind that you cannot
|
||||||
easily rename them later.
|
easily rename them later.
|
||||||
|
|
||||||
\li In the \uicontrol {Create in} field, enter the path for the project
|
\li In \uicontrol {Create in}, enter the path for the project
|
||||||
files. You can move project folders later without problems.
|
files. You can move project folders later without problems.
|
||||||
|
|
||||||
\li Select \uicontrol Next to open the
|
\li Select \uicontrol Next to open the
|
||||||
@@ -28,11 +28,10 @@
|
|||||||
|
|
||||||
\image qtcreator-project-qt-quick-details.webp {Define Project Details dialog}
|
\image qtcreator-project-qt-quick-details.webp {Define Project Details dialog}
|
||||||
|
|
||||||
\li Deselect the \uicontrol {Create a project that you can open in \QDS}
|
\li Clear \uicontrol {Create a project that you can open in \QDS}.
|
||||||
check box.
|
|
||||||
|
|
||||||
\note This tutorial shows how to create the application in the
|
\note This tutorial shows how to create the application in the
|
||||||
\uicontrol Edit mode. If you leave the check box selected, the
|
\uicontrol Edit mode. If you leave the checkbox selected, the
|
||||||
following instructions won't apply.
|
following instructions won't apply.
|
||||||
|
|
||||||
\li Select \uicontrol Next to open the \uicontrol {Kit Selection} dialog.
|
\li Select \uicontrol Next to open the \uicontrol {Kit Selection} dialog.
|
||||||
|
@@ -160,7 +160,7 @@
|
|||||||
\if defined(qtdesignstudio)
|
\if defined(qtdesignstudio)
|
||||||
\note In this section, you are using advanced menu items. These are not
|
\note In this section, you are using advanced menu items. These are not
|
||||||
visible by default. To toggle the visibility of advanced menu items, see
|
visible by default. To toggle the visibility of advanced menu items, see
|
||||||
\l{Customizing the Menu}.
|
\l{Customizing the Menu Bar}.
|
||||||
\endif
|
\endif
|
||||||
|
|
||||||
With QML Profiler, you can find causes for typical performance problems
|
With QML Profiler, you can find causes for typical performance problems
|
||||||
|
@@ -107,6 +107,6 @@
|
|||||||
To pin toolbars by default, select \uicontrol {Pin Qt Quick Toolbar}.
|
To pin toolbars by default, select \uicontrol {Pin Qt Quick Toolbar}.
|
||||||
|
|
||||||
\if defined(qtcreator)
|
\if defined(qtcreator)
|
||||||
\sa {Creating a Qt Quick Application}
|
\sa {Tutorial: Qt Quick application}
|
||||||
\endif
|
\endif
|
||||||
*/
|
*/
|
||||||
|
760
doc/qtcreator/src/reference/creator-sdk-tool.qdoc
Normal file
@@ -0,0 +1,760 @@
|
|||||||
|
// Copyright (C) 2024 The Qt Company Ltd.
|
||||||
|
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\page creator-sdk-tool.html
|
||||||
|
\previouspage creator-reference.html
|
||||||
|
|
||||||
|
\ingroup creator-reference
|
||||||
|
|
||||||
|
\title SDK Tool
|
||||||
|
|
||||||
|
\brief Configure CMake and set up compilers, debuggers, devices, Qt versions,
|
||||||
|
and kits from the command line.
|
||||||
|
|
||||||
|
\QOI uses the SDK Tool (\c sdktool) to configure CMake and set \l {Kits}{Kit}
|
||||||
|
preferences, such as compilers, debuggers, devices, and Qt versions. You can
|
||||||
|
use it from the command line to set Qt and \QC preferences automatically for
|
||||||
|
all users of a computer, for example. For a single user, it is usually easier
|
||||||
|
to make changes in \preferences > \uicontrol Kits.
|
||||||
|
|
||||||
|
To use the SDK Tool, enter the following command in the \c {Tools\sdktool\bin}
|
||||||
|
directory in the Qt installation directory:
|
||||||
|
|
||||||
|
\badcode
|
||||||
|
sdktool [OPTION] [OPERATION [OPTIONS]]
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
For information about the options and operations that your SDK Tool version
|
||||||
|
supports, enter:
|
||||||
|
|
||||||
|
\badcode
|
||||||
|
sdktool --help
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
\section1 Value Types
|
||||||
|
|
||||||
|
The operations add settings in the form \c {<KEY> <TYPE>:<VALUE>} to the
|
||||||
|
configuration that they create. The supported \c TYPE values are:
|
||||||
|
|
||||||
|
\list
|
||||||
|
\li \c bool
|
||||||
|
\li \c int
|
||||||
|
\li \l QByteArray
|
||||||
|
\li \l QString
|
||||||
|
\li \l QVariantList
|
||||||
|
\endlist
|
||||||
|
|
||||||
|
\section1 SDK Path
|
||||||
|
|
||||||
|
\QOI and the \QC stand-alone installer both install \c sdktool. The
|
||||||
|
\c sdktool from an installer defaults to the location from where the \QC
|
||||||
|
from the installer reads the information that the SDK Tool writes.
|
||||||
|
To point \c sdktool to some other \QC installation, set \c --sdkpath
|
||||||
|
depending on whether you use \QOI or an offline installer.
|
||||||
|
|
||||||
|
\list
|
||||||
|
\li \QOI: \c {<Qt_Online_Installer>/Tools/sdktool}
|
||||||
|
\li \QC stand-alone installer:
|
||||||
|
\list
|
||||||
|
\li On Windows and Linux: \c {<qtcreator>/share/qtcreator/}
|
||||||
|
\li On \macos \c {Qt Creator.app/Contents/Resources/}
|
||||||
|
\endlist
|
||||||
|
\endlist
|
||||||
|
|
||||||
|
\section1 Options
|
||||||
|
|
||||||
|
The following table summarizes the available options.
|
||||||
|
|
||||||
|
\table
|
||||||
|
\header
|
||||||
|
\li Option
|
||||||
|
\li Description
|
||||||
|
\row
|
||||||
|
\li \c {--help | -h}
|
||||||
|
\li Display help on SDK tool options.
|
||||||
|
|
||||||
|
Enter \c {--help <OPERATION>} to get help on the options
|
||||||
|
required for the operation.
|
||||||
|
\row
|
||||||
|
\li \c {--sdkpath=<PATH> | -s <PATH>}
|
||||||
|
\li Set the path to the files that the SDK tool writes.
|
||||||
|
\endtable
|
||||||
|
|
||||||
|
\section1 Operations
|
||||||
|
|
||||||
|
The following table summarizes the available operations.
|
||||||
|
|
||||||
|
\table
|
||||||
|
\header
|
||||||
|
\li Operation
|
||||||
|
\li Description
|
||||||
|
\row
|
||||||
|
\li addAbiFlavor
|
||||||
|
\li Add a system architecture (ABI).
|
||||||
|
\row
|
||||||
|
\li \c {addCMake}
|
||||||
|
\li Add the path to a CMake tool.
|
||||||
|
\row
|
||||||
|
\li \c {addDebugger}
|
||||||
|
\li Add a debugger.
|
||||||
|
\row
|
||||||
|
\li \c {addDev}
|
||||||
|
\li Add a device.
|
||||||
|
\row
|
||||||
|
\li \c {addKeys}
|
||||||
|
\li Add settings as \c {<KEY> <TYPE>:<VALUE>} key-value pairs.
|
||||||
|
\row
|
||||||
|
\li \c {addKit}
|
||||||
|
\li Add a build and run kit.
|
||||||
|
\row
|
||||||
|
\li \c {addQt}
|
||||||
|
\li Add a Qt version.
|
||||||
|
\row
|
||||||
|
\li \c {addTC}
|
||||||
|
\li Add a compiler.
|
||||||
|
\row
|
||||||
|
\li \c {find}
|
||||||
|
\li Find a setting value.
|
||||||
|
\row
|
||||||
|
\li \c {findKey}
|
||||||
|
\li Find a setting key.
|
||||||
|
\row
|
||||||
|
\li \c {get}
|
||||||
|
\li Get settings.
|
||||||
|
\row
|
||||||
|
\li \c {rmCMake}
|
||||||
|
\li Remove the path to a CMake tool.
|
||||||
|
\row
|
||||||
|
\li \c {rmDebugger}
|
||||||
|
\li Remove a debugger.
|
||||||
|
\row
|
||||||
|
\li \c {rmDev}
|
||||||
|
\li Remove a device
|
||||||
|
\row
|
||||||
|
\li \c {rmKeys}
|
||||||
|
\li Remove settings.
|
||||||
|
\row
|
||||||
|
\li \c {rmQt}
|
||||||
|
\li Remove a Qt version.
|
||||||
|
\row
|
||||||
|
\li \c {rmTC}
|
||||||
|
\li Remove a compiler.
|
||||||
|
\endtable
|
||||||
|
|
||||||
|
\section1 Adding a System Architecture (ABI)
|
||||||
|
|
||||||
|
\section2 addAbiFlavor
|
||||||
|
|
||||||
|
\badcode
|
||||||
|
sdktool addAbiFlavor --flavor <NAME> --oses <OS>(,<OS>)*
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
\section2 addAbiFlavor Options
|
||||||
|
|
||||||
|
The following table summarizes the available options.
|
||||||
|
|
||||||
|
\table
|
||||||
|
\header
|
||||||
|
\li Option
|
||||||
|
\li Description
|
||||||
|
\li Required
|
||||||
|
\row
|
||||||
|
\li \c {--flavor <NAME>}
|
||||||
|
\li Name of the system architecture (ABI).
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {--oses <OS>(,<OS>)*}
|
||||||
|
\li Operating system that the ABI applies to.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\endtable
|
||||||
|
|
||||||
|
\section2 ABI Flavor Example
|
||||||
|
|
||||||
|
To add Yocto Poky on Linux, enter:
|
||||||
|
|
||||||
|
\badcode
|
||||||
|
./sdktool addAbiFlavor \
|
||||||
|
--flavor poky \
|
||||||
|
--oses linux
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
\section1 Adding CMake Tools
|
||||||
|
|
||||||
|
\section2 addCMake
|
||||||
|
|
||||||
|
\badcode
|
||||||
|
sdktool addCMake --id <ID> --name <NAME> --path <PATH> [<KEY> <TYPE:VALUE>]
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
\section2 addCMake Options
|
||||||
|
|
||||||
|
The following table summarizes the available options.
|
||||||
|
|
||||||
|
\table
|
||||||
|
\header
|
||||||
|
\li Option
|
||||||
|
\li Description
|
||||||
|
\li Required
|
||||||
|
\row
|
||||||
|
\li \c {--id <ID>}
|
||||||
|
\li ID of the CMake installation. Can be any ASCII (7-bit) string.
|
||||||
|
|
||||||
|
If you do not use a version number in the string, the registered
|
||||||
|
CMake keeps the ID when you update this CMake installation, and
|
||||||
|
therefore, all kits are automatically updated to use the new
|
||||||
|
version.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {--name <NAME>}
|
||||||
|
\li Name of the CMake installation.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {--path <PATH>}
|
||||||
|
\li Path to the CMake executable.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {<KEY> <TYPE:VALUE>}
|
||||||
|
\li Additional settings as key-value pairs.
|
||||||
|
\li
|
||||||
|
\endtable
|
||||||
|
|
||||||
|
For more information, see \l{Add CMake tools}.
|
||||||
|
|
||||||
|
\section2 CMake Configuration Example
|
||||||
|
|
||||||
|
To add a CMake tool on Windows, enter:
|
||||||
|
|
||||||
|
\badcode
|
||||||
|
sdktool addCMake \
|
||||||
|
--id "my.custom.cmake" \
|
||||||
|
--name "Custom CMake" \
|
||||||
|
--path "C:\Program Files\CMake-3.30\bin\cmake.exe"
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
\section1 Adding Compilers
|
||||||
|
|
||||||
|
\section2 addTC
|
||||||
|
|
||||||
|
\badcode
|
||||||
|
sdktool addTC --id <ID> --language <ID> --name <NAME> --path <PATH> --abi <ABI STRING> [OPTIONS]
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
\section2 addTC Options
|
||||||
|
|
||||||
|
The following table summarizes the available options.
|
||||||
|
|
||||||
|
\table
|
||||||
|
\header
|
||||||
|
\li Option
|
||||||
|
\li Description
|
||||||
|
\li Required
|
||||||
|
\row
|
||||||
|
\li \c {--abi <ABI STRING>}
|
||||||
|
\li ABI of the compiler in a format that
|
||||||
|
\c {ProjectExplorer::Abi::fromString()} can parse.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {--id <ID>}
|
||||||
|
\li ID of the toolchain in the format \c {ToolChainType:some_unique_part},
|
||||||
|
where the toolchain type can be one of the following, or something
|
||||||
|
else provided by a plugin:
|
||||||
|
\list
|
||||||
|
\li \c {ProjectExplorer.ToolChain.Msvc} for Microsoft MSVC
|
||||||
|
compilers. This compiler is automatically detected, so
|
||||||
|
you don't need to add it with the SDK tool.
|
||||||
|
\li \c {ProjectExplorer.ToolChain.Gcc} for GCC on Linux or
|
||||||
|
\macos.
|
||||||
|
\li \c {ProjectExplorer.ToolChain.Clang} for Clang.
|
||||||
|
\li \c {ProjectExplorer.ToolChain.LinuxIcc} for LinuxICC.
|
||||||
|
\li \c {ProjectExplorer.ToolChain.Mingw} for MinGW.
|
||||||
|
\li \c {ProjectExplorer.ToolChain.ClangCl} for Clang/CL.
|
||||||
|
\li \c {ProjectExplorer.ToolChain.Custom} for a custom
|
||||||
|
toolchain.
|
||||||
|
\li \c {Qt4ProjectManager.ToolChain.Android} for Android.
|
||||||
|
\li \c {Qnx.QccToolChain} for QNX QCC.
|
||||||
|
\li \c {WebAssembly.ToolChain.Emscripten} for Emscripten.
|
||||||
|
\endlist
|
||||||
|
Check the classes derived from \c {ProjectExplorer::ToolChain}
|
||||||
|
for their IDs.
|
||||||
|
|
||||||
|
\c {some_unique_part} can be anything. \QC uses GUIDs by default.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {--language <ID>}
|
||||||
|
\li ID of the input language of the toolchain: \c C or \c Cxx.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {--name <NAME>}
|
||||||
|
\li Name of the toolchain.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {--path <PATH>}
|
||||||
|
\li Path to the compiler executable.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {--supportedAbis <ABI STRING>,<ABI STRING>}
|
||||||
|
\li List of ABIs that the compiler supports.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {<KEY> <TYPE:VALUE>}
|
||||||
|
\li Additional settings as key-value pairs.
|
||||||
|
\li
|
||||||
|
\endtable
|
||||||
|
|
||||||
|
For more information, see \l{Add compilers}.
|
||||||
|
|
||||||
|
\section2 Compiler Example
|
||||||
|
|
||||||
|
To add a GCC compiler on Linux, enter:
|
||||||
|
|
||||||
|
\badcode
|
||||||
|
./sdktool addTC \
|
||||||
|
--id "ProjectExplorer.ToolChain.Gcc:company.product.toolchain.g++" \
|
||||||
|
--language Cxx
|
||||||
|
--name "GCC (C++, x86_64)" \
|
||||||
|
--path /home/code/build/gcc-6.3/usr/bin/g++ \
|
||||||
|
--abi x86-linux-generic-elf-64bit \
|
||||||
|
--supportedAbis x86-linux-generic-elf-64bit,x86-linux-generic-elf-32bit \
|
||||||
|
ADDITIONAL_INTEGER_PARAMETER int:42 \
|
||||||
|
ADDITIONAL_STRING_PARAMETER "QString:some string" \
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
\section1 Adding Debuggers
|
||||||
|
|
||||||
|
\section2 addDebugger
|
||||||
|
|
||||||
|
\badcode
|
||||||
|
sdktool addDebugger --id <ID> --name <NAME> [OPTIONS]
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
\section2 addDebugger Options
|
||||||
|
|
||||||
|
The following table summarizes the available options.
|
||||||
|
|
||||||
|
\table
|
||||||
|
\header
|
||||||
|
\li Option
|
||||||
|
\li Description
|
||||||
|
\li Required
|
||||||
|
\row
|
||||||
|
\li \c {--abis <ABI,ABI>}
|
||||||
|
\li Comma-separated list of system architecture definitions.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--binary <PATH>}
|
||||||
|
\li Path to the debugger executable. Can be an absolute path, the
|
||||||
|
value \c auto, or an ABI. Finds the appropriate debugger for MSVC
|
||||||
|
toolchains where \QC does not know the binary path.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--engine <ENGINE>}
|
||||||
|
\li Debugger engine type:
|
||||||
|
\list
|
||||||
|
\li 1 for GDB
|
||||||
|
\li 4 for CDB
|
||||||
|
\li 8 for PDB
|
||||||
|
\li 256 for LLDB
|
||||||
|
\li 512 for GDB DAP
|
||||||
|
\li 1024 for LLDB DAP
|
||||||
|
\li 4096 for uVision Debugger
|
||||||
|
\endlist
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--id <ID>}
|
||||||
|
\li Unique ID of the debugger.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {--name <NAME>}
|
||||||
|
\li Name of the debugger.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {<KEY> <TYPE:VALUE>}
|
||||||
|
\li Additional settings as key-value pairs.
|
||||||
|
\li
|
||||||
|
\endtable
|
||||||
|
|
||||||
|
For more information, see \l{Add debuggers}.
|
||||||
|
|
||||||
|
\section2 Debugger Example
|
||||||
|
|
||||||
|
To add a GDB debugger on Linux, enter:
|
||||||
|
|
||||||
|
\badcode
|
||||||
|
./sdktool addDebugger \
|
||||||
|
--id "company.product.toolchain.gdb" \
|
||||||
|
--name "GDB (company, product)" \
|
||||||
|
--engine 1 \
|
||||||
|
--binary /home/code/build/gdb-7.12/bin/gdb \
|
||||||
|
--abis arm-linux-generic-elf-32 \
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
\section1 Adding Devices
|
||||||
|
|
||||||
|
\section2 addDev
|
||||||
|
|
||||||
|
\badcode
|
||||||
|
sdktool addDev --id <ID> --name <NAME> --type <INT> [OPTIONS]
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
\section2 addDev Options
|
||||||
|
|
||||||
|
The following table summarizes the available options. The options to use
|
||||||
|
depend on the device type.
|
||||||
|
|
||||||
|
\table
|
||||||
|
\header
|
||||||
|
\li Option
|
||||||
|
\li Description
|
||||||
|
\li Required
|
||||||
|
\row
|
||||||
|
\li \c {--authentication <INT>}
|
||||||
|
\li Authentication method:
|
||||||
|
\list
|
||||||
|
\li 1 for all authentication methods
|
||||||
|
\li 2 for SSH authentication using a public and private key
|
||||||
|
pair
|
||||||
|
\endlist
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--b2qHardware <STRING>}
|
||||||
|
\li Boot to Qt platform info about hardware.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--b2qSoftware <STRING>}
|
||||||
|
\li Boot to Qt platform info about software.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--debugServerKey <STRING>}
|
||||||
|
\li Debug server key.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--dockerClangdExecutable <STRING>}
|
||||||
|
\li Path to the Clangd executable in the Docker container.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--dockerMappedPaths <STRING>}
|
||||||
|
\li Semicolon-separated list of Docker mapped paths.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--dockerRepo <STRING>}
|
||||||
|
\li Docker image repository.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--dockerTag <STRING>}
|
||||||
|
\li Docker image tag.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--freePorts <STRING>}
|
||||||
|
\li Free ports.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--host <STRING>}
|
||||||
|
\li Host name or IP address of the device.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--id <ID>}
|
||||||
|
\li Unique ID of the device.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {--keyFile <STRING>}
|
||||||
|
\li Path to the user's private key file.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--name <NAME>}
|
||||||
|
\li Name of the device.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {--origin <INT>}
|
||||||
|
\li Whether the device was detected automatically:
|
||||||
|
\list
|
||||||
|
\li 1 for a manually added device
|
||||||
|
\li 2 for an automatically detected device
|
||||||
|
\endlist
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--osType <STRING>}
|
||||||
|
\li Operating system on the device:
|
||||||
|
\list
|
||||||
|
\li \c Android.Device.Type
|
||||||
|
\li \c BareMetalOsType
|
||||||
|
\li \c QdbLinuxOsType
|
||||||
|
\li \c DockerDeviceType
|
||||||
|
\li \c Ios.Device.Type
|
||||||
|
\li \c Ios.Simulator.Type
|
||||||
|
\li \c McuSupport.DeviceType
|
||||||
|
\li \c Desktop
|
||||||
|
\li \c WebAssemblyDeviceType
|
||||||
|
\li \c QnxOsType
|
||||||
|
\li \c GenericLinuxOsType
|
||||||
|
\endlist
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--password <STRING>}
|
||||||
|
\li Password for password authentication.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--sshPort <INT>}
|
||||||
|
\li Port number for SSH connections.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--timeout <INT>}
|
||||||
|
\li Timeout for reusing the SSH connection in seconds.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--type <INT>}
|
||||||
|
\li Device type:
|
||||||
|
\list
|
||||||
|
\li 1 for a hardware device
|
||||||
|
\li 2 for an emulator, simulator, or virtual device
|
||||||
|
\endlist
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {--uname <STRING>}
|
||||||
|
\li Username to access the device.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {<KEY> <TYPE:VALUE>}
|
||||||
|
\li Additional settings as key-value pairs.
|
||||||
|
\li
|
||||||
|
\endtable
|
||||||
|
|
||||||
|
For more information, see \l{Develop for Devices}{How To: Develop for Devices}.
|
||||||
|
|
||||||
|
\section2 Linux Device Example
|
||||||
|
|
||||||
|
To add a remote Linux device (hardware device) on Linux and use SSH keys to
|
||||||
|
authenticate to the device, enter:
|
||||||
|
|
||||||
|
\badcode
|
||||||
|
./sdktool addDev \
|
||||||
|
--id " LinuxDevice1" \
|
||||||
|
--name "My Remote Linux Device" \
|
||||||
|
--type 1 \
|
||||||
|
--authentication 2 \
|
||||||
|
--freePorts "10000-10100" \
|
||||||
|
--host "10.10.10.15" \
|
||||||
|
--keyFile "/usr/.ssh/qtc_id" \
|
||||||
|
--origin 1 \
|
||||||
|
--osType "GenericLinuxOsType" \
|
||||||
|
--sshPort 22 \
|
||||||
|
--timeout 10 \
|
||||||
|
--uname "root"
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
\section1 Adding Qt Versions
|
||||||
|
|
||||||
|
\section2 addQt
|
||||||
|
|
||||||
|
\badcode
|
||||||
|
sdktool addQt --id <ID> --name <NAME> --qmake <PATH> --type <TYPE> [OPTIONS]
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
\section2 addQt Options
|
||||||
|
|
||||||
|
The following table summarizes the available options.
|
||||||
|
|
||||||
|
\table
|
||||||
|
\header
|
||||||
|
\li Option
|
||||||
|
\li Description
|
||||||
|
\li Required
|
||||||
|
\row
|
||||||
|
\li \c {--abis <ABI,ABI>}
|
||||||
|
\li Comma-separated list of system architecture definitions.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--id <ID>}
|
||||||
|
\li ID of the Qt installation. \QC automatically sets the ID when it
|
||||||
|
detects Qt versions installed on the computer.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {--name <NAME>}
|
||||||
|
\li Name of the Qt installation.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {--qmake <PATH>}
|
||||||
|
\li Path to the qmake executable in the Qt installation.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {--type <TYPE>}
|
||||||
|
\li The type of the Qt version:
|
||||||
|
\list
|
||||||
|
\li \c {Qt4ProjectManager.QtVersion.Android} for Android.
|
||||||
|
\li \c {Qt4ProjectManager.QtVersion.Desktop} for a desktop Qt.
|
||||||
|
\li \c {Qt4ProjectManager.QtVersion.Ios} for iOS.
|
||||||
|
\li \c {Qt4ProjectManager.QtVersion.QNX.QNX} for QNX.
|
||||||
|
\li \c {RemoteLinux.EmbeddedLinuxQt} for Embedded Linux.
|
||||||
|
\li \c {Qt4ProjectManager.QtVersion.WebAssembly} for
|
||||||
|
WebAssembly.
|
||||||
|
\endlist
|
||||||
|
The string returned by \c {QtVersion::type()}.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {<KEY> <TYPE:VALUE>}
|
||||||
|
\li Additional settings as key-value pairs.
|
||||||
|
\li
|
||||||
|
\endtable
|
||||||
|
|
||||||
|
For more information, see \l{Add Qt versions}.
|
||||||
|
|
||||||
|
\section2 Qt Version Example
|
||||||
|
|
||||||
|
To add a self-built Qt 6.8 version on Linux, enter:
|
||||||
|
|
||||||
|
\badcode
|
||||||
|
./sdktool addQt \
|
||||||
|
--id "company.product.qt" \
|
||||||
|
--name "Custom Qt" \
|
||||||
|
--qmake /home/code/build/qt-6.8/bin/qmake \
|
||||||
|
--type Qt4ProjectManager.QtVersion.Desktop \
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
\section1 Adding Kits
|
||||||
|
|
||||||
|
\section2 addKit
|
||||||
|
|
||||||
|
\badcode
|
||||||
|
sdktool addKit --id <ID> --name <NAME> --devicetype <TYPE> [OPTIONS]
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
\section2 addKit Options
|
||||||
|
|
||||||
|
The following table summarizes the available options.
|
||||||
|
|
||||||
|
\table
|
||||||
|
\header
|
||||||
|
\li Option
|
||||||
|
\li Description
|
||||||
|
\li Required
|
||||||
|
\row
|
||||||
|
\li \c {--builddevice <ID>}
|
||||||
|
\li The ID of the device to build applications on.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--cmake <ID>}
|
||||||
|
\li The ID of the CMake executable to use for building the project.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--cmake-config <KEY:TYPE=VALUE>}
|
||||||
|
\li Parameters for the CMake configuration of the kit. You can add
|
||||||
|
multiple entries of this type.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--cmake-generator <GEN>:<EXTRA>:<TOOLSET>:<PLATFORM>}
|
||||||
|
\li The CMake Generator to use for producing project files.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--debugger <PATH>}
|
||||||
|
\li Path to the debugger to use for the kit. Do not use this option
|
||||||
|
with \c {--debuggerid}.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--debuggerengine <ENGINE>}
|
||||||
|
\li The type of the debugger set with \c {--debugger}. Do not use
|
||||||
|
this option with \c {--debuggerid}.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--debuggerid <ID>}
|
||||||
|
\li One of the IDs used when adding debuggers with the
|
||||||
|
\c {addDebugger} operation. Do not use this option
|
||||||
|
with \c {--debugger} and \c {--debuggerengine}.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--device <ID>}
|
||||||
|
\li The device to run applications on.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--devicetype <TYPE>}
|
||||||
|
\li The type of the device to run applications on:
|
||||||
|
\list
|
||||||
|
\li \c {Android.Device.Type} for Android devices.
|
||||||
|
\li \c {Desktop} for code running on the local desktop.
|
||||||
|
\li \c {Ios.Device.Type} for iOS devices.
|
||||||
|
\li \c {Ios.Simulator.Type} for iOS simulators.
|
||||||
|
\li \c {GenericLinuxOsType} for embedded Linux devices.
|
||||||
|
\li \c {WebAssemblyDeviceType} for web browsers.
|
||||||
|
\endlist
|
||||||
|
The string returned by \c {IDevice::type()}.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {--env <VALUE>}
|
||||||
|
\li Environment variable values for the build environment. You can
|
||||||
|
add multiple entries of this type.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--icon <PATH>}
|
||||||
|
\li Path to the image to use as an icon for the kit.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--id <ID>}
|
||||||
|
\li ID of the kit. \QC automatically sets the ID when it
|
||||||
|
detects Qt versions installed on the computer.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {--<LANG>toolchain <ID>}
|
||||||
|
\li One of the IDs used when adding compilers with the \c {addTC}
|
||||||
|
operation. <LANG> is: \c C, \c Cxx, \c Nim, or something set
|
||||||
|
by a plugin.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--mkspec <PATH>}
|
||||||
|
\li The \c mkspec configuration that qmake uses. Omit this option
|
||||||
|
to use the default \c mkspec of the set Qt version.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {--name <NAME>}
|
||||||
|
\li Name of the kit. You can use variables to generate the kit name
|
||||||
|
based on the kit elements you set with the other operations, such
|
||||||
|
as the Qt version.
|
||||||
|
\li \inlineimage ok.png
|
||||||
|
\row
|
||||||
|
\li \c {--qt <ID>}
|
||||||
|
\li One of the IDs used when adding Qt versions with the \c {addQt}
|
||||||
|
operation.
|
||||||
|
\li
|
||||||
|
\row
|
||||||
|
\li \c {<KEY> <TYPE:VALUE>}
|
||||||
|
\li Additional settings as key-value pairs.
|
||||||
|
\li
|
||||||
|
\endtable
|
||||||
|
|
||||||
|
For more information, see \l{Add kits}.
|
||||||
|
|
||||||
|
\section2 Kit Example
|
||||||
|
|
||||||
|
To add a kit that uses the GCC compiler and the self-built Qt to build
|
||||||
|
applications on Linux, enter:
|
||||||
|
|
||||||
|
\badcode
|
||||||
|
./sdktool addKit \
|
||||||
|
--id "company.product.kit" \
|
||||||
|
--name "Qt %{Qt:Version} (company, product)" \
|
||||||
|
--debuggerid "company.product.toolchain.gdb" \
|
||||||
|
--devicetype GenericLinuxOsType \
|
||||||
|
--sysroot /tmp/sysroot \
|
||||||
|
--Ctoolchain "ProjectExplorer.ToolChain.Gcc:company.product.toolchain.gcc" \
|
||||||
|
--Cxxtoolchain "ProjectExplorer.ToolChain.Gcc:company.product.toolchain.g++" \
|
||||||
|
--qt "company.product.qt" \
|
||||||
|
--mkspec "devices/linux-mipsel-broadcom-97425-g++" \
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
\section1 Adding, Getting, and Finding Keys
|
||||||
|
|
||||||
|
Enter the path to a file relative to the top-level settings directory and
|
||||||
|
without .xml extension, followed by one or more \c {<KEY> <TYPE>:<VALUE>}
|
||||||
|
key-value pairs.
|
||||||
|
|
||||||
|
\section1 Removing Configured Items
|
||||||
|
|
||||||
|
To remove a CMake tool, compiler, debugger, device, Qt version, or kit,
|
||||||
|
enter:
|
||||||
|
|
||||||
|
\badcode
|
||||||
|
rm<Item> --id <ID>
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
Where \c <ID> is the ID of the item.
|
||||||
|
|
||||||
|
\sa {Manage Kits}{How To: Manage Kits}, {Installation}, {Kits}
|
||||||
|
*/
|
@@ -79,6 +79,7 @@
|
|||||||
\previouspage creator-how-tos.html
|
\previouspage creator-how-tos.html
|
||||||
|
|
||||||
\ingroup creator-how-to-projects-create
|
\ingroup creator-how-to-projects-create
|
||||||
|
\ingroup creator-how-to-projects-configure
|
||||||
|
|
||||||
\title Create VCS repositories for new projects
|
\title Create VCS repositories for new projects
|
||||||
|
|
||||||
|
@@ -7,9 +7,10 @@
|
|||||||
\nextpage creator-how-tos.html
|
\nextpage creator-how-tos.html
|
||||||
\ingroup creator-tutorials
|
\ingroup creator-tutorials
|
||||||
|
|
||||||
\title Creating a Qt Widget Based Application
|
\keyword {Creating a Qt Widget Based Application}
|
||||||
|
\title Tutorial: Qt Widgets application
|
||||||
|
|
||||||
\brief How to use the integrated \QD to create a Qt widget based application
|
\brief How to use the integrated \QD to create a Qt widget-based application
|
||||||
for the desktop.
|
for the desktop.
|
||||||
|
|
||||||
This tutorial describes how to use \QC to create a small Qt application,
|
This tutorial describes how to use \QC to create a small Qt application,
|
||||||
@@ -19,54 +20,54 @@
|
|||||||
|
|
||||||
\image qtcreator-textfinder-screenshot.png
|
\image qtcreator-textfinder-screenshot.png
|
||||||
|
|
||||||
\section1 Creating the Text Finder Project
|
\section1 Create the Text Finder project
|
||||||
|
|
||||||
\list 1
|
\list 1
|
||||||
|
|
||||||
\li Select \uicontrol File > \uicontrol {New Project} >
|
\li Go to \uicontrol File > \uicontrol {New Project} >
|
||||||
\uicontrol {Application (Qt)} > \uicontrol {Qt Widgets Application}
|
\uicontrol {Application (Qt)} > \uicontrol {Qt Widgets Application}.
|
||||||
> \uicontrol Choose.
|
|
||||||
|
|
||||||
\image qtcreator-new-qt-gui-application.png {New Project dialog}
|
\image qtcreator-new-project-qt-widgets.webp {New Project dialog}
|
||||||
|
|
||||||
The \uicontrol{Project Location} dialog opens.
|
\li Select \uicontrol Choose to open the \uicontrol {Project Location}
|
||||||
|
dialog.
|
||||||
|
|
||||||
\image qtcreator-intro-and-location-qt-gui.png {Project Location dialog}
|
\image qtcreator-new-project-location-qt-widgets.webp {Project Location dialog}
|
||||||
|
|
||||||
\li In the \uicontrol{Name} field, type \b {TextFinder}.
|
\li In \uicontrol{Name}, type \b {TextFinder}.
|
||||||
|
|
||||||
\li In the \uicontrol {Create in} field, enter the path for the project files.
|
\li In \uicontrol {Create in}, enter the path for the project files.
|
||||||
For example, \c {C:\Qt\examples}.
|
For example, \c {C:\Qt\examples}.
|
||||||
|
|
||||||
\li Select \uicontrol{Next} (on Windows and Linux) or
|
\li Select \uicontrol{Next} (on Windows and Linux) or
|
||||||
\uicontrol Continue (on \macos) to open the
|
\uicontrol Continue (on \macos) to open the
|
||||||
\uicontrol {Define Build System} dialog.
|
\uicontrol {Define Build System} dialog.
|
||||||
|
|
||||||
\image qtcreator-new-project-build-system-qt-gui.png {Define Build System dialog}
|
\image qtcreator-new-project-build-system.webp {Define Build System dialog}
|
||||||
|
|
||||||
\li In the \uicontrol {Build system} field, select \l {CMake}
|
\li In \uicontrol {Build system}, select \l {CMake}
|
||||||
{CMake} as the build system to use for building the project.
|
{CMake} as the build system to use for building the project.
|
||||||
|
|
||||||
\li Select \uicontrol Next or \uicontrol Continue to open the
|
\li Select \uicontrol Next or \uicontrol Continue to open the
|
||||||
\uicontrol{Class Information} dialog.
|
\uicontrol{Class Information} dialog.
|
||||||
|
|
||||||
\image qtcreator-class-info-qt-gui.png {Class Information dialog}
|
\image qtcreator-new-project-class-info.webp {Class Information dialog}
|
||||||
|
|
||||||
\li In the \uicontrol{Class name} field, type \b {TextFinder} as the class
|
\li In \uicontrol{Class name}, type \b {TextFinder} as the class
|
||||||
name.
|
name.
|
||||||
|
|
||||||
\li In the \uicontrol{Base class} list, select \b {QWidget} as the base
|
\li In \uicontrol{Base class}, select \b {QWidget} as the base
|
||||||
class type.
|
class type.
|
||||||
|
|
||||||
\note The \uicontrol{Header file}, \uicontrol{Source file} and \uicontrol{Form file}
|
\note \uicontrol{Header file}, \uicontrol{Source file} and \uicontrol{Form file}
|
||||||
fields are automatically updated to match the name of the class.
|
s are automatically updated to match the name of the class.
|
||||||
|
|
||||||
\li Select \uicontrol Next or \uicontrol Continue to open the
|
\li Select \uicontrol Next or \uicontrol Continue to open the
|
||||||
\uicontrol {Translation File} dialog.
|
\uicontrol {Translation File} dialog.
|
||||||
|
|
||||||
\image qtcreator-new-qt-gui-application-translationfile.png {Translation File dialog}
|
\image qtcreator-new-project-translation-file.webp {Translation File dialog}
|
||||||
|
|
||||||
\li In the \uicontrol Language field, you can select a language that you
|
\li In \uicontrol Language, you can select a language that you
|
||||||
plan to \l {Use Qt Linguist}{translate} the application to. This
|
plan to \l {Use Qt Linguist}{translate} the application to. This
|
||||||
sets up localization support for the application. You can add other
|
sets up localization support for the application. You can add other
|
||||||
languages later by editing the project file.
|
languages later by editing the project file.
|
||||||
@@ -74,7 +75,7 @@
|
|||||||
\li Select \uicontrol Next or \uicontrol Continue to open the
|
\li Select \uicontrol Next or \uicontrol Continue to open the
|
||||||
\uicontrol {Kit Selection} dialog.
|
\uicontrol {Kit Selection} dialog.
|
||||||
|
|
||||||
\image qtcreator-new-project-qt-versions-qt-gui.png {Kit Selection dialog}
|
\image qtcreator-new-project-kit-selection.webp {Kit Selection dialog}
|
||||||
|
|
||||||
\li Select build and run \l{Kits}{kits} for your
|
\li Select build and run \l{Kits}{kits} for your
|
||||||
project.
|
project.
|
||||||
@@ -82,7 +83,7 @@
|
|||||||
\li Select \uicontrol Next or \uicontrol Continue to open the
|
\li Select \uicontrol Next or \uicontrol Continue to open the
|
||||||
\uicontrol {Project Management} dialog.
|
\uicontrol {Project Management} dialog.
|
||||||
|
|
||||||
\image qtcreator-new-project-summary-qt-gui.png {Project Management dialog}
|
\image qtcreator-new-project-summary.webp {Project Management dialog}
|
||||||
|
|
||||||
\li Review the project settings, and select \uicontrol{Finish} (on Windows and
|
\li Review the project settings, and select \uicontrol{Finish} (on Windows and
|
||||||
Linux) or \uicontrol Done (on \macos) to create the project.
|
Linux) or \uicontrol Done (on \macos) to create the project.
|
||||||
@@ -111,18 +112,18 @@
|
|||||||
If you selected CMake as the build system, \QC created a CMakeLists.txt
|
If you selected CMake as the build system, \QC created a CMakeLists.txt
|
||||||
project file for you.
|
project file for you.
|
||||||
|
|
||||||
\section1 Filling in the Missing Pieces
|
\section1 Fill in the missing pieces
|
||||||
|
|
||||||
Begin by designing the user interface and then move on to filling
|
Begin by designing the user interface and then move on to filling
|
||||||
in the missing code. Finally, add the find functionality.
|
in the missing code. Finally, add the find functionality.
|
||||||
|
|
||||||
\section2 Designing the User Interface
|
\section2 Design the user interface
|
||||||
|
|
||||||
\image qtcreator-textfinder-ui.png {Text Finder UI}
|
\image qtcreator-textfinder-ui.png {Text Finder UI}
|
||||||
|
|
||||||
\list 1
|
\list 1
|
||||||
|
|
||||||
\li In the \uicontrol{Editor} mode, double-click the textfinder.ui file in the
|
\li In the \uicontrol {Edit} mode, double-click the textfinder.ui file in the
|
||||||
\uicontrol{Projects} view to launch the integrated \QD.
|
\uicontrol{Projects} view to launch the integrated \QD.
|
||||||
|
|
||||||
\li Drag the following widgets to the form:
|
\li Drag the following widgets to the form:
|
||||||
@@ -138,10 +139,10 @@
|
|||||||
\image qtcreator-textfinder-ui-widgets.png {Adding widgets to Text Finder UI}
|
\image qtcreator-textfinder-ui-widgets.png {Adding widgets to Text Finder UI}
|
||||||
|
|
||||||
\note To easily locate the widgets, use the search box at the top of the
|
\note To easily locate the widgets, use the search box at the top of the
|
||||||
\uicontrol Sidebar. For example, to find the \uicontrol Label widget, start typing
|
\uicontrol {Widget Box}. For example, to find the \uicontrol Label widget,
|
||||||
the word \b label.
|
start typing the word \b label.
|
||||||
|
|
||||||
\image qtcreator-textfinder-filter.png {Filter field}
|
\image qtcreator-textfinder-filter.png {Filter}
|
||||||
|
|
||||||
\li Double-click the \uicontrol{Label} widget and enter the text
|
\li Double-click the \uicontrol{Label} widget and enter the text
|
||||||
\b{Keyword}.
|
\b{Keyword}.
|
||||||
@@ -199,7 +200,7 @@
|
|||||||
For more information about designing forms with \QD, see the
|
For more information about designing forms with \QD, see the
|
||||||
\l{\QD Manual}.
|
\l{\QD Manual}.
|
||||||
|
|
||||||
\section2 Completing the Header File
|
\section2 Complete the header file
|
||||||
|
|
||||||
The textfinder.h file already has the necessary #includes, a constructor,
|
The textfinder.h file already has the necessary #includes, a constructor,
|
||||||
a destructor, and the \c{Ui} object. You need to add a private function,
|
a destructor, and the \c{Ui} object. You need to add a private function,
|
||||||
@@ -218,7 +219,7 @@
|
|||||||
|
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
\section2 Completing the Source File
|
\section2 Complete the source file
|
||||||
|
|
||||||
Now that the header file is complete, move on to the source file,
|
Now that the header file is complete, move on to the source file,
|
||||||
textfinder.cpp.
|
textfinder.cpp.
|
||||||
@@ -258,7 +259,7 @@
|
|||||||
QMetaObject::connectSlotsByName(TextFinder);
|
QMetaObject::connectSlotsByName(TextFinder);
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
\section2 Creating a Resource File
|
\section2 Create a resource file
|
||||||
|
|
||||||
You need a resource file (.qrc) within which you embed the input
|
You need a resource file (.qrc) within which you embed the input
|
||||||
text file. The input file can be any .txt file with a paragraph of text.
|
text file. The input file can be any .txt file with a paragraph of text.
|
||||||
@@ -269,32 +270,32 @@
|
|||||||
|
|
||||||
\list 1
|
\list 1
|
||||||
|
|
||||||
\li Select \uicontrol File > \uicontrol {New File} >
|
\li Go to \uicontrol File > \uicontrol {New File} >
|
||||||
\uicontrol Qt > \uicontrol {Qt Resource File} > \uicontrol Choose.
|
\uicontrol Qt > \uicontrol {Qt Resource File} > \uicontrol Choose.
|
||||||
|
|
||||||
\image qtcreator-add-resource-wizard.png {New File dialog}
|
\image qtcreator-new-file-qrc.webp {New File dialog}
|
||||||
|
|
||||||
The \uicontrol {Choose the Location} dialog opens.
|
The \uicontrol {Choose the Location} dialog opens.
|
||||||
|
|
||||||
\image qtcreator-add-resource-wizard2.png {Choose the Location dialog}
|
\image qtcreator-new-file-qrc1.webp {Choose the Location dialog}
|
||||||
|
|
||||||
\li In the \uicontrol{Name} field, enter \b{textfinder}.
|
\li In \uicontrol{Name}, enter \b{textfinder}.
|
||||||
|
|
||||||
\li In the \uicontrol{Path} field, enter the path to the project,
|
\li In \uicontrol{Path}, enter the path to the project,
|
||||||
and select \uicontrol Next or \uicontrol Continue.
|
and select \uicontrol Next or \uicontrol Continue.
|
||||||
|
|
||||||
The \uicontrol{Project Management} dialog opens.
|
The \uicontrol{Project Management} dialog opens.
|
||||||
|
|
||||||
\image qtcreator-add-resource-wizard3.png {Project Management dialog}
|
\image qtcreator-new-file-qrc2.webp {Project Management dialog}
|
||||||
|
|
||||||
|
|
||||||
\li In the \uicontrol{Add to project} field, select \b{TextFinder}
|
\li In \uicontrol{Add to project}, select \b{TextFinder}
|
||||||
and select \uicontrol{Finish} or \uicontrol Done to open the file
|
and select \uicontrol{Finish} or \uicontrol Done to open the file
|
||||||
in the code editor.
|
in the code editor.
|
||||||
|
|
||||||
\li Select \uicontrol Add > \uicontrol {Add Prefix}.
|
\li Select \uicontrol Add > \uicontrol {Add Prefix}.
|
||||||
|
|
||||||
\li In the \uicontrol{Prefix} field, replace the default prefix with a slash
|
\li In \uicontrol{Prefix}, replace the default prefix with a slash
|
||||||
(/).
|
(/).
|
||||||
|
|
||||||
\li Select \uicontrol Add > \uicontrol {Add Files}, to locate and add
|
\li Select \uicontrol Add > \uicontrol {Add Files}, to locate and add
|
||||||
@@ -304,7 +305,7 @@
|
|||||||
|
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
\section1 Adding Resources to Project File
|
\section1 Add resources to the project file
|
||||||
|
|
||||||
For the text file to appear when you run the application, you must specify
|
For the text file to appear when you run the application, you must specify
|
||||||
the resource file as a source file in the \e CMakeLists.txt file that the
|
the resource file as a source file in the \e CMakeLists.txt file that the
|
||||||
@@ -314,10 +315,9 @@
|
|||||||
\skipto set(PROJECT_SOURCES
|
\skipto set(PROJECT_SOURCES
|
||||||
\printuntil )
|
\printuntil )
|
||||||
|
|
||||||
\section1 Compiling and Running Your Application
|
\section1 Build and run your application
|
||||||
|
|
||||||
Now that you have all the necessary files, select the
|
Now that you have all the necessary files, select
|
||||||
\inlineimage icons/run_small.png
|
\inlineimage icons/run_small.png to build and run your application.
|
||||||
button to compile and run your application.
|
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
@@ -119,5 +119,5 @@
|
|||||||
To import device profiles from .qdp files, select \uicontrol Open. To save
|
To import device profiles from .qdp files, select \uicontrol Open. To save
|
||||||
them as .qdp files, select \uicontrol Save.
|
them as .qdp files, select \uicontrol Save.
|
||||||
|
|
||||||
\sa {Creating a Qt Widget Based Application}, {Adding \QD Plugins}
|
\sa {Tutorial: Qt Widgets application}, {Adding \QD Plugins}
|
||||||
*/
|
*/
|
||||||
|
@@ -69,5 +69,5 @@
|
|||||||
\MinGW or installing a Qt version that was built with Microsoft Visual Studio,
|
\MinGW or installing a Qt version that was built with Microsoft Visual Studio,
|
||||||
depending on which configuration you want to use for your applications.
|
depending on which configuration you want to use for your applications.
|
||||||
|
|
||||||
\sa {Creating a Qt Widget Based Application}, {\QD}
|
\sa {Tutorial: Qt Widgets application}, {\QD}
|
||||||
*/
|
*/
|
||||||
|
@@ -474,7 +474,7 @@
|
|||||||
\li Mode
|
\li Mode
|
||||||
\li Modes correspond to complete screens of controls, specialized
|
\li Modes correspond to complete screens of controls, specialized
|
||||||
for a task.
|
for a task.
|
||||||
\image qtcreator-mode-selector.png {Mode selector}
|
\image qtcreator-mode-selector.webp {Mode selector}
|
||||||
\li You can add a mode for a new type of editor, for example.
|
\li You can add a mode for a new type of editor, for example.
|
||||||
Use descriptive, but short mode names. They have to fit in the
|
Use descriptive, but short mode names. They have to fit in the
|
||||||
\uicontrol {Mode selector}.
|
\uicontrol {Mode selector}.
|
||||||
|
BIN
doc/qtdesignstudio/images/qds-help-in-code-view.webp
Normal file
After Width: | Height: | Size: 22 KiB |
@@ -4,16 +4,16 @@ import qbs.FileInfo
|
|||||||
import qbs.Utilities
|
import qbs.Utilities
|
||||||
|
|
||||||
Module {
|
Module {
|
||||||
property string qtcreator_display_version: '14.0.0-rc1'
|
property string qtcreator_display_version: '14.0.0'
|
||||||
property string ide_version_major: '13'
|
property string ide_version_major: '14'
|
||||||
property string ide_version_minor: '0'
|
property string ide_version_minor: '0'
|
||||||
property string ide_version_release: '84'
|
property string ide_version_release: '0'
|
||||||
property string qtcreator_version: ide_version_major + '.' + ide_version_minor + '.'
|
property string qtcreator_version: ide_version_major + '.' + ide_version_minor + '.'
|
||||||
+ ide_version_release
|
+ ide_version_release
|
||||||
|
|
||||||
property string ide_compat_version_major: '13'
|
property string ide_compat_version_major: '14'
|
||||||
property string ide_compat_version_minor: '0'
|
property string ide_compat_version_minor: '0'
|
||||||
property string ide_compat_version_release: '84'
|
property string ide_compat_version_release: '0'
|
||||||
property string qtcreator_compat_version: ide_compat_version_major + '.'
|
property string qtcreator_compat_version: ide_compat_version_major + '.'
|
||||||
+ ide_compat_version_minor + '.' + ide_compat_version_release
|
+ ide_compat_version_minor + '.' + ide_compat_version_release
|
||||||
|
|
||||||
|
@@ -632,6 +632,9 @@ class DumperBase():
|
|||||||
self.register_struct('@QList<@QStandardItemData>', p5=1, p6=3)
|
self.register_struct('@QList<@QStandardItemData>', p5=1, p6=3)
|
||||||
self.register_struct('@QList<@QRect>', p5=1, p6=3)
|
self.register_struct('@QList<@QRect>', p5=1, p6=3)
|
||||||
|
|
||||||
|
typeid_string_list = self.register_struct('@QList<@QString>', p5=1, p6=3)
|
||||||
|
self.register_typedef('@QStringList', typeid_string_list)
|
||||||
|
|
||||||
typeid_var_list = self.register_struct('@QList<@QVariant>', p5=1, p6=3)
|
typeid_var_list = self.register_struct('@QList<@QVariant>', p5=1, p6=3)
|
||||||
self.register_typedef('@QVariantList', typeid_var_list)
|
self.register_typedef('@QVariantList', typeid_var_list)
|
||||||
|
|
||||||
|
@@ -24,6 +24,7 @@
|
|||||||
"qbs.Probes",
|
"qbs.Probes",
|
||||||
"qbs.Process",
|
"qbs.Process",
|
||||||
"qbs.PropertyList",
|
"qbs.PropertyList",
|
||||||
|
"qbs.ProviderUtils",
|
||||||
"qbs.TemporaryDir",
|
"qbs.TemporaryDir",
|
||||||
"qbs.TextFile",
|
"qbs.TextFile",
|
||||||
"qbs.UnixUtils",
|
"qbs.UnixUtils",
|
||||||
|
@@ -19,7 +19,6 @@ Module {
|
|||||||
exports: [ "qbs/Depends 1.0" ]
|
exports: [ "qbs/Depends 1.0" ]
|
||||||
prototype: "QQuickItem"
|
prototype: "QQuickItem"
|
||||||
Property { name: "condition"; type: "bool" }
|
Property { name: "condition"; type: "bool" }
|
||||||
Property { name: "enableFallback"; type: "bool" }
|
|
||||||
Property { name: "limitToSubProject"; type: "bool" }
|
Property { name: "limitToSubProject"; type: "bool" }
|
||||||
Property { name: "multiplexConfigurationIds"; type: "string"; isList: true }
|
Property { name: "multiplexConfigurationIds"; type: "string"; isList: true }
|
||||||
Property { name: "name"; type: "string" }
|
Property { name: "name"; type: "string" }
|
||||||
@@ -93,6 +92,8 @@ Module {
|
|||||||
name: "ModuleProvider"
|
name: "ModuleProvider"
|
||||||
exports: [ "qbs/ModuleProvider 1.0" ]
|
exports: [ "qbs/ModuleProvider 1.0" ]
|
||||||
prototype: "QQuickItem"
|
prototype: "QQuickItem"
|
||||||
|
Property { name: "isEager"; type: "bool" }
|
||||||
|
Property { name: "moduleName"; type: "string" }
|
||||||
Property { name: "name"; type: "string" }
|
Property { name: "name"; type: "string" }
|
||||||
Property { name: "outputBaseDir"; type: "string" }
|
Property { name: "outputBaseDir"; type: "string" }
|
||||||
Property { name: "relativeSearchPaths"; type: "string"; isList: true }
|
Property { name: "relativeSearchPaths"; type: "string"; isList: true }
|
||||||
|
@@ -1,10 +1,10 @@
|
|||||||
cmake_minimum_required(VERSION 3.16)
|
cmake_minimum_required(VERSION 3.16)
|
||||||
|
|
||||||
# Remove when sharing with others.
|
# Remove when sharing with others.
|
||||||
@if %{JS: Util.isDirectory('%{QtCreatorBuild}/Qt Creator.app/Contents/Resources')}
|
@if %{JS: Util.isDirectory('%{QtCreatorBuild}/Qt Creator.app/Contents/Resources/lib/cmake/QtCreator')}
|
||||||
list(APPEND CMAKE_PREFIX_PATH "%{QtCreatorBuild}/Qt Creator.app/Contents/Resources")
|
list(APPEND CMAKE_PREFIX_PATH "%{QtCreatorBuild}/Qt Creator.app/Contents/Resources")
|
||||||
@else
|
@else
|
||||||
@if %{JS: Util.isDirectory('%{QtCreatorBuild}/Contents/Resources')}
|
@if %{JS: Util.isDirectory('%{QtCreatorBuild}/Contents/Resources/lib/cmake/QtCreator')}
|
||||||
list(APPEND CMAKE_PREFIX_PATH "%{QtCreatorBuild}/Contents/Resources")
|
list(APPEND CMAKE_PREFIX_PATH "%{QtCreatorBuild}/Contents/Resources")
|
||||||
@else
|
@else
|
||||||
list(APPEND CMAKE_PREFIX_PATH "%{QtCreatorBuild}")
|
list(APPEND CMAKE_PREFIX_PATH "%{QtCreatorBuild}")
|
||||||
|
@@ -7811,7 +7811,7 @@ Please check the output pane for more information.</source>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Also warns in the code editor about QML features that are not properly supported by the Qt Quick Designer.</source>
|
<source>Also warns in the code editor about QML features that are not properly supported by the Qt Quick Designer.</source>
|
||||||
<translation>Zeigt auch im Code-Editor eine Warnung bei QML-Features an, die vom Qt Quick Designer nicht vollständig unterstützt werden.</translation>
|
<translation>Zeigt auch im Code-Editor eine Warnung bei QML-Funktionen an, die vom Qt Quick Designer nicht vollständig unterstützt werden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Internationalization</source>
|
<source>Internationalization</source>
|
||||||
@@ -10765,7 +10765,7 @@ Locked components cannot be modified or selected.</source>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Verifying package integrity...</source>
|
<source>Verifying package integrity...</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Prüfe die Integrität des Pakets...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Unarchiving error.</source>
|
<source>Unarchiving error.</source>
|
||||||
@@ -10927,7 +10927,7 @@ Dies kann nicht rückgängig gemacht werden.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>The device has to be connected with ADB debugging enabled to use this feature.</source>
|
<source>The device has to be connected with ADB debugging enabled to use this feature.</source>
|
||||||
<translation>Das Gerät muss mit aktiviertem ADB-Debuggen angeschlossen sein, um diese Funktionalität nutzen zu können.</translation>
|
<translation>Das Gerät muss mit aktiviertem ADB-Debuggen angeschlossen sein, um diese Funktion nutzen zu können.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Opening connection port %1 failed.</source>
|
<source>Opening connection port %1 failed.</source>
|
||||||
@@ -10963,7 +10963,7 @@ Dies kann nicht rückgängig gemacht werden.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Android support is not yet configured.</source>
|
<source>Android support is not yet configured.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Android-Unterstützung ist noch nicht konfiguriert.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>The device info returned from AvdDialog is invalid.</source>
|
<source>The device info returned from AvdDialog is invalid.</source>
|
||||||
@@ -11088,7 +11088,7 @@ Dies kann nicht rückgängig gemacht werden.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Include default features for Qt modules.</source>
|
<source>Include default features for Qt modules.</source>
|
||||||
<translation>Standard-Features für Qt-Module einschließen.</translation>
|
<translation>Standardfunktionen für Qt-Module einschließen.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Add</source>
|
<source>Add</source>
|
||||||
@@ -11169,11 +11169,11 @@ Dies kann nicht rückgängig gemacht werden.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Cannot find the package name from AndroidManifest.xml nor build.gradle files at "%1".</source>
|
<source>Cannot find the package name from AndroidManifest.xml nor build.gradle files at "%1".</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Konnte den Paketnamen nicht aus den Informationen in der AndroidManifest.xml-Datei oder der build.gradle-Datei in "%1" bestimmen.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Deployment failed with the following errors:</source>
|
<source>Deployment failed with the following errors:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Das Deployment ist mit den folgenden Fehlern fehlgeschlagen:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Install an APK File</source>
|
<source>Install an APK File</source>
|
||||||
@@ -11397,7 +11397,7 @@ Der vom Kit mindestens benötigte API-Level ist %1.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Cannot open "%1".</source>
|
<source>Cannot open "%1".</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>"%1" kann nicht geöffnet werden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Cannot parse "%1".</source>
|
<source>Cannot parse "%1".</source>
|
||||||
@@ -11599,39 +11599,39 @@ Installieren Sie diese manuell, nachdem der aktuelle Vorgang abgeschlossen ist.
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Finished successfully.</source>
|
<source>Finished successfully.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Erfolgreich abgeschlossen.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Installing / Uninstalling selected packages...</source>
|
<source>Installing / Uninstalling selected packages...</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Installiere / Deinstalliere ausgewählte Pakete...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Closing the preferences dialog will cancel the running and scheduled SDK operations.</source>
|
<source>Closing the preferences dialog will cancel the running and scheduled SDK operations.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Wenn Sie den Einstellungsdialog schließen, werden die laufenden und geplanten SDK-Operationen abgebrochen.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Closing the options dialog will cancel the running and scheduled SDK operations.</source>
|
<source>Closing the options dialog will cancel the running and scheduled SDK operations.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Wenn Sie den Einstellungsdialog schließen, werden die laufenden und geplanten SDK-Operationen abgebrochen.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Uninstalling %1...</source>
|
<source>Uninstalling %1...</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Deinstalliere %1...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Installing %1...</source>
|
<source>Installing %1...</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Installiere %1...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Updating installed packages...</source>
|
<source>Updating installed packages...</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Aktualisiere installierte Pakete...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>[Packages to be uninstalled:]</source>
|
<source>[Packages to be uninstalled:]</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>[Pakete, die deinstalliert werden sollen:]</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>[Packages to be installed:]</source>
|
<source>[Packages to be installed:]</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>[Pakete, die installiert werden sollen:]</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Android SDK Changes</source>
|
<source>Android SDK Changes</source>
|
||||||
@@ -11720,7 +11720,7 @@ Installieren Sie diese manuell, nachdem der aktuelle Vorgang abgeschlossen ist.
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Failed to start AVD emulator for "%1" device.</source>
|
<source>Failed to start AVD emulator for "%1" device.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Das Starten des AVD-Emulators für das Gerät "%1" ist fehlgeschlagen.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Clean Environment</source>
|
<source>Clean Environment</source>
|
||||||
@@ -12340,11 +12340,11 @@ und das Überschreiben Ihrer Einstellungen erfordert. Das Überschreiben erlaube
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Use a timeout while executing test cases.</source>
|
<source>Use a timeout while executing test cases.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Zeitlimit für das Ausführen von Testfällen verwenden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Timeout used when executing test cases. This will apply for each test case on its own, not the whole project. Overrides test framework or build system defaults.</source>
|
<source>Timeout used when executing test cases. This will apply for each test case on its own, not the whole project. Overrides test framework or build system defaults.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Zeitlimit, das für das Ausführen von Testfällen benutzt wird. Dieses wird für jeden Testfall einzeln angewendet, nicht für das gesamte Projekt. Überschreibt die Vorgaben des Test-Frameworks und des Build-Systems.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Omit run configuration warnings</source>
|
<source>Omit run configuration warnings</source>
|
||||||
@@ -12494,23 +12494,23 @@ Warnung: Dies ist eine experimentelle Funktion und könnte dazu führen, dass di
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Apply path filters before scanning for tests.</source>
|
<source>Apply path filters before scanning for tests.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Pfade vor dem Suchen nach Tests filtern.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Wildcard expressions for filtering:</source>
|
<source>Wildcard expressions for filtering:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Ausdrücke mit Platzhaltern, die zum Filtern benutzt werden:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Add</source>
|
<source>Add</source>
|
||||||
<translation type="unfinished">Hinzufügen</translation>
|
<translation>Hinzufügen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Remove</source>
|
<source>Remove</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Entfernen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Limit Files to Path Patterns</source>
|
<source>Limit Files to Path Patterns</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Dateien auf Suchmuster beschränken</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Scanning for Tests</source>
|
<source>Scanning for Tests</source>
|
||||||
@@ -13028,7 +13028,7 @@ Dies könnte Probleme während der Ausführung verursachen.
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Repeat Tests</source>
|
<source>Repeat Tests</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Tests wiederholen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Output on failure</source>
|
<source>Output on failure</source>
|
||||||
@@ -13728,7 +13728,7 @@ Siehe auch die Einstellungen für Google Test.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>No Data</source>
|
<source>No Data</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Keine Daten</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Axivion</source>
|
<source>Axivion</source>
|
||||||
@@ -13744,15 +13744,15 @@ Siehe auch die Einstellungen für Google Test.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Open Issue in Dashboard</source>
|
<source>Open Issue in Dashboard</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Problem im Dashboard anzeigen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Open Table in Dashboard</source>
|
<source>Open Table in Dashboard</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Tabelle im Dashboard anzeigen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Copy Dashboard Link to Clipboard</source>
|
<source>Copy Dashboard Link to Clipboard</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Dashboard-Link in die Zwischenablage kopieren</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Show rule details</source>
|
<source>Show rule details</source>
|
||||||
@@ -13792,7 +13792,7 @@ Hinweis: Dies macht Sie anfällig für Man-in-the-middle-Angriffe.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Unauthenticated access failed (wrong user), using authenticated access...</source>
|
<source>Unauthenticated access failed (wrong user), using authenticated access...</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Zugriff ohne Authentifizierung ist fehlgeschlagen (falscher Benutzer), verwende authentifizierten Zugriff...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Enter the password for:
|
<source>Enter the password for:
|
||||||
@@ -13830,7 +13830,7 @@ Wollen Sie "%1" mit der Standardanwendung öffnen?</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Search for issues inside the Axivion dashboard or request issue details for Axivion inline annotations to see them here.</source>
|
<source>Search for issues inside the Axivion dashboard or request issue details for Axivion inline annotations to see them here.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Suchen Sie nach Problemen im Axivion-Dashboard oder fordern Sie Problemdetails für Inline-Annotationen von Axivion an, um sie hier anzuzeigen.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Fetch Projects</source>
|
<source>Fetch Projects</source>
|
||||||
@@ -13882,7 +13882,7 @@ Wollen Sie "%1" mit der Standardanwendung öffnen?</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Add...</source>
|
<source>Add...</source>
|
||||||
<translation type="unfinished">Hinzufügen...</translation>
|
<translation>Hinzufügen...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Edit...</source>
|
<source>Edit...</source>
|
||||||
@@ -13890,27 +13890,27 @@ Wollen Sie "%1" mit der Standardanwendung öffnen?</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Remove</source>
|
<source>Remove</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Entfernen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Default dashboard server:</source>
|
<source>Default dashboard server:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Vorgabe-Dashboardserver:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>unset</source>
|
<source>unset</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>nicht gesetzt</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Remove Server Configuration</source>
|
<source>Remove Server Configuration</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Server-Konfiguration löschen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Remove the server configuration "%1"?</source>
|
<source>Remove the server configuration "%1"?</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Server-Konfiguration "%1" löschen?</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Add Dashboard Configuration</source>
|
<source>Add Dashboard Configuration</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Dashboard-Konfiguration hinzufügen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Edit Dashboard Configuration</source>
|
<source>Edit Dashboard Configuration</source>
|
||||||
@@ -16965,7 +16965,7 @@ Stellen Sie sicher, dass der Wert der CMAKE_BUILD_TYPE-Variable derselbe wie der
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>With clangd enabled, Qt Creator fully supports modern C++ when highlighting code, completing symbols and so on.<br>This comes at a higher cost in terms of CPU load and memory usage compared to the built-in code model, which therefore might be the better choice on older machines and/or with legacy code.<br>You can enable/disable and fine-tune clangd <a href="dummy">here</a>.</source>
|
<source>With clangd enabled, Qt Creator fully supports modern C++ when highlighting code, completing symbols and so on.<br>This comes at a higher cost in terms of CPU load and memory usage compared to the built-in code model, which therefore might be the better choice on older machines and/or with legacy code.<br>You can enable/disable and fine-tune clangd <a href="dummy">here</a>.</source>
|
||||||
<translation>Wenn Clangd aktiviert ist, unterstützt Qt Creator semantische Hervorhebung, Symbolvervollständigung und so weiter für Code, der modernes C++ nutzt.<br/>Das wirkt sich nachteilig auf CPU-Last und Speicherverbrauch im Vergleich zum eingebauten Codemodell aus, das deshalb eine bessere Wahl für ältere Maschinen und/oder für Legacy Code sein kann.<br/>Sie können Clangd <a href="dummy">hier</a> aktivieren/deaktivieren und anpassen.</translation>
|
<translation>Wenn Clangd aktiviert ist, unterstützt Qt Creator semantische Hervorhebung, Symbolvervollständigung und so weiter für Code, der modernes C++ nutzt.<br/>Das wirkt sich nachteilig auf CPU-Last und Speicherverbrauch im Vergleich zum integrierten Codemodell aus, das deshalb eine bessere Wahl für ältere Maschinen und/oder für Legacy Code sein kann.<br/>Sie können Clangd <a href="dummy">hier</a> aktivieren/deaktivieren und anpassen.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Enable Anyway</source>
|
<source>Enable Anyway</source>
|
||||||
@@ -25744,7 +25744,7 @@ markers in the source code editor.</source>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source><html><head/><body><p>Enables stepping backwards.</p><p><b>Note:</b> This feature is very slow and unstable on the GDB side. It exhibits unpredictable behavior when going backwards over system calls and is very likely to destroy your debugging session.</p></body></html></source>
|
<source><html><head/><body><p>Enables stepping backwards.</p><p><b>Note:</b> This feature is very slow and unstable on the GDB side. It exhibits unpredictable behavior when going backwards over system calls and is very likely to destroy your debugging session.</p></body></html></source>
|
||||||
<translation><html><head/><body><p>Rückwärts-Debuggen aktivieren.</p><p><b>Hinweis:</b> Diese Funktionalität ist sehr langsam und instabil innerhalb von GDB. Es kann unvorhergesehenes Verhalten auftreten, wenn man rückwärts über einen Systemaufruf springt, und die Debugger-Sitzung kann leicht zerstört werden.</p></body></html></translation>
|
<translation><html><head/><body><p>Rückwärts-Debuggen aktivieren.</p><p><b>Hinweis:</b> Diese Funktion ist sehr langsam und instabil innerhalb von GDB. Es kann unvorhergesehenes Verhalten auftreten, wenn man rückwärts über einen Systemaufruf springt, und die Debugger-Sitzung kann leicht zerstört werden.</p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Debug all child processes</source>
|
<source>Debug all child processes</source>
|
||||||
@@ -28125,7 +28125,7 @@ Bitte wählen Sie einen 64-bit-Debugger in den Kit-Einstellungen für dieses Kit
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>This feature is very slow and unstable on the GDB side. It exhibits unpredictable behavior when going backwards over system calls and is very likely to destroy your debugging session.</source>
|
<source>This feature is very slow and unstable on the GDB side. It exhibits unpredictable behavior when going backwards over system calls and is very likely to destroy your debugging session.</source>
|
||||||
<translation>Diese Funktionalität ist sehr langsam und instabil innerhalb von GDB. Es kann unvorhergesehenes Verhalten auftreten, wenn man rückwärts über einen Systemaufruf springt, und die Debugger-Sitzung kann leicht unbenutzbar werden.</translation>
|
<translation>Diese Funktion ist sehr langsam und instabil innerhalb von GDB. Es kann unvorhergesehenes Verhalten auftreten, wenn man rückwärts über einen Systemaufruf springt, und die Debugger-Sitzung kann leicht unbenutzbar werden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Reverse Direction</source>
|
<source>Reverse Direction</source>
|
||||||
@@ -30618,7 +30618,7 @@ zu deaktivieren, deaktiviert auch die folgenden Plugins:
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Does not interpret key sequences like Ctrl-S in FakeVim but handles them as regular shortcuts. This gives easier access to core functionality at the price of losing some features of FakeVim.</source>
|
<source>Does not interpret key sequences like Ctrl-S in FakeVim but handles them as regular shortcuts. This gives easier access to core functionality at the price of losing some features of FakeVim.</source>
|
||||||
<translation>Tastensequenzen wie Strg-S nicht in FakeVim verarbeiten, sondern sie als gewöhnliche Tastenkombinationen behandeln. Dies erleichtert den Zugriff auf die Kernfunktionalität auf Kosten eingeschränkter Funktionalität von FakeVim.</translation>
|
<translation>Tastensequenzen wie Strg-S nicht in FakeVim verarbeiten, sondern sie als gewöhnliche Tastenkombinationen behandeln. Dies erleichtert den Zugriff auf die Kernfunktionalität auf Kosten eingeschränkter Funktion von FakeVim.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Does not interpret some key presses in insert mode so that code can be properly completed and expanded.</source>
|
<source>Does not interpret some key presses in insert mode so that code can be properly completed and expanded.</source>
|
||||||
@@ -41022,7 +41022,7 @@ Aktivieren Sie dies, wenn Sie 32bit-x86-Binärdateien erstellen wollen, ohne ein
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>%1 (%2, %3 %4 at %5)</source>
|
<source>%1 (%2, %3 %4 at %5)</source>
|
||||||
<translation>%1 (%2, %3 %4 an %5)</translation>
|
<translation>%1 (%2, %3 %4: %5)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Remove</source>
|
<source>Remove</source>
|
||||||
@@ -43192,7 +43192,7 @@ Sie sollten nicht mehrere Test-Frameworks im selben Projekt mischen.</translatio
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>At least one required feature is not present.</source>
|
<source>At least one required feature is not present.</source>
|
||||||
<translation>Mindestens ein benötigtes Feature ist nicht vorhanden.</translation>
|
<translation>Mindestens eine benötigte Funktion ist nicht vorhanden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Platform is not supported.</source>
|
<source>Platform is not supported.</source>
|
||||||
@@ -43200,7 +43200,7 @@ Sie sollten nicht mehrere Test-Frameworks im selben Projekt mischen.</translatio
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>At least one preferred feature is not present.</source>
|
<source>At least one preferred feature is not present.</source>
|
||||||
<translation>Mindestens ein bevorzugtes Feature ist nicht vorhanden.</translation>
|
<translation>Mindestens eine bevorzugte Funktion ist nicht vorhanden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Feature list is set and not of type list.</source>
|
<source>Feature list is set and not of type list.</source>
|
||||||
@@ -47061,7 +47061,7 @@ Weitere Informationen finden Sie auf der Dokumentationsseite "Checking Code
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>JavaScript can break the visual tooling in Qt Design Studio.</source>
|
<source>JavaScript can break the visual tooling in Qt Design Studio.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>JavaScript kann das visuelle Tooling in Qt Design Studio stören.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Duplicate import (%1).</source>
|
<source>Duplicate import (%1).</source>
|
||||||
@@ -47446,23 +47446,23 @@ Sie können eine Annotation "// @uri My.Module.Uri" hinzufügen, um de
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Turn on</source>
|
<source>Turn on</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Einschalten</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Allow versions below Qt %1</source>
|
<source>Allow versions below Qt %1</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Versionen niedriger als Qt %1 erlauben</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Use advanced features (renaming, find usages, and so on) (experimental)</source>
|
<source>Use advanced features (renaming, find usages, and so on) (experimental)</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Erweiterte Funktionen verwenden (umbenennen, Verweise finden und weiteres) (experimentell)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Use from latest Qt version</source>
|
<source>Use from latest Qt version</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Neueste Qt-Version verwenden</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Create .qmlls.ini files for new projects</source>
|
<source>Create .qmlls.ini files for new projects</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>.qmlls.ini-Dateien für neue Projekte erstellen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>QML Language Server</source>
|
<source>QML Language Server</source>
|
||||||
@@ -48561,7 +48561,7 @@ Speichern fehlgeschlagen.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Override device QML viewer:</source>
|
<source>Override device QML viewer:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Statt QML-Viewer auf Gerät verwenden:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>System Environment</source>
|
<source>System Environment</source>
|
||||||
@@ -48574,31 +48574,31 @@ Speichern fehlgeschlagen.</translation>
|
|||||||
<message>
|
<message>
|
||||||
<source>QML Utility</source>
|
<source>QML Utility</source>
|
||||||
<comment>QMLRunConfiguration display name.</comment>
|
<comment>QMLRunConfiguration display name.</comment>
|
||||||
<translation type="unfinished"></translation>
|
<translation>QML-Werkzeug</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>No QML utility found.</source>
|
<source>No QML utility found.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Kein QML-Werkzeug gefunden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>No QML utility specified for target device.</source>
|
<source>No QML utility specified for target device.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Für das Zielgerät wurde kein QML-Werkzeug angegeben.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Qt Version:</source>
|
<source>Qt Version:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Qt-Version:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Qt 6</source>
|
<source>Qt 6</source>
|
||||||
<translation type="unfinished">Qt 6</translation>
|
<translation>Qt 6</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Qt 5</source>
|
<source>Qt 5</source>
|
||||||
<translation type="unfinished">Qt 5</translation>
|
<translation>Qt 5</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>QML Runtime</source>
|
<source>QML Runtime</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>QML-Runtime</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>No script file to execute.</source>
|
<source>No script file to execute.</source>
|
||||||
@@ -48614,7 +48614,7 @@ Speichern fehlgeschlagen.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Update QmlProject File</source>
|
<source>Update QmlProject File</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>QmlProject-Datei aktualisieren</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Warning while loading project file %1.</source>
|
<source>Warning while loading project file %1.</source>
|
||||||
@@ -48622,164 +48622,169 @@ Speichern fehlgeschlagen.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>No Qt Design Studio installation found</source>
|
<source>No Qt Design Studio installation found</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Es wurde keine Installation von Qt Design Studio gefunden</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Would you like to install it now?</source>
|
<source>Would you like to install it now?</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Möchten Sie es jetzt installieren?</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Install</source>
|
<source>Install</source>
|
||||||
<translation type="unfinished">Installieren</translation>
|
<translation>Installieren</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Unknown</source>
|
<source>Unknown</source>
|
||||||
<translation type="unfinished">Unbekannt</translation>
|
<translation>Unbekannt</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>QML PROJECT FILE INFO</source>
|
<source>QML PROJECT FILE INFO</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>QML PROJECT FILE INFO</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Qt Version - </source>
|
<source>Qt Version - </source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Qt-Version - </translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Qt Design Studio Version - </source>
|
<source>Qt Design Studio Version - </source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Qt Design Studio-Version - </translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>No QML project file found - Would you like to create one?</source>
|
<source>No QML project file found - Would you like to create one?</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Keine QML-Projektdatei gefunden - möchten Sie eine erstellen?</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Generate</source>
|
<source>Generate</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Erstellen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Qt Design Studio</source>
|
<source>Qt Design Studio</source>
|
||||||
<translation type="unfinished">Qt Design Studio</translation>
|
<translation>Qt Design Studio</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Open with Qt Design Studio</source>
|
<source>Open with Qt Design Studio</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Mit Qt Design Studio öffnen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Open</source>
|
<source>Open</source>
|
||||||
<translation type="unfinished">Öffnen</translation>
|
<translation>Öffnen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Open with Qt Creator - Text Mode</source>
|
<source>Open with Qt Creator - Text Mode</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Mit Qt Creator im Textmodus öffnen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Remember my choice</source>
|
<source>Remember my choice</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Meine Auswahl speichern</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Export Project</source>
|
<source>Export Project</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Projekt exportieren</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Enable Automatic CMake Generation</source>
|
<source>Enable Automatic CMake Generation</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Automatische CMake-Erstellung aktivieren</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Use MultiLanguage in 2D view</source>
|
<source>Use MultiLanguage in 2D view</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>MultiLanguage in der 2D-Ansicht verwenden</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Reads translations from MultiLanguage plugin.</source>
|
<source>Reads translations from MultiLanguage plugin.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Liest Übersetzungen aus dem MultiLanguage-Plugin.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Failed to start Qt Design Studio.</source>
|
<source>Failed to start Qt Design Studio.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Qt Design Studio konnte nicht gestartet werden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>No project file (*.qmlproject) found for Qt Design Studio.
|
<source>No project file (*.qmlproject) found for Qt Design Studio.
|
||||||
Qt Design Studio requires a .qmlproject based project to open the .ui.qml file.</source>
|
Qt Design Studio requires a .qmlproject based project to open the .ui.qml file.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Es wurde keine Projektdatei (*.qmlproject) für Qt Design Studio gefunden.
|
||||||
|
Qt Design Studio benötigt zum Öffnen der .ui.qml-Datei ein .qmlproject-basiertes Projekt.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Set as Main .qml File</source>
|
<source>Set as Main .qml File</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Als .qml-Hauptdatei setzen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Set as Main .ui.qml File</source>
|
<source>Set as Main .ui.qml File</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Als .ui.qml-Hauptdatei setzen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Project File Generated</source>
|
<source>Project File Generated</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Projektdatei erstellt</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>File created:
|
<source>File created:
|
||||||
|
|
||||||
%1</source>
|
%1</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Datei erstellt:
|
||||||
|
|
||||||
|
%1</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Select File Location</source>
|
<source>Select File Location</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Dateipfad auswählen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Qt Design Studio Project Files (*.qmlproject)</source>
|
<source>Qt Design Studio Project Files (*.qmlproject)</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Qt Design Studio Projektdateien (*.qmlproject)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Invalid Directory</source>
|
<source>Invalid Directory</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Ungültiges Verzeichnis</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Project file must be placed in a parent directory of the QML files.</source>
|
<source>Project file must be placed in a parent directory of the QML files.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Die Projektdatei muss in einem den QML-Dateien übergeordneten Verzeichnis erstellt werden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Problem</source>
|
<source>Problem</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Problem</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Selected directory is far away from the QML file. This can cause unexpected results.
|
<source>Selected directory is far away from the QML file. This can cause unexpected results.
|
||||||
|
|
||||||
Are you sure?</source>
|
Are you sure?</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Das ausgewählte Verzeichnis liegt weit entfernt von der QML-Datei. Dies kann zu unerwarteten Ergebnissen führen.
|
||||||
|
|
||||||
|
Sind Sie sicher?</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Cannot find a valid build system.</source>
|
<source>Cannot find a valid build system.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Es kann kein gültiges Build-System gefunden werden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Cannot create a valid build directory.</source>
|
<source>Cannot create a valid build directory.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Es kann kein gültiges Build-Verzeichnis erstellt werden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Command:</source>
|
<source>Command:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Kommando:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Arguments:</source>
|
<source>Arguments:</source>
|
||||||
<translation type="unfinished">Argumente:</translation>
|
<translation>Argumente:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Build directory:</source>
|
<source>Build directory:</source>
|
||||||
<translation type="unfinished">Build-Verzeichnis:</translation>
|
<translation>Build-Verzeichnis:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>The Selected Kit Is Not Supported</source>
|
<source>The Selected Kit Is Not Supported</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Das gewählte Kit wird nicht unterstützt</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>You cannot use the selected kit to preview Qt for MCUs applications.</source>
|
<source>You cannot use the selected kit to preview Qt for MCUs applications.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Das gewählte Kit kann nicht zur Vorschau von Qt for MCUs-Anwendungen verwendet werden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Cannot find a valid Qt for MCUs kit.</source>
|
<source>Cannot find a valid Qt for MCUs kit.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Es kann kein gültiges Kit für Qt for MCUs gefunden werden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Qt for MCUs Deploy Step</source>
|
<source>Qt for MCUs Deploy Step</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Qt for MCUs Deployment-Schritt</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
@@ -50080,13 +50085,15 @@ Zusätzlich wird die Verbindung zum Gerät getestet.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Use SSH port forwarding for debugging</source>
|
<source>Use SSH port forwarding for debugging</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>SSH-Portweiterleitung zum Debuggen verwenden</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Enable debugging on remote targes which cannot expose gdbserver ports.
|
<source>Enable debugging on remote targes which cannot expose gdbserver ports.
|
||||||
The ssh tunneling is used to map the remote gdbserver port to localhost.
|
The ssh tunneling is used to map the remote gdbserver port to localhost.
|
||||||
The local and remote ports are determined automatically.</source>
|
The local and remote ports are determined automatically.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Mache Debuggen auf entfernten Zielen möglich, die gdbserver-Ports nicht direkt bereitstellen können.
|
||||||
|
Es wird SSH-Tunneling verwendet, um die entfernten gdbserver-Ports auf localhost abzubilden.
|
||||||
|
Die lokalen und entfernten Ports werden automatisch bestimmt.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>&Username:</source>
|
<source>&Username:</source>
|
||||||
@@ -50189,7 +50196,7 @@ Der Steuerprozess konnte nicht gestartet werden.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Device "%1" is disconnected.</source>
|
<source>Device "%1" is disconnected.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Gerät "%1" ist nicht verbunden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Remote Linux</source>
|
<source>Remote Linux</source>
|
||||||
@@ -50214,17 +50221,19 @@ Der Steuerprozess konnte nicht gestartet werden.</translation>
|
|||||||
<message>
|
<message>
|
||||||
<source>Created directory: "%1".
|
<source>Created directory: "%1".
|
||||||
</source>
|
</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Verzeichnis wurde erstellt: "%1".
|
||||||
|
</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Copied %1/%2: "%3" -> "%4".
|
<source>Copied %1/%2: "%3" -> "%4".
|
||||||
</source>
|
</source>
|
||||||
<extracomment>%1/%2 = progress in the form 4/15, %3 and %4 = source and target file paths</extracomment>
|
<extracomment>%1/%2 = progress in the form 4/15, %3 and %4 = source and target file paths</extracomment>
|
||||||
<translation type="unfinished"></translation>
|
<translation>%1/%2 kopiert: "%3 -> "%4".
|
||||||
|
</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Failed to deploy files.</source>
|
<source>Failed to deploy files.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Deployment der Dateien ist fehlgeschlagen.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Device is considered unconnected. Re-run device test to reset state.</source>
|
<source>Device is considered unconnected. Re-run device test to reset state.</source>
|
||||||
@@ -50366,15 +50375,15 @@ Wenn Sie noch keinen privaten Schlüssel besitzen, können Sie hier auch einen e
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>%1 failed to start: %2</source>
|
<source>%1 failed to start: %2</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>%1 konnte nicht gestartet werden: %2</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>%1 crashed.</source>
|
<source>%1 crashed.</source>
|
||||||
<translation type="unfinished">%1 ist abgestürzt.</translation>
|
<translation>%1 ist abgestürzt.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>%1 failed with exit code %2.</source>
|
<source>%1 failed with exit code %2.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>%1 ist mit Rückgabewert %2 fehlgeschlagen.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Deploy files</source>
|
<source>Deploy files</source>
|
||||||
@@ -50752,7 +50761,7 @@ Wenn Sie noch keinen privaten Schlüssel besitzen, können Sie hier auch einen e
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Cropping</source>
|
<source>Cropping</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Zuschneiden</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Crop and Trim...</source>
|
<source>Crop and Trim...</source>
|
||||||
@@ -53586,7 +53595,7 @@ Werte kleiner als 100% können überlappende und falsch ausgerichtete Darstellun
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>%1 [built-in]</source>
|
<source>%1 [built-in]</source>
|
||||||
<translation>%1 [eingebaut]</translation>
|
<translation>%1 [integriert]</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>%1 [customizable]</source>
|
<source>%1 [customizable]</source>
|
||||||
@@ -53795,7 +53804,7 @@ Gibt an, wie sich die Rücktaste bezüglich Einrückung verhält.
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Enable built-in camel case &navigation</source>
|
<source>Enable built-in camel case &navigation</source>
|
||||||
<translation>Eingebaute CamelCase-&Navigation aktivieren</translation>
|
<translation>Integrierte CamelCase-&Navigation aktivieren</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>On Mouseover</source>
|
<source>On Mouseover</source>
|
||||||
@@ -54517,15 +54526,15 @@ Bestimmt das Verhalten bezüglich der Einrückung von Fortsetzungszeilen.
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Open Type Hierarchy</source>
|
<source>Open Type Hierarchy</source>
|
||||||
<translation type="unfinished">Klassenhierarchie öffnen</translation>
|
<translation>Klassenhierarchie öffnen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Meta+Shift+T</source>
|
<source>Meta+Shift+T</source>
|
||||||
<translation type="unfinished">Meta+Shift+T</translation>
|
<translation>Meta+Shift+T</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Ctrl+Shift+T</source>
|
<source>Ctrl+Shift+T</source>
|
||||||
<translation type="unfinished">Ctrl+Shift+T</translation>
|
<translation>Ctrl+Shift+T</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Move the View a Page Up and Keep the Cursor Position</source>
|
<source>Move the View a Page Up and Keep the Cursor Position</source>
|
||||||
@@ -54713,23 +54722,23 @@ Bestimmt das Verhalten bezüglich der Einrückung von Fortsetzungszeilen.
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Sort Lines</source>
|
<source>Sort Lines</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Zeilen sortieren</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Go to Previous Word (Camel Case)</source>
|
<source>Go to Previous Word (Camel Case)</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Zum vorhergehenden Wort springen (Camel Case)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Go to Next Word (Camel Case)</source>
|
<source>Go to Next Word (Camel Case)</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Zum nächsten Wort springen (Camel Case)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Go to Previous Word (Camel Case) with Selection</source>
|
<source>Go to Previous Word (Camel Case) with Selection</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Vorhergehendes Wort markieren (Camel Case)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Go to Next Word (Camel Case) with Selection</source>
|
<source>Go to Next Word (Camel Case) with Selection</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Nächstes Wort markieren (Camel Case)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Meta+Shift+S</source>
|
<source>Meta+Shift+S</source>
|
||||||
@@ -55001,7 +55010,7 @@ Drücken Sie zusätzlich die Umschalttaste, wird ein Escape-Zeichen an der aktue
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Documentation Comments</source>
|
<source>Documentation Comments</source>
|
||||||
<translation>Kommentare für Dokumentation</translation>
|
<translation>Dokumentationskommentare</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Automatically creates a Doxygen comment upon pressing enter after a '/**', '/*!', '//!' or '///'.</source>
|
<source>Automatically creates a Doxygen comment upon pressing enter after a '/**', '/*!', '//!' or '///'.</source>
|
||||||
@@ -55969,15 +55978,15 @@ Außer Leerzeichen innerhalb von Kommentaren und Zeichenketten.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Type Hierarchy</source>
|
<source>Type Hierarchy</source>
|
||||||
<translation type="unfinished">Klassenhierarchie</translation>
|
<translation>Typenhierarchie</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>No type hierarchy available</source>
|
<source>No type hierarchy available</source>
|
||||||
<translation type="unfinished">Keine Klassenhierarchie verfügbar</translation>
|
<translation>Keine Typenhierarchie verfügbar</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Reloads the type hierarchy for the symbol under the cursor.</source>
|
<source>Reloads the type hierarchy for the symbol under the cursor.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Lädt die Typenhierarchie für das Symbol unter der Einfügemarke neu.</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
@@ -56735,7 +56744,7 @@ Die Trace-Daten sind verloren.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>watch is not implemented.</source>
|
<source>watch is not implemented.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>"watch" ist nicht implementiert.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Refusing to remove the standard directory "%1".</source>
|
<source>Refusing to remove the standard directory "%1".</source>
|
||||||
@@ -57206,11 +57215,11 @@ Die Trace-Daten sind verloren.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Failed to open output file.</source>
|
<source>Failed to open output file.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Die Ausgabedatei konnte nicht geöffnet werden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Failed to write output file.</source>
|
<source>Failed to write output file.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Die Ausgabedatei konnte nicht geschrieben werden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Command failed.</source>
|
<source>Command failed.</source>
|
||||||
@@ -57241,7 +57250,7 @@ in "%2" aus.
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Default</source>
|
<source>Default</source>
|
||||||
<translation type="unfinished">Vorgabe</translation>
|
<translation>Vorgabe</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Show %1 Column</source>
|
<source>Show %1 Column</source>
|
||||||
@@ -57318,7 +57327,14 @@ To prepend to a variable, use VARIABLE=+VALUE.
|
|||||||
Existing variables can be referenced in a VALUE with ${OTHER}.
|
Existing variables can be referenced in a VALUE with ${OTHER}.
|
||||||
To clear a variable, put its name on a line with nothing else on it.
|
To clear a variable, put its name on a line with nothing else on it.
|
||||||
Lines starting with "##" will be treated as comments.</source>
|
Lines starting with "##" will be treated as comments.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Geben Sie eine Umgebungsvariable pro Zeile ein.
|
||||||
|
Um eine Variable zu setzen oder zu ändern, verwenden Sie VARIABLE=WERT.
|
||||||
|
Um eine Variable zu deaktivieren, stellen Sie der Zeile "#" voran.
|
||||||
|
Um einen Wert an eine Variable anzufügen, verwenden Sie VARIABLE+=WERT.
|
||||||
|
Um einen Wert einer Variable voranzustellen, verwenden Sie VARIABLE=+WERT.
|
||||||
|
Existierende Variablen können in einem WERT mit ${ANDERE} verwendet werden.
|
||||||
|
Um eine Variable zu leeren, schreiben Sie nichts als ihren Namen in eine Zeile.
|
||||||
|
Zeilen, die mit "##" beginnen, werden als Kommentare behandelt.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>&OK</source>
|
<source>&OK</source>
|
||||||
@@ -57436,7 +57452,7 @@ Lines starting with "##" will be treated as comments.</source>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>No Lua interface set</source>
|
<source>No Lua interface set</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Keine Lua-Schnittstelle eingestellt</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
|
@@ -304,9 +304,9 @@ bool FilePath::equals(const FilePath &first, const FilePath &second, Qt::CaseSen
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* Returns true if the two file paths compare equal case-sensitively.
|
* Returns \c true if this file path compares equal to \a other case-sensitively.
|
||||||
* This is relevant on semi-case sensitive systems like Windows with NTFS.
|
* This is relevant on semi-case sensitive systems like Windows with NTFS.
|
||||||
* @see QTCREATORBUG-30846
|
* \sa {https://bugreports.qt.io/browse/QTCREATORBUG-30846}{QTCREATORBUG-30846}
|
||||||
*/
|
*/
|
||||||
bool FilePath::equalsCaseSensitive(const FilePath &other) const
|
bool FilePath::equalsCaseSensitive(const FilePath &other) const
|
||||||
{
|
{
|
||||||
|
@@ -362,7 +362,7 @@ void Layout::setContentsMargins(int left, int top, int right, int bottom)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
Attaches the constructed layout to the provided QWidget \a w.
|
Attaches the constructed layout to the provided QWidget \a widget.
|
||||||
|
|
||||||
This operation can only be performed once per LayoutBuilder instance.
|
This operation can only be performed once per LayoutBuilder instance.
|
||||||
*/
|
*/
|
||||||
@@ -373,7 +373,7 @@ void Layout::attachTo(QWidget *widget)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
Adds the layout item \a item as sub items.
|
Adds the layout item \a item as a sub item.
|
||||||
*/
|
*/
|
||||||
void Layout::addItem(I item)
|
void Layout::addItem(I item)
|
||||||
{
|
{
|
||||||
|
@@ -274,7 +274,10 @@ QString MacroExpander::expand(const QString &stringWithVariables) const
|
|||||||
FilePath MacroExpander::expand(const FilePath &fileNameWithVariables) const
|
FilePath MacroExpander::expand(const FilePath &fileNameWithVariables) const
|
||||||
{
|
{
|
||||||
// We want single variables to expand to fully qualified strings.
|
// We want single variables to expand to fully qualified strings.
|
||||||
return FilePath::fromUserInput(expand(fileNameWithVariables.toString()));
|
const QString host = expand(fileNameWithVariables.host().toString());
|
||||||
|
const QString scheme = expand(fileNameWithVariables.scheme().toString());
|
||||||
|
const QString path = expand(fileNameWithVariables.path());
|
||||||
|
return FilePath::fromParts(scheme, host, path);
|
||||||
}
|
}
|
||||||
|
|
||||||
QByteArray MacroExpander::expand(const QByteArray &stringWithVariables) const
|
QByteArray MacroExpander::expand(const QByteArray &stringWithVariables) const
|
||||||
|
@@ -239,6 +239,12 @@ void MultiTextCursor::removeSelectedText()
|
|||||||
mergeCursors();
|
mergeCursors();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MultiTextCursor::clearSelection()
|
||||||
|
{
|
||||||
|
for (auto cursor = m_cursorList.begin(); cursor != m_cursorList.end(); ++cursor)
|
||||||
|
cursor->clearSelection();
|
||||||
|
}
|
||||||
|
|
||||||
static void insertAndSelect(QTextCursor &cursor, const QString &text, bool selectNewText)
|
static void insertAndSelect(QTextCursor &cursor, const QString &text, bool selectNewText)
|
||||||
{
|
{
|
||||||
if (selectNewText) {
|
if (selectNewText) {
|
||||||
@@ -333,7 +339,8 @@ static QTextLine currentTextLine(const QTextCursor &cursor)
|
|||||||
bool MultiTextCursor::multiCursorEvent(
|
bool MultiTextCursor::multiCursorEvent(
|
||||||
QKeyEvent *e, QKeySequence::StandardKey matchKey, Qt::KeyboardModifiers filterModifiers)
|
QKeyEvent *e, QKeySequence::StandardKey matchKey, Qt::KeyboardModifiers filterModifiers)
|
||||||
{
|
{
|
||||||
uint searchkey = (e->modifiers() | e->key()) & ~(filterModifiers | Qt::AltModifier);
|
filterModifiers |= (Utils::HostOsInfo::isMacHost() ? Qt::KeypadModifier : Qt::AltModifier);
|
||||||
|
uint searchkey = (e->modifiers() | e->key()) & ~filterModifiers;
|
||||||
|
|
||||||
const QList<QKeySequence> bindings = QKeySequence::keyBindings(matchKey);
|
const QList<QKeySequence> bindings = QKeySequence::keyBindings(matchKey);
|
||||||
return bindings.contains(QKeySequence(searchkey));
|
return bindings.contains(QKeySequence(searchkey));
|
||||||
|
@@ -69,6 +69,7 @@ public:
|
|||||||
QString selectedText() const;
|
QString selectedText() const;
|
||||||
/// removes the selected text of all cursors that have a selection from the document
|
/// removes the selected text of all cursors that have a selection from the document
|
||||||
void removeSelectedText();
|
void removeSelectedText();
|
||||||
|
void clearSelection();
|
||||||
|
|
||||||
/// inserts \param text into all cursors, potentially removing correctly selected text
|
/// inserts \param text into all cursors, potentially removing correctly selected text
|
||||||
void insertText(const QString &text, bool selectNewText = false);
|
void insertText(const QString &text, bool selectNewText = false);
|
||||||
|
@@ -601,12 +601,21 @@ void installQASIPackage(Target *target, const FilePath &packagePath)
|
|||||||
}
|
}
|
||||||
|
|
||||||
QStringList arguments = AndroidDeviceInfo::adbSelector(deviceSerialNumber);
|
QStringList arguments = AndroidDeviceInfo::adbSelector(deviceSerialNumber);
|
||||||
arguments << "install" << "-r " << packagePath.path();
|
arguments << "install" << "-r" << packagePath.path();
|
||||||
QString error;
|
QString error;
|
||||||
Process *process = startAdbProcess(arguments, &error);
|
Process *process = startAdbProcess(arguments, &error);
|
||||||
if (process) {
|
if (process) {
|
||||||
// TODO: Potential leak when the process is still running on Creator shutdown.
|
process->setParent(target);
|
||||||
QObject::connect(process, &Process::done, process, &QObject::deleteLater);
|
QObject::connect(process, &Process::done, target, [process] {
|
||||||
|
if (process->result() == ProcessResult::FinishedWithSuccess) {
|
||||||
|
MessageManager::writeSilently(
|
||||||
|
Tr::tr("Android package installation finished with success."));
|
||||||
|
} else {
|
||||||
|
MessageManager::writeDisrupting(Tr::tr("Android package installation failed.")
|
||||||
|
+ '\n' + process->cleanedStdErr());
|
||||||
|
}
|
||||||
|
process->deleteLater();
|
||||||
|
});
|
||||||
} else {
|
} else {
|
||||||
MessageManager::writeDisrupting(
|
MessageManager::writeDisrupting(
|
||||||
Tr::tr("Android package installation failed.\n%1").arg(error));
|
Tr::tr("Android package installation failed.\n%1").arg(error));
|
||||||
|
@@ -54,23 +54,24 @@ AndroidRunner::AndroidRunner(RunControl *runControl, const QString &intentName)
|
|||||||
const int apiLevel = AndroidManager::deviceApiLevel(m_target);
|
const int apiLevel = AndroidManager::deviceApiLevel(m_target);
|
||||||
qCDebug(androidRunnerLog) << "Device API:" << apiLevel;
|
qCDebug(androidRunnerLog) << "Device API:" << apiLevel;
|
||||||
|
|
||||||
m_worker.reset(new AndroidRunnerWorker(this, m_packageName));
|
m_worker = new AndroidRunnerWorker(this, m_packageName);
|
||||||
m_worker->setIntentName(intent);
|
m_worker->setIntentName(intent);
|
||||||
m_worker->setIsPreNougat(apiLevel <= 23);
|
m_worker->setIsPreNougat(apiLevel <= 23);
|
||||||
|
|
||||||
m_worker->moveToThread(&m_thread);
|
m_worker->moveToThread(&m_thread);
|
||||||
|
QObject::connect(&m_thread, &QThread::finished, m_worker, &QObject::deleteLater);
|
||||||
|
|
||||||
connect(this, &AndroidRunner::asyncStart, m_worker.data(), &AndroidRunnerWorker::asyncStart);
|
connect(this, &AndroidRunner::asyncStart, m_worker, &AndroidRunnerWorker::asyncStart);
|
||||||
connect(this, &AndroidRunner::asyncStop, m_worker.data(), &AndroidRunnerWorker::asyncStop);
|
connect(this, &AndroidRunner::asyncStop, m_worker, &AndroidRunnerWorker::asyncStop);
|
||||||
connect(this, &AndroidRunner::androidDeviceInfoChanged,
|
connect(this, &AndroidRunner::androidDeviceInfoChanged,
|
||||||
m_worker.data(), &AndroidRunnerWorker::setAndroidDeviceInfo);
|
m_worker, &AndroidRunnerWorker::setAndroidDeviceInfo);
|
||||||
connect(m_worker.data(), &AndroidRunnerWorker::remoteProcessStarted,
|
|
||||||
|
connect(m_worker, &AndroidRunnerWorker::remoteProcessStarted,
|
||||||
this, &AndroidRunner::handleRemoteProcessStarted);
|
this, &AndroidRunner::handleRemoteProcessStarted);
|
||||||
connect(m_worker.data(), &AndroidRunnerWorker::remoteProcessFinished,
|
connect(m_worker, &AndroidRunnerWorker::remoteProcessFinished,
|
||||||
this, &AndroidRunner::handleRemoteProcessFinished);
|
this, &AndroidRunner::handleRemoteProcessFinished);
|
||||||
connect(m_worker.data(), &AndroidRunnerWorker::remoteOutput,
|
connect(m_worker, &AndroidRunnerWorker::remoteOutput, this, &AndroidRunner::remoteOutput);
|
||||||
this, &AndroidRunner::remoteOutput);
|
connect(m_worker, &AndroidRunnerWorker::remoteErrorOutput,
|
||||||
connect(m_worker.data(), &AndroidRunnerWorker::remoteErrorOutput,
|
|
||||||
this, &AndroidRunner::remoteErrorOutput);
|
this, &AndroidRunner::remoteErrorOutput);
|
||||||
|
|
||||||
connect(&m_outputParser, &QmlDebug::QmlOutputParser::waitingForConnectionOnPort,
|
connect(&m_outputParser, &QmlDebug::QmlOutputParser::waitingForConnectionOnPort,
|
||||||
|
@@ -56,7 +56,7 @@ private:
|
|||||||
QString m_launchedAVDName;
|
QString m_launchedAVDName;
|
||||||
QThread m_thread;
|
QThread m_thread;
|
||||||
QTimer m_checkAVDTimer;
|
QTimer m_checkAVDTimer;
|
||||||
QScopedPointer<AndroidRunnerWorker> m_worker;
|
AndroidRunnerWorker *m_worker = nullptr;
|
||||||
QPointer<ProjectExplorer::Target> m_target;
|
QPointer<ProjectExplorer::Target> m_target;
|
||||||
Utils::Port m_debugServerPort;
|
Utils::Port m_debugServerPort;
|
||||||
QUrl m_qmlServer;
|
QUrl m_qmlServer;
|
||||||
|
@@ -171,24 +171,26 @@ AndroidRunnerWorker::AndroidRunnerWorker(RunWorker *runner, const QString &packa
|
|||||||
m_extraAppParams = runControl->commandLine().arguments();
|
m_extraAppParams = runControl->commandLine().arguments();
|
||||||
|
|
||||||
if (const Store sd = runControl->settingsData(Constants::ANDROID_AM_START_ARGS);
|
if (const Store sd = runControl->settingsData(Constants::ANDROID_AM_START_ARGS);
|
||||||
!sd.values().isEmpty()) {
|
!sd.isEmpty()) {
|
||||||
QTC_CHECK(sd.first().typeId() == QMetaType::QString);
|
QTC_CHECK(sd.first().typeId() == QMetaType::QString);
|
||||||
const QString startArgs = sd.first().toString();
|
const QString startArgs = sd.first().toString();
|
||||||
m_amStartExtraArgs = ProcessArgs::splitArgs(startArgs, OsTypeOtherUnix);
|
m_amStartExtraArgs = ProcessArgs::splitArgs(startArgs, OsTypeOtherUnix);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (const Store sd = runControl->settingsData(Constants::ANDROID_PRESTARTSHELLCMDLIST);
|
if (const Store sd = runControl->settingsData(Constants::ANDROID_PRESTARTSHELLCMDLIST);
|
||||||
!sd.values().isEmpty()) {
|
!sd.isEmpty()) {
|
||||||
QTC_CHECK(sd.first().typeId() == QMetaType::QString);
|
const QVariant &first = sd.first();
|
||||||
const QStringList commands = sd.first().toString().split('\n', Qt::SkipEmptyParts);
|
QTC_CHECK(first.typeId() == QMetaType::QStringList);
|
||||||
|
const QStringList commands = first.toStringList();
|
||||||
for (const QString &shellCmd : commands)
|
for (const QString &shellCmd : commands)
|
||||||
m_beforeStartAdbCommands.append(QString("shell %1").arg(shellCmd));
|
m_beforeStartAdbCommands.append(QString("shell %1").arg(shellCmd));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (const Store sd = runControl->settingsData(Constants::ANDROID_POSTFINISHSHELLCMDLIST);
|
if (const Store sd = runControl->settingsData(Constants::ANDROID_POSTFINISHSHELLCMDLIST);
|
||||||
!sd.values().isEmpty()) {
|
!sd.isEmpty()) {
|
||||||
QTC_CHECK(sd.first().typeId() == QMetaType::QString);
|
const QVariant &first = sd.first();
|
||||||
const QStringList commands = sd.first().toString().split('\n', Qt::SkipEmptyParts);
|
QTC_CHECK(first.typeId() == QMetaType::QStringList);
|
||||||
|
const QStringList commands = first.toStringList();
|
||||||
for (const QString &shellCmd : commands)
|
for (const QString &shellCmd : commands)
|
||||||
m_afterFinishAdbCommands.append(QString("shell %1").arg(shellCmd));
|
m_afterFinishAdbCommands.append(QString("shell %1").arg(shellCmd));
|
||||||
}
|
}
|
||||||
@@ -203,6 +205,7 @@ AndroidRunnerWorker::AndroidRunnerWorker(RunWorker *runner, const QString &packa
|
|||||||
|
|
||||||
QtSupport::QtVersion *version = QtSupport::QtKitAspect::qtVersion(target->kit());
|
QtSupport::QtVersion *version = QtSupport::QtKitAspect::qtVersion(target->kit());
|
||||||
m_useAppParamsForQmlDebugger = version->qtVersion() >= QVersionNumber(5, 12);
|
m_useAppParamsForQmlDebugger = version->qtVersion() >= QVersionNumber(5, 12);
|
||||||
|
m_pidRunner.setParent(this); // Move m_pidRunner object together with *this into a separate thread.
|
||||||
}
|
}
|
||||||
|
|
||||||
AndroidRunnerWorker::~AndroidRunnerWorker()
|
AndroidRunnerWorker::~AndroidRunnerWorker()
|
||||||
|
@@ -259,7 +259,7 @@ void handleInactiveRegions(LanguageClient::Client *client, const JsonRpcMessage
|
|||||||
const QList<Range> inactiveRegions = params->inactiveRegions();
|
const QList<Range> inactiveRegions = params->inactiveRegions();
|
||||||
QList<BlockRange> ifdefedOutBlocks;
|
QList<BlockRange> ifdefedOutBlocks;
|
||||||
for (const Range &r : inactiveRegions) {
|
for (const Range &r : inactiveRegions) {
|
||||||
const int startPos = r.start().toPositionInDocument(doc->document());
|
const int startPos = Position(r.start().line(), 0).toPositionInDocument(doc->document());
|
||||||
const int endPos = r.end().toPositionInDocument(doc->document()) + 1;
|
const int endPos = r.end().toPositionInDocument(doc->document()) + 1;
|
||||||
ifdefedOutBlocks.emplaceBack(startPos, endPos);
|
ifdefedOutBlocks.emplaceBack(startPos, endPos);
|
||||||
}
|
}
|
||||||
|
@@ -37,3 +37,8 @@ extend_qtc_plugin(ClangFormat
|
|||||||
DEFINES
|
DEFINES
|
||||||
TESTDATA_DIR="${CMAKE_CURRENT_SOURCE_DIR}/tests/data"
|
TESTDATA_DIR="${CMAKE_CURRENT_SOURCE_DIR}/tests/data"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
extend_qtc_plugin(ClangFormat
|
||||||
|
CONDITION TARGET LLVM
|
||||||
|
DEPENDS LLVM
|
||||||
|
)
|
||||||
|
@@ -177,10 +177,11 @@ void ClangToolsPlugin::registerAnalyzeActions()
|
|||||||
widget->toolBar()->addWidget(button);
|
widget->toolBar()->addWidget(button);
|
||||||
const auto toolsMenu = new QMenu(widget);
|
const auto toolsMenu = new QMenu(widget);
|
||||||
button->setMenu(toolsMenu);
|
button->setMenu(toolsMenu);
|
||||||
for (const auto &toolInfo : {std::make_pair(ClangTidyTool::instance(),
|
for (const auto &toolInfo :
|
||||||
Constants::RUN_CLANGTIDY_ON_CURRENT_FILE),
|
{std::pair<ClangTool *, Utils::Id>(
|
||||||
std::make_pair(ClazyTool::instance(),
|
ClangTidyTool::instance(), Constants::RUN_CLANGTIDY_ON_CURRENT_FILE),
|
||||||
Constants::RUN_CLAZY_ON_CURRENT_FILE)}) {
|
std::pair<ClangTool *, Utils::Id>(
|
||||||
|
ClazyTool::instance(), Constants::RUN_CLAZY_ON_CURRENT_FILE)}) {
|
||||||
ClangTool * const tool = toolInfo.first;
|
ClangTool * const tool = toolInfo.first;
|
||||||
Command * const cmd = ActionManager::command(toolInfo.second);
|
Command * const cmd = ActionManager::command(toolInfo.second);
|
||||||
QAction *const action = toolsMenu->addAction(tool->name(), [editor, tool] {
|
QAction *const action = toolsMenu->addAction(tool->name(), [editor, tool] {
|
||||||
|