Merge remote-tracking branch 'origin/13.0'
Conflicts: doc/qtcreator/src/overview/creator-only/creator-keyboard-shortcuts.qdoc Change-Id: I2db85da9f4a0593217951313020d71d430986961
77
dist/changelog/changes-13.0.0.md
vendored
@@ -10,22 +10,21 @@ the public Git repository. For example:
|
|||||||
git clone git://code.qt.io/qt-creator/qt-creator.git
|
git clone git://code.qt.io/qt-creator/qt-creator.git
|
||||||
git log --cherry-pick --pretty=oneline origin/12.0..v13.0.0
|
git log --cherry-pick --pretty=oneline origin/12.0..v13.0.0
|
||||||
|
|
||||||
What's new?
|
New plugins
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
* Added Qt Application Manager support
|
|
||||||
|
|
||||||
### Qt Application Manager
|
### Qt Application Manager
|
||||||
|
|
||||||
Adds support for Qt 6 based applications with CMake for creating, building,
|
Adds support for Qt 6 based applications with CMake for creating, building,
|
||||||
deploying, running, and debugging for devices that use the
|
deploying, running, and debugging for devices that use the
|
||||||
[Qt Application Manager](https://doc.qt.io/QtApplicationManager/).
|
[Qt Application Manager](https://doc.qt.io/QtApplicationManager/).
|
||||||
|
|
||||||
([Documentation](https://doc-snapshots.qt.io/qtcreator-13.0/creator-how-to-run-in-app-manager.html))
|
([Documentation](https://doc.qt.io/qtcreator/creator-how-to-run-in-app-manager.html))
|
||||||
|
|
||||||
General
|
General
|
||||||
-------
|
-------
|
||||||
|
|
||||||
|
* Updated the visual style of Welcome mode
|
||||||
* Improved docking (Debug mode, Widget Designer)
|
* Improved docking (Debug mode, Widget Designer)
|
||||||
* Fixed the style of titles and changed them to always be visible
|
* Fixed the style of titles and changed them to always be visible
|
||||||
(removed `View > Views > Automatically Hide View Titlebars`)
|
(removed `View > Views > Automatically Hide View Titlebars`)
|
||||||
@@ -41,19 +40,29 @@ General
|
|||||||
([QTCREATORBUG-29886](https://bugreports.qt.io/browse/QTCREATORBUG-29886))
|
([QTCREATORBUG-29886](https://bugreports.qt.io/browse/QTCREATORBUG-29886))
|
||||||
* Fixed issues with the window actions
|
* Fixed issues with the window actions
|
||||||
([QTCREATORBUG-30381](https://bugreports.qt.io/browse/QTCREATORBUG-30381))
|
([QTCREATORBUG-30381](https://bugreports.qt.io/browse/QTCREATORBUG-30381))
|
||||||
|
* Fixed drag & drop for external tools
|
||||||
|
([QTCREATORBUG-30469](https://bugreports.qt.io/browse/QTCREATORBUG-30469))
|
||||||
* Known Issues
|
* Known Issues
|
||||||
* Installers provided by The Qt Company mostly display English text, not
|
* Installers provided by The Qt Company mostly display English text, not
|
||||||
the system's language
|
the system's language
|
||||||
([QTIFW-3310](https://bugreports.qt.io/browse/QTIFW-3310))
|
([QTIFW-3310](https://bugreports.qt.io/browse/QTIFW-3310))
|
||||||
|
|
||||||
|
Help
|
||||||
|
----
|
||||||
|
|
||||||
|
* Fixed that non-Qt related help files could automatically be registered
|
||||||
|
* Fixed that the option `Highest Version Only` for automatically registering Qt
|
||||||
|
documentation did not work for the Qt Online Installer
|
||||||
|
|
||||||
Editing
|
Editing
|
||||||
-------
|
-------
|
||||||
|
|
||||||
* Made syntax highlighting asynchronous
|
|
||||||
* Fixed that `Shift+Tab` did not always unindent
|
* Fixed that `Shift+Tab` did not always unindent
|
||||||
([QTCREATORBUG-29742](https://bugreports.qt.io/browse/QTCREATORBUG-29742))
|
([QTCREATORBUG-29742](https://bugreports.qt.io/browse/QTCREATORBUG-29742))
|
||||||
* Fixed that `Surround text selection with brackets` did nothing for `<`
|
* Fixed that `Surround text selection with brackets` did nothing for `<`
|
||||||
* Fixed following links without a file name in documents without a file name
|
* Fixed following links without a file name in documents without a file name
|
||||||
|
* Fixed that device tree source files (`.dts`) were opened in the binary editor
|
||||||
|
([QTCREATORBUG-19029](https://bugreports.qt.io/browse/QTCREATORBUG-19029))
|
||||||
|
|
||||||
### C++
|
### C++
|
||||||
|
|
||||||
@@ -69,7 +78,7 @@ Editing
|
|||||||
([QTCREATORBUG-21826](https://bugreports.qt.io/browse/QTCREATORBUG-21826))
|
([QTCREATORBUG-21826](https://bugreports.qt.io/browse/QTCREATORBUG-21826))
|
||||||
* Improved the coding style settings by separating Clang Format and other coding
|
* Improved the coding style settings by separating Clang Format and other coding
|
||||||
style settings, and using a plain text editor for custom Clang Format settings
|
style settings, and using a plain text editor for custom Clang Format settings
|
||||||
([Documentation](https://doc-snapshots.qt.io/qtcreator-13.0/creator-preferences-cpp-code-style.html))
|
([Documentation](https://doc.qt.io/qtcreator/creator-preferences-cpp-code-style.html))
|
||||||
* Fixed that the class wizards used the class name for the include guard
|
* Fixed that the class wizards used the class name for the include guard
|
||||||
instead of the file name
|
instead of the file name
|
||||||
([QTCREATORBUG-30140](https://bugreports.qt.io/browse/QTCREATORBUG-30140))
|
([QTCREATORBUG-30140](https://bugreports.qt.io/browse/QTCREATORBUG-30140))
|
||||||
@@ -82,6 +91,9 @@ Editing
|
|||||||
template class in a namespace
|
template class in a namespace
|
||||||
([QTCREATORBUG-22076](https://bugreports.qt.io/browse/QTCREATORBUG-22076))
|
([QTCREATORBUG-22076](https://bugreports.qt.io/browse/QTCREATORBUG-22076))
|
||||||
* Clangd
|
* Clangd
|
||||||
|
* Improved the function hint tool tip
|
||||||
|
([QTCREATORBUG-26346](https://bugreports.qt.io/browse/QTCREATORBUG-26346),
|
||||||
|
[QTCREATORBUG-30489](https://bugreports.qt.io/browse/QTCREATORBUG-30489))
|
||||||
* Fixed that `Follow Symbol Under Cursor` only worked for exact matches
|
* Fixed that `Follow Symbol Under Cursor` only worked for exact matches
|
||||||
([QTCREATORBUG-29814](https://bugreports.qt.io/browse/QTCREATORBUG-29814))
|
([QTCREATORBUG-29814](https://bugreports.qt.io/browse/QTCREATORBUG-29814))
|
||||||
* Fixed the version check for remote `clangd` executables
|
* Fixed the version check for remote `clangd` executables
|
||||||
@@ -105,7 +117,7 @@ Editing
|
|||||||
|
|
||||||
* Added automatic setup up of language servers for `YAML`, `JSON`, and `Bash`
|
* Added automatic setup up of language servers for `YAML`, `JSON`, and `Bash`
|
||||||
(requires `npm`)
|
(requires `npm`)
|
||||||
([Documentation](https://doc-snapshots.qt.io/qtcreator-13.0/creator-language-servers.html#adding-language-servers))
|
([Documentation](https://doc.qt.io/qtcreator/creator-language-servers.html#adding-language-servers))
|
||||||
|
|
||||||
### Widget Designer
|
### Widget Designer
|
||||||
|
|
||||||
@@ -127,13 +139,18 @@ endings) to the tool bar
|
|||||||
|
|
||||||
* Fixed issues with large addresses
|
* Fixed issues with large addresses
|
||||||
|
|
||||||
|
### Models
|
||||||
|
|
||||||
|
* Fixed a crash when selecting items
|
||||||
|
([QTCREATORBUG-30413](https://bugreports.qt.io/browse/QTCREATORBUG-30413))
|
||||||
|
|
||||||
Projects
|
Projects
|
||||||
--------
|
--------
|
||||||
|
|
||||||
* Added a section `Vanished Targets` to `Projects` mode in case the project
|
* Added a section `Vanished Targets` to `Projects` mode in case the project
|
||||||
was configured for kits that have vanished, as a replacement for the automatic
|
was configured for kits that have vanished, as a replacement for the automatic
|
||||||
creation of "Replacement" kits
|
creation of "Replacement" kits
|
||||||
([Documentation](https://doc-snapshots.qt.io/qtcreator-13.0/creator-how-to-activate-kits.html#copy-custom-settings-from-vanished-targets))
|
([Documentation](https://doc.qt.io/qtcreator/creator-how-to-activate-kits.html#copy-custom-settings-from-vanished-targets))
|
||||||
* Added the status of devices to the device lists
|
* Added the status of devices to the device lists
|
||||||
([QTCREATORBUG-20941](https://bugreports.qt.io/browse/QTCREATORBUG-20941))
|
([QTCREATORBUG-20941](https://bugreports.qt.io/browse/QTCREATORBUG-20941))
|
||||||
* Added the `Preferences > Build & Run > General > Application environment`
|
* Added the `Preferences > Build & Run > General > Application environment`
|
||||||
@@ -157,6 +174,14 @@ Projects
|
|||||||
* Added support for custom output parsers for the configuration of projects
|
* Added support for custom output parsers for the configuration of projects
|
||||||
([QTCREATORBUG-29992](https://bugreports.qt.io/browse/QTCREATORBUG-29992))
|
([QTCREATORBUG-29992](https://bugreports.qt.io/browse/QTCREATORBUG-29992))
|
||||||
* Made cache variables available even if project configuration failed
|
* Made cache variables available even if project configuration failed
|
||||||
|
* Fixed that too many paths were added to the build library search path
|
||||||
|
([QTCREATORBUG-29662](https://bugreports.qt.io/browse/QTCREATORBUG-29662))
|
||||||
|
* Fixed that searching in the project included results from module files
|
||||||
|
not in the project
|
||||||
|
([QTCREATORBUG-30372](https://bugreports.qt.io/browse/QTCREATORBUG-30372))
|
||||||
|
* Fixed that `Follow Symbol` on `add_subdirectory` could jump to a target of
|
||||||
|
the same name
|
||||||
|
([QTCREATORBUG-30510](https://bugreports.qt.io/browse/QTCREATORBUG-30510))
|
||||||
* CMake Presets
|
* CMake Presets
|
||||||
* Fixed `Reload CMake Presets` if the project was not configured yet
|
* Fixed `Reload CMake Presets` if the project was not configured yet
|
||||||
([QTCREATORBUG-30238](https://bugreports.qt.io/browse/QTCREATORBUG-30238))
|
([QTCREATORBUG-30238](https://bugreports.qt.io/browse/QTCREATORBUG-30238))
|
||||||
@@ -166,6 +191,10 @@ Projects
|
|||||||
([QTCREATORBUG-30236](https://bugreports.qt.io/browse/QTCREATORBUG-30236))
|
([QTCREATORBUG-30236](https://bugreports.qt.io/browse/QTCREATORBUG-30236))
|
||||||
* Fixed a freeze with nested presets
|
* Fixed a freeze with nested presets
|
||||||
([QTCREATORBUG-30288](https://bugreports.qt.io/browse/QTCREATORBUG-30288))
|
([QTCREATORBUG-30288](https://bugreports.qt.io/browse/QTCREATORBUG-30288))
|
||||||
|
* Fixed a wrong error message
|
||||||
|
([QTCREATORBUG-30373](https://bugreports.qt.io/browse/QTCREATORBUG-30373))
|
||||||
|
* Fixed a crash when no CMake tool is found
|
||||||
|
([QTCREATORBUG-30505](https://bugreports.qt.io/browse/QTCREATORBUG-30505))
|
||||||
* Conan
|
* Conan
|
||||||
* Fixed that backslashes were wrongly used for paths on Windows
|
* Fixed that backslashes were wrongly used for paths on Windows
|
||||||
([QTCREATORBUG-30326](https://bugreports.qt.io/browse/QTCREATORBUG-30326))
|
([QTCREATORBUG-30326](https://bugreports.qt.io/browse/QTCREATORBUG-30326))
|
||||||
@@ -184,7 +213,7 @@ Projects
|
|||||||
* Fixed that the same Python interpreter could be auto-detected multiple times
|
* Fixed that the same Python interpreter could be auto-detected multiple times
|
||||||
under different names
|
under different names
|
||||||
|
|
||||||
([Documentation](https://doc-snapshots.qt.io/qtcreator-13.0/creator-python-development.html))
|
([Documentation](https://doc.qt.io/qtcreator/creator-python-development.html))
|
||||||
|
|
||||||
Debugging
|
Debugging
|
||||||
---------
|
---------
|
||||||
@@ -200,6 +229,13 @@ Debugging
|
|||||||
* Fixed that breakpoints were not hit while the message dialog about missing
|
* Fixed that breakpoints were not hit while the message dialog about missing
|
||||||
debug information was shown
|
debug information was shown
|
||||||
([QTCREATORBUG-30168](https://bugreports.qt.io/browse/QTCREATORBUG-30168))
|
([QTCREATORBUG-30168](https://bugreports.qt.io/browse/QTCREATORBUG-30168))
|
||||||
|
* LLDB
|
||||||
|
* Fixed setting breakpoints in assembler
|
||||||
|
* Fixed `Run as root`
|
||||||
|
([QTCREATORBUG-30516](https://bugreports.qt.io/browse/QTCREATORBUG-30516))
|
||||||
|
* CDB
|
||||||
|
* Fixed a missing debugger tool tip
|
||||||
|
([QTCREATORBUG-13413](https://bugreports.qt.io/browse/QTCREATORBUG-13413))
|
||||||
|
|
||||||
### Debug Adapter Protocol
|
### Debug Adapter Protocol
|
||||||
|
|
||||||
@@ -215,7 +251,8 @@ Analyzer
|
|||||||
|
|
||||||
### Axivion
|
### Axivion
|
||||||
|
|
||||||
* Added fetching and showing issues
|
* Added a view for listing and searching issues
|
||||||
|
* Added other issue types than `Style Violations` to the editor annotations
|
||||||
|
|
||||||
Terminal
|
Terminal
|
||||||
--------
|
--------
|
||||||
@@ -228,6 +265,7 @@ Terminal
|
|||||||
* Fixed that `Ctrl+W` closed the terminal even when shortcuts were blocked
|
* Fixed that `Ctrl+W` closed the terminal even when shortcuts were blocked
|
||||||
([QTCREATORBUG-30070](https://bugreports.qt.io/browse/QTCREATORBUG-30070))
|
([QTCREATORBUG-30070](https://bugreports.qt.io/browse/QTCREATORBUG-30070))
|
||||||
* Fixed issues with Windows Powershell
|
* Fixed issues with Windows Powershell
|
||||||
|
* Fixed issues with copying Japanese text
|
||||||
|
|
||||||
Version Control Systems
|
Version Control Systems
|
||||||
-----------------------
|
-----------------------
|
||||||
@@ -245,6 +283,11 @@ Test Integration
|
|||||||
|
|
||||||
* Added a locator filter for Qt Test data tags (`qdt`)
|
* Added a locator filter for Qt Test data tags (`qdt`)
|
||||||
|
|
||||||
|
### Catch2
|
||||||
|
|
||||||
|
* Added support for namespaced fixtures
|
||||||
|
* Added support for `SCENARIO_METHOD`
|
||||||
|
|
||||||
Platforms
|
Platforms
|
||||||
---------
|
---------
|
||||||
|
|
||||||
@@ -255,8 +298,13 @@ Platforms
|
|||||||
|
|
||||||
### Android
|
### Android
|
||||||
|
|
||||||
* Add support for target-based android-build directories (??? is that ready? Qt 6.8+ ???)
|
* Add support for target-based android-build directories
|
||||||
([QTBUG-117443](https://bugreports.qt.io/browse/QTBUG-117443))
|
([QTBUG-117443](https://bugreports.qt.io/browse/QTBUG-117443))
|
||||||
|
* Fixed issues with debugging
|
||||||
|
([QTCREATORBUG-29928](https://bugreports.qt.io/browse/QTCREATORBUG-29928),
|
||||||
|
[QTCREATORBUG-30405](https://bugreports.qt.io/browse/QTCREATORBUG-30405))
|
||||||
|
* Fixed a crash when removing Android Qt versions
|
||||||
|
([QTCREATORBUG-30347](https://bugreports.qt.io/browse/QTCREATORBUG-30347))
|
||||||
|
|
||||||
### iOS
|
### iOS
|
||||||
|
|
||||||
@@ -264,13 +312,18 @@ Platforms
|
|||||||
* Fixed deployment and running applications for iOS 17 devices
|
* Fixed deployment and running applications for iOS 17 devices
|
||||||
(application output, debugging, and profiling are not supported)
|
(application output, debugging, and profiling are not supported)
|
||||||
([QTCREATORBUG-29682](https://bugreports.qt.io/browse/QTCREATORBUG-29682))
|
([QTCREATORBUG-29682](https://bugreports.qt.io/browse/QTCREATORBUG-29682))
|
||||||
([Documentation](https://doc-snapshots.qt.io/qtcreator-13.0/creator-developing-ios.html))
|
([Documentation](https://doc.qt.io/qtcreator/creator-developing-ios.html))
|
||||||
|
|
||||||
### Remote Linux
|
### Remote Linux
|
||||||
|
|
||||||
* Fixed that debugging unnecessarily downloaded files from the remote system
|
* Fixed that debugging unnecessarily downloaded files from the remote system
|
||||||
([QTCREATORBUG-29614](https://bugreports.qt.io/browse/QTCREATORBUG-29614))
|
([QTCREATORBUG-29614](https://bugreports.qt.io/browse/QTCREATORBUG-29614))
|
||||||
|
|
||||||
|
### MCU
|
||||||
|
|
||||||
|
* Fixed a crash when fixing errors in MCU kits
|
||||||
|
([QTCREATORBUG-30360](https://bugreports.qt.io/browse/QTCREATORBUG-30360))
|
||||||
|
|
||||||
Credits for these changes go to:
|
Credits for these changes go to:
|
||||||
--------------------------------
|
--------------------------------
|
||||||
Aaron McCarthy
|
Aaron McCarthy
|
||||||
|
@@ -5,13 +5,20 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="sectionlist normallist">
|
<div class="sectionlist normallist">
|
||||||
<div class="heading">
|
<div class="heading">
|
||||||
<h2>Getting Started</h2>
|
<h2>Developing with Qt Creator</h2>
|
||||||
</div>
|
</div>
|
||||||
<div class="indexboxcont indexboxbar">
|
<div class="indexboxcont indexboxbar">
|
||||||
<ul>
|
<ul>
|
||||||
<li><a href="creator-overview.html">Overview</a></li>
|
<li><a href="creator-overview.html">Overview</a></li>
|
||||||
<li><a href="creator-quick-tour.html">User Interface</a></li>
|
<li><a href="creator-getting-started.html">Getting Started</a></li>
|
||||||
<li><a href="creator-configuring.html">Configuring Qt Creator</a></li>
|
<li><a href="creator-project-creating.html">Creating Projects</a></li>
|
||||||
|
<li><a href="creator-configuring-projects.html">Configuring Projects</a></li>
|
||||||
|
<li><a href="creator-live-preview.html">Validating with Target Hardware</a></li>
|
||||||
|
<li><a href="creator-connecting-mobile.html">Connecting Devices</a></li>
|
||||||
|
<li><a href="creator-deployment.html">Deploying to Devices</a></li>
|
||||||
|
<li><a href="creator-debugging.html">Debugging</a></li>
|
||||||
|
<li><a href="creator-analyze-mode.html">Analyzing Code</a></li>
|
||||||
|
<li><a href="creator-squish.html">Using Squish</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -27,33 +34,13 @@
|
|||||||
<li><a href="qtcreator-transitions-example.html">Creating a Qt Quick Application</a></li>
|
<li><a href="qtcreator-transitions-example.html">Creating a Qt Quick Application</a></li>
|
||||||
<li><a href="creator-writing-program.html">Creating a Qt Widget Based Application</a></li>
|
<li><a href="creator-writing-program.html">Creating a Qt Widget Based 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-tutorial-python-application-qt-quick.html">Creating a Qt for Python Application with Qt Quick</a></li>
|
||||||
<li><a href="creator-tutorial-python-application-widgets.html">Creating a Qt for Python Application with Qt Widgets</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-debugging-example.html">Debugging a C++ Application</a></li>
|
<li><a href="creator-debugging-example.html">Debugging a C++ Application</a></li>
|
||||||
<li><a href="creator-qml-debugging-example.html">Debugging a Qt Quick Application</a></li>
|
<li><a href="creator-qml-debugging-example.html">Debugging a Qt Quick Application</a></li>
|
||||||
<li><a href="creator-tutorials.html">See All</a></li>
|
<li><a href="creator-tutorials.html">See All</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="sectionlist normallist">
|
|
||||||
<div class="heading">
|
|
||||||
<h2>Running on Devices</h2>
|
|
||||||
</div>
|
|
||||||
<ul>
|
|
||||||
<li><a href="creator-live-preview.html">Validating with Target Hardware</a></li>
|
|
||||||
<li><a href="creator-deployment.html">Deploying to Devices</a></li>
|
|
||||||
<li><a href="creator-connecting-mobile.html">Connecting Devices</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="sectionlist normallist">
|
|
||||||
<div class="heading">
|
|
||||||
<h2>Debugging and Analyzing</h2>
|
|
||||||
</div>
|
|
||||||
<ul>
|
|
||||||
<li><a href="creator-debugging.html">Debugging</a></li>
|
|
||||||
<li><a href="creator-analyze-mode.html">Analyzing Code</a></li>
|
|
||||||
<li><a href="creator-squish.html">Using Squish</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="sectionlist normallist">
|
<div class="sectionlist normallist">
|
||||||
<div class="heading">
|
<div class="heading">
|
||||||
<h2>How To</h2>
|
<h2>How To</h2>
|
||||||
|
Before Width: | Height: | Size: 676 B |
Before Width: | Height: | Size: 715 B |
Before Width: | Height: | Size: 905 B |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 430 B |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 561 B |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 617 B |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 520 B |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 601 B |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 640 B |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 518 B |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 628 B |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 650 B |
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 707 B |
Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 29 KiB |
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 64 KiB After Width: | Height: | Size: 77 KiB |
@@ -14,11 +14,11 @@
|
|||||||
|
|
||||||
\title Analyzing Code
|
\title Analyzing Code
|
||||||
|
|
||||||
You can use the code analysis tools in the \uicontrol Debug mode. To
|
To use a code analysis tool, select it in the \uicontrol {Analyze Menu} or
|
||||||
switch to \uicontrol Debug mode, select \uicontrol Debug in the mode
|
in the pull-down menu of the \inlineimage icons/qtcreator-debug-button.png
|
||||||
selector, or select the \uicontrol {Analyze} menu and then select a tool.
|
(\uicontrol {Start Debugging of Startup Project}) button.
|
||||||
When you are in the \uicontrol Debug mode, you can switch between tools by
|
When you are in the \uicontrol Debug mode, you can switch between tools by
|
||||||
selecting them in the menu on the toolbar.
|
selecting them in the menu on the debugger toolbar.
|
||||||
|
|
||||||
You can drag and drop the views in the \uicontrol Debug mode to new
|
You can drag and drop the views in the \uicontrol Debug mode to new
|
||||||
positions on the screen. The size and position of views are saved for future
|
positions on the screen. The size and position of views are saved for future
|
||||||
|
@@ -310,13 +310,13 @@
|
|||||||
|
|
||||||
\title Manage files in CMake projects
|
\title Manage files in CMake projects
|
||||||
|
|
||||||
When you use project wizard templates to \l{Create files}{add files} to
|
When you \l{Create files}{add new or existing files} to
|
||||||
a project, \QC automatically adds them to the \l {qt_add_executable},
|
a project, \QC automatically adds them to the \l {qt_add_executable},
|
||||||
\l{CMake: add_executable command}{add_executable}, or \l {qt_add_library}
|
\l{CMake: add_executable command}{add_executable}, or \l {qt_add_library}
|
||||||
function in the CMakeLists.txt file.
|
function in the CMakeLists.txt file.
|
||||||
|
|
||||||
If you use custom API, \QC uses the \l{CMake: target_sources command}
|
If \QC cannot recognize where the target is created, it will use the
|
||||||
{target_sources} function to add the files.
|
\l{CMake: target_sources command} {target_sources} function to add the files.
|
||||||
|
|
||||||
For Qt Quick projects, the files are added to the \l {qt_add_qml_module}
|
For Qt Quick projects, the files are added to the \l {qt_add_qml_module}
|
||||||
function, prefixed with the \c QML_FILES, \c SOURCES, or \c RESOURCES
|
function, prefixed with the \c QML_FILES, \c SOURCES, or \c RESOURCES
|
||||||
|
@@ -103,7 +103,7 @@
|
|||||||
\previouspage creator-reference.html
|
\previouspage creator-reference.html
|
||||||
\endif
|
\endif
|
||||||
|
|
||||||
\ingroup creator-reference-editors
|
\ingroup creator-reference-analyzer
|
||||||
\ingroup studio-how-to-code
|
\ingroup studio-how-to-code
|
||||||
|
|
||||||
\title JavaScript and QML Checks
|
\title JavaScript and QML Checks
|
||||||
|
@@ -11,7 +11,7 @@
|
|||||||
\page creator-clang-codemodel.html
|
\page creator-clang-codemodel.html
|
||||||
\previouspage creator-reference.html
|
\previouspage creator-reference.html
|
||||||
|
|
||||||
\ingroup creator-reference
|
\ingroup creator-reference-editors
|
||||||
|
|
||||||
\title Clang Code Model
|
\title Clang Code Model
|
||||||
|
|
||||||
|
@@ -78,7 +78,7 @@
|
|||||||
\page creator-reference-cpp-quick-fixes.html
|
\page creator-reference-cpp-quick-fixes.html
|
||||||
\previouspage creator-reference.html
|
\previouspage creator-reference.html
|
||||||
|
|
||||||
\ingroup creator-reference
|
\ingroup creator-reference-editors
|
||||||
|
|
||||||
\title C++ Quick Fixes
|
\title C++ Quick Fixes
|
||||||
|
|
||||||
|
@@ -31,7 +31,7 @@
|
|||||||
\page creator-editor-fakevim.html
|
\page creator-editor-fakevim.html
|
||||||
\previouspage creator-reference.html
|
\previouspage creator-reference.html
|
||||||
|
|
||||||
\ingroup creator-reference
|
\ingroup creator-reference-editors
|
||||||
|
|
||||||
\title FakeVim Modes and Commands
|
\title FakeVim Modes and Commands
|
||||||
|
|
||||||
|
@@ -38,11 +38,11 @@
|
|||||||
|
|
||||||
\section1 Use locator filters
|
\section1 Use locator filters
|
||||||
|
|
||||||
The filters that are available depend on the file type. For more information
|
The filters that are available depend on the current document and project.
|
||||||
about what a particular locator filter does, see the tooltips that appear
|
If the locator field is empty, a list of available filters is shown.
|
||||||
when you hover over a filter in the locator. For longer descriptions of the
|
A list of filters is also shown when selecting \inlineimage icons/magnifier.png.
|
||||||
filters, select \inlineimage icons/magnifier.png > \uicontrol Configure to
|
For more information about what a particular locator filter does, see the
|
||||||
open the \l{Locator} preferences.
|
tooltips that appear when you hover over a filter.
|
||||||
|
|
||||||
To use a locator filter:
|
To use a locator filter:
|
||||||
|
|
||||||
@@ -52,7 +52,7 @@
|
|||||||
string (for example, a filename or class name) or the command to
|
string (for example, a filename or class name) or the command to
|
||||||
execute.
|
execute.
|
||||||
|
|
||||||
\li Double-click a locator filter in the filter list to use it. Press
|
\li Select a locator filter in the filter list to use it. Press
|
||||||
the up and down arrow keys or press \key Ctrl+P and \key Ctrl+N
|
the up and down arrow keys or press \key Ctrl+P and \key Ctrl+N
|
||||||
to move up and down the list, and then press \key Enter to use the
|
to move up and down the list, and then press \key Enter to use the
|
||||||
selected filter.
|
selected filter.
|
||||||
@@ -140,7 +140,8 @@
|
|||||||
\brief Add and change locator filters.
|
\brief Add and change locator filters.
|
||||||
|
|
||||||
To set locator preferences, go to \preferences > \uicontrol Environment >
|
To set locator preferences, go to \preferences > \uicontrol Environment >
|
||||||
\uicontrol Locator.
|
\uicontrol Locator, or select
|
||||||
|
\inlineimage icons/magnifier.png > \uicontrol Configure in the locator field.
|
||||||
|
|
||||||
\image qtcreator-locator-customize.webp {Locator preferences}
|
\image qtcreator-locator-customize.webp {Locator preferences}
|
||||||
|
|
||||||
|
@@ -11,11 +11,11 @@
|
|||||||
\page creator-modeling.html
|
\page creator-modeling.html
|
||||||
\previouspage creator-reference.html
|
\previouspage creator-reference.html
|
||||||
|
|
||||||
\ingroup creator-reference
|
\ingroup creator-reference-editors
|
||||||
|
|
||||||
\title Model Editor
|
\title Model Editor
|
||||||
|
|
||||||
\brief Editor for Universal Modeling Language (UML) style models with
|
\brief Create Universal Modeling Language (UML) style models with
|
||||||
structured and behavioral diagrams.
|
structured and behavioral diagrams.
|
||||||
|
|
||||||
Use the model editor to create Universal Modeling Language (UML)
|
Use the model editor to create Universal Modeling Language (UML)
|
||||||
|
@@ -11,11 +11,11 @@
|
|||||||
\page creator-scxml.html
|
\page creator-scxml.html
|
||||||
\previouspage creator-reference.html
|
\previouspage creator-reference.html
|
||||||
|
|
||||||
\ingroup creator-reference
|
\ingroup creator-reference-editors
|
||||||
|
|
||||||
\title SCXML Editor
|
\title SCXML Editor
|
||||||
|
|
||||||
\brief State chart (.scxml) editor.
|
\brief Edit state chart (.scxml) files.
|
||||||
|
|
||||||
State charts are a graphical way of modeling how a system reacts to
|
State charts are a graphical way of modeling how a system reacts to
|
||||||
stimuli. They define the \e states that the system can
|
stimuli. They define the \e states that the system can
|
||||||
|
@@ -106,7 +106,7 @@
|
|||||||
\endif
|
\endif
|
||||||
|
|
||||||
\ingroup creator-reference-editors
|
\ingroup creator-reference-editors
|
||||||
\ingroup studio-how-to-refactor-code
|
\ingroup studio-code-view
|
||||||
|
|
||||||
\title QML Quick Fixes
|
\title QML Quick Fixes
|
||||||
|
|
||||||
|
@@ -18,8 +18,8 @@
|
|||||||
|
|
||||||
\section1 Analyze
|
\section1 Analyze
|
||||||
|
|
||||||
\QC integrates code analysis tools for detecting memory leaks, profiling
|
Use integrated code analysis tools to detect memory leaks, profile
|
||||||
function execution, analyzing CPU use, and eliminating unnecessary
|
function execution, analyze CPU use, and eliminate unnecessary
|
||||||
complexity of code. Other integrated tools provide code coverage and
|
complexity of code. Other integrated tools provide code coverage and
|
||||||
visualize trace events.
|
visualize trace events.
|
||||||
|
|
||||||
@@ -27,36 +27,66 @@
|
|||||||
|
|
||||||
\section1 Build and Run
|
\section1 Build and Run
|
||||||
|
|
||||||
|
Use integrated cross-platform systems for build automation to compile your
|
||||||
|
source code for different target platforms or with different compilers,
|
||||||
|
debuggers, or Qt versions. Deploy applications to the target platforms
|
||||||
|
and run them there.
|
||||||
|
|
||||||
\generatelist creator-how-to-build
|
\generatelist creator-how-to-build
|
||||||
|
|
||||||
\section2 Build with CMake
|
\section2 Build with CMake
|
||||||
|
|
||||||
|
CMake controls the software compilation process by using simple configuration
|
||||||
|
files, called \e CMakeLists.txt files.
|
||||||
|
|
||||||
\generatelist creator-how-to-build-with-cmake
|
\generatelist creator-how-to-build-with-cmake
|
||||||
|
|
||||||
\section2 Build with qmake
|
\section2 Build with qmake
|
||||||
|
|
||||||
|
qmake automates the generation of Makefiles based on the information in a
|
||||||
|
project file that has the extension \e .pro.
|
||||||
|
|
||||||
\generatelist creator-how-to-build-with-qmake
|
\generatelist creator-how-to-build-with-qmake
|
||||||
|
|
||||||
\section2 Run applications
|
\section2 Run applications
|
||||||
|
|
||||||
|
Run applications on local and remote desktop systems, as well as on
|
||||||
|
embedded and mobile devices that you connect to the computer.
|
||||||
|
|
||||||
\generatelist creator-how-to-run
|
\generatelist creator-how-to-run
|
||||||
|
|
||||||
\section1 Create Models and Diagrams
|
\section1 Create Models and Diagrams
|
||||||
|
|
||||||
|
Create Universal Modeling Language (UML) style models with structured and
|
||||||
|
behavioral diagrams that offer different views to your system. Or, use a
|
||||||
|
file wizard to create State Chart XML (SCXML) files with boilerplate code
|
||||||
|
and edit them with an SCXML editor.
|
||||||
|
|
||||||
\generatelist creator-how-to-models
|
\generatelist creator-how-to-models
|
||||||
|
|
||||||
\section1 Debug
|
\section1 Debug
|
||||||
|
|
||||||
|
Use native debuggers to inspect the state of your application while
|
||||||
|
debugging.
|
||||||
|
|
||||||
\generatelist creator-how-to-debug
|
\generatelist creator-how-to-debug
|
||||||
|
|
||||||
\section1 Design UIs
|
\section1 Design UIs
|
||||||
|
|
||||||
|
Design UIs with either \l{User Interfaces}{Qt Quick or Qt Widgets}.
|
||||||
|
\QC integrates a visual editor, \QD, for designing widget-based UIs
|
||||||
|
in the \uicontrol Design mode. For Qt Quick UIs, use a separate visual
|
||||||
|
editor, \l{\QDS Manual}{\QDS}, or the \uicontrol Edit mode.
|
||||||
|
|
||||||
\generatelist creator-how-to-design
|
\generatelist creator-how-to-design
|
||||||
|
|
||||||
\section1 Edit Code
|
\section1 Edit Code
|
||||||
|
|
||||||
The code editor offers useful features, such as semantic highlighting,
|
The code editor offers useful features for editing C++ and QML code, such
|
||||||
checking code syntax, code completion, and refactoring actions.
|
as semantic highlighting, checking code syntax, code completion, and quick
|
||||||
|
fixes. Some of these features are also for other programming languages, such
|
||||||
|
as Python, for which a \e {language server} is available that provides
|
||||||
|
information about the code to IDEs.
|
||||||
|
|
||||||
\generatelist creator-how-to-edit
|
\generatelist creator-how-to-edit
|
||||||
|
|
||||||
@@ -69,39 +99,64 @@
|
|||||||
|
|
||||||
\section2 Manage Language Servers
|
\section2 Manage Language Servers
|
||||||
|
|
||||||
|
Configure language servers that \QC adds by default or add more of them.
|
||||||
|
|
||||||
\generatelist creator-how-to-lsp
|
\generatelist creator-how-to-lsp
|
||||||
|
|
||||||
\section2 Search
|
\section2 Search
|
||||||
|
|
||||||
|
Use the incremental and advanced search to search in currently open projects
|
||||||
|
or files on the file system or use the locator to browse through projects,
|
||||||
|
files, classes, functions, documentation, and file systems.
|
||||||
|
|
||||||
\generatelist creator-how-to-search
|
\generatelist creator-how-to-search
|
||||||
|
|
||||||
\section1 Manage Kits
|
\section1 Manage Kits
|
||||||
|
|
||||||
|
\QC groups build and run specific settings as kits to make cross-platform
|
||||||
|
development easier. Each kit consists of a set of values that define one
|
||||||
|
environment, such as a device, tool chain, Qt version, and debugger command
|
||||||
|
to use.
|
||||||
|
|
||||||
\generatelist creator-how-to-manage-kits
|
\generatelist creator-how-to-manage-kits
|
||||||
|
|
||||||
\section1 Manage Projects
|
\section1 Manage Projects
|
||||||
|
|
||||||
|
Create projects for developing applications and libraries. Then configure
|
||||||
|
the projects for building and running the applications on target platforms.
|
||||||
|
|
||||||
\generatelist creator-how-to-projects
|
\generatelist creator-how-to-projects
|
||||||
|
|
||||||
\section2 Create Projects
|
\section2 Create Projects
|
||||||
|
|
||||||
|
Use preset wizards to create projects or add custom wizards. You can also
|
||||||
|
import projects from version control systems.
|
||||||
|
|
||||||
\generatelist creator-how-to-projects-create
|
\generatelist creator-how-to-projects-create
|
||||||
|
|
||||||
\section2 Add Files
|
\section2 Add Files
|
||||||
|
|
||||||
|
Add files to projects.
|
||||||
|
|
||||||
\generatelist creator-how-to-projects-files
|
\generatelist creator-how-to-projects-files
|
||||||
|
|
||||||
\section2 Configure Projects
|
\section2 Configure Projects
|
||||||
|
|
||||||
|
Change the default configurations that installation programs and project
|
||||||
|
wizards create.
|
||||||
|
|
||||||
\generatelist creator-how-to-projects-configure
|
\generatelist creator-how-to-projects-configure
|
||||||
|
|
||||||
\section1 Read Documentation
|
\section1 Read Documentation
|
||||||
|
|
||||||
|
\QC integrates the reference documentation for the Qt versions that you
|
||||||
|
install. You can add documentation from other sources.
|
||||||
|
|
||||||
\generatelist creator-how-to-get-help
|
\generatelist creator-how-to-get-help
|
||||||
|
|
||||||
\section1 Test
|
\section1 Test
|
||||||
|
|
||||||
\QC supports both \e {code based tests} and \e {build system based tests}.
|
Create and run \e {code based tests} and \e {build system based tests}.
|
||||||
Code based testing offers special handling for particular testing
|
Code based testing offers special handling for particular testing
|
||||||
frameworks that strongly ties to the underlying code models or
|
frameworks that strongly ties to the underlying code models or
|
||||||
specialized parsers. Build system based testing is independent from any
|
specialized parsers. Build system based testing is independent from any
|
||||||
@@ -113,10 +168,15 @@
|
|||||||
|
|
||||||
\section1 Use \QC
|
\section1 Use \QC
|
||||||
|
|
||||||
|
Use basic \QC features and preinstalled plugins. Install more plugins and
|
||||||
|
configure external tools for use.
|
||||||
|
|
||||||
\generatelist creator-how-to-use
|
\generatelist creator-how-to-use
|
||||||
|
|
||||||
\section1 Use the UI
|
\section1 Use the UI
|
||||||
|
|
||||||
|
Navigate the UI or change its appearance and behavior.
|
||||||
|
|
||||||
\generatelist creator-how-to-ui
|
\generatelist creator-how-to-ui
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -72,6 +72,7 @@
|
|||||||
for remote Linux devices:
|
for remote Linux devices:
|
||||||
|
|
||||||
\list
|
\list
|
||||||
|
\li \l{Adding Docker Devices}
|
||||||
\li \l{Connecting Remote Linux Devices}
|
\li \l{Connecting Remote Linux Devices}
|
||||||
\li \l{Deploying to Remote Linux}
|
\li \l{Deploying to Remote Linux}
|
||||||
\li \l{Remote Linux Run Settings}
|
\li \l{Remote Linux Run Settings}
|
||||||
|
@@ -89,8 +89,8 @@
|
|||||||
Themes enable you to customize the appearance of the \QC UI: widgets,
|
Themes enable you to customize the appearance of the \QC UI: widgets,
|
||||||
colors, and icons.
|
colors, and icons.
|
||||||
|
|
||||||
To switch themes, select \preferences > \uicontrol Environment, and then
|
To switch themes, select \preferences > \uicontrol Environment >
|
||||||
select a theme in the \uicontrol Theme field.
|
\uicontrol Interface, and then select a theme in the \uicontrol Theme field.
|
||||||
|
|
||||||
You can use the \QC text and code editors with your favorite color scheme
|
You can use the \QC text and code editors with your favorite color scheme
|
||||||
that defines how to highlight code elements and which background color to
|
that defines how to highlight code elements and which background color to
|
||||||
|
@@ -25,11 +25,11 @@
|
|||||||
\li \inlineimage front-ui.png
|
\li \inlineimage front-ui.png
|
||||||
\li \inlineimage front-advanced.png
|
\li \inlineimage front-advanced.png
|
||||||
\row
|
\row
|
||||||
\li \b {\l{Overview}}
|
\li \b {\l{Developing with \QC}}
|
||||||
|
|
||||||
If you have not used an integrated development environment (IDE)
|
If you have not used an integrated development environment (IDE)
|
||||||
before, or want to know what kind of IDE \QC is, go to
|
before, or want to know what kind of IDE \QC is, go to
|
||||||
\l{Overview}.
|
\l{Developing with \QC}.
|
||||||
\li \b {\l{User Interface}}
|
\li \b {\l{User Interface}}
|
||||||
|
|
||||||
If you have not used \QC before, and want to become familiar
|
If you have not used \QC before, and want to become familiar
|
||||||
|
@@ -18,25 +18,25 @@
|
|||||||
\brief Default keyboard shortcuts.
|
\brief Default keyboard shortcuts.
|
||||||
|
|
||||||
\QC has various keyboard shortcuts that speed up your development process.
|
\QC has various keyboard shortcuts that speed up your development process.
|
||||||
To view all \QC functions in and their keyboard shortcuts, select
|
To view all \QC functions and their keyboard shortcuts, select
|
||||||
\preferences > \uicontrol Environment > \uicontrol Keyboard.
|
\preferences > \uicontrol Environment > \uicontrol Keyboard.
|
||||||
|
|
||||||
\image qtcreator-keyboard-shortcuts.png
|
\image qtcreator-keyboard-shortcuts.png
|
||||||
|
|
||||||
The shortcuts that are displayed in red color are associated with several
|
Shortcuts that are displayed in red are associated with several functions.
|
||||||
functions. \QC executes the function that is available in the current
|
\QC executes the function that is available in the current context.
|
||||||
context. If several functions are available for the same shortcut at a
|
If several functions are available for the same shortcut in the current context,
|
||||||
time, there is a conflict and \QC cannot execute any function.
|
\QC will not execute any function due to the conflict.
|
||||||
|
|
||||||
A keyboard shortcut might also conflict with a shortcut that a window
|
A keyboard shortcut might also conflict with a shortcut that your window
|
||||||
manager uses for its own purposes. In that case, \QC shortcuts do not work.
|
manager uses for its own purposes. If the window manager consumes the key event,
|
||||||
|
the \QC shortcut will not be activated.
|
||||||
Typically, you can configure the shortcuts in the window manager, but if
|
Typically, you can configure the shortcuts in the window manager, but if
|
||||||
that is not allowed, you can change the \QC shortcuts.
|
that is not allowed, you can change the \QC shortcuts.
|
||||||
|
|
||||||
For example, Unity on
|
For example, Unity on Ubuntu 11.10 by default uses \key F10 in its window manager,
|
||||||
Ubuntu 11.10 uses \key F10 in its window manager, and therefore the default
|
and therefore the default \QC keyboard shortcut \key F10 (Step Over) will not work on
|
||||||
\QC keyboard shortcut \key F10 (Step Over) does not work on that system.
|
that system.
|
||||||
|
|
||||||
|
|
||||||
To override the platform default value that determines whether
|
To override the platform default value that determines whether
|
||||||
keyboard shortcuts are shown in the labels of context menu items,
|
keyboard shortcuts are shown in the labels of context menu items,
|
||||||
|
@@ -52,8 +52,8 @@
|
|||||||
|
|
||||||
\li \l {Adding Docker Devices}
|
\li \l {Adding Docker Devices}
|
||||||
|
|
||||||
You can add Docker images as \e devices to run, debug, and analyze
|
Create Docker devices from Docker images and use them to build, run,
|
||||||
applications built for Docker containers from \QC.
|
and debug applications from \QC.
|
||||||
|
|
||||||
\li \l{Connecting iOS Devices}
|
\li \l{Connecting iOS Devices}
|
||||||
|
|
||||||
|
@@ -8,11 +8,11 @@
|
|||||||
// **********************************************************************
|
// **********************************************************************
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
\previouspage creator-getting-started.html
|
\previouspage index.html
|
||||||
\page creator-overview.html
|
\page creator-overview.html
|
||||||
\nextpage creator-quick-tour.html
|
\nextpage creator-getting-started.html
|
||||||
|
|
||||||
\title Overview
|
\title Developing with \QC
|
||||||
|
|
||||||
\QC is a cross-platform, complete integrated development environment
|
\QC is a cross-platform, complete integrated development environment
|
||||||
(IDE) that you can use to create applications for desktop, embedded,
|
(IDE) that you can use to create applications for desktop, embedded,
|
||||||
@@ -235,6 +235,11 @@
|
|||||||
a suitable native debugger for each kit from the ones it finds on the
|
a suitable native debugger for each kit from the ones it finds on the
|
||||||
computer. Edit the kits to override this choice.
|
computer. Edit the kits to override this choice.
|
||||||
|
|
||||||
|
If you install \QC with \QOI, the GNU Symbolic Debugger is installed
|
||||||
|
automatically and you should be ready to start debugging after you create
|
||||||
|
a new project. However, you can change the setup to use debugging tools for
|
||||||
|
Windows, for example.
|
||||||
|
|
||||||
Connect devices to your computer to debug processes running on the devices.
|
Connect devices to your computer to debug processes running on the devices.
|
||||||
|
|
||||||
For more information, see \l{Debugging}.
|
For more information, see \l{Debugging}.
|
||||||
|
@@ -4,16 +4,25 @@
|
|||||||
/*!
|
/*!
|
||||||
\page creator-reference.html
|
\page creator-reference.html
|
||||||
\previouspage creator-how-tos.html
|
\previouspage creator-how-tos.html
|
||||||
\nextpage creator-known-issues.html
|
\nextpage creator-acknowledgements.html
|
||||||
|
|
||||||
\title Reference
|
\title Reference
|
||||||
|
|
||||||
|
The following topics contain reference information about using \QC and the
|
||||||
|
integrated tools.
|
||||||
|
|
||||||
\annotatedlist creator-reference
|
\annotatedlist creator-reference
|
||||||
|
|
||||||
|
\section1 Analyzers
|
||||||
|
|
||||||
|
Use integrated code analysis tools to improve your C++ or QML code.
|
||||||
|
|
||||||
|
\annotatedlist creator-reference-analyzer
|
||||||
|
|
||||||
\section1 Build Systems
|
\section1 Build Systems
|
||||||
|
|
||||||
Most \QC project wizards enable you to choose the build system to use for
|
When you create projects, you can choose the build system to use for
|
||||||
building the project: qmake, CMake, Meson, or Qbs. qmake is installed and
|
building the project: CMake, qmake, Meson, or Qbs. qmake is installed and
|
||||||
configured when you install Qt. To use one of the other supported build
|
configured when you install Qt. To use one of the other supported build
|
||||||
systems, you need to set it up.
|
systems, you need to set it up.
|
||||||
|
|
||||||
@@ -29,33 +38,46 @@
|
|||||||
|
|
||||||
\section1 Editors
|
\section1 Editors
|
||||||
|
|
||||||
|
When you open files, \QC chooses a suitable editor according to the file
|
||||||
|
type.
|
||||||
|
|
||||||
\annotatedlist creator-reference-editors
|
\annotatedlist creator-reference-editors
|
||||||
|
|
||||||
\section1 Platforms
|
\section1 Platforms
|
||||||
|
|
||||||
|
You can install and run \QC on several operating systems to create
|
||||||
|
applications for multiple desktop, embedded, and mobile device platforms.
|
||||||
|
|
||||||
\annotatedlist creator-reference-platforms
|
\annotatedlist creator-reference-platforms
|
||||||
|
|
||||||
\section1 Preferences
|
\section1 Preferences
|
||||||
|
|
||||||
Set preferences that apply globally to all projects.
|
You can set preferences that apply globally to all projects and override
|
||||||
|
them for particular projects.
|
||||||
|
|
||||||
\annotatedlist creator-reference-preferences
|
\annotatedlist creator-reference-preferences
|
||||||
|
|
||||||
\section2 Analyzer
|
\section2 Analyzer
|
||||||
|
|
||||||
|
Preferences for code analysis tools.
|
||||||
|
|
||||||
\annotatedlist creator-reference-preferences-analyzer
|
\annotatedlist creator-reference-preferences-analyzer
|
||||||
|
|
||||||
\section2 C++
|
\section2 C++
|
||||||
|
|
||||||
|
Preferences for editing C++ code.
|
||||||
|
|
||||||
\annotatedlist creator-reference-preferences-cpp
|
\annotatedlist creator-reference-preferences-cpp
|
||||||
|
|
||||||
\section2 Kits
|
\section2 Kits
|
||||||
|
|
||||||
|
Preferences for build and run kits.
|
||||||
|
|
||||||
\annotatedlist creator-reference-preferences-kits
|
\annotatedlist creator-reference-preferences-kits
|
||||||
|
|
||||||
\section2 Text Editor
|
\section2 Text Editor
|
||||||
|
|
||||||
Configure the text editor to suit your needs.
|
Preferences for the behavior and appearance of text and code editors.
|
||||||
|
|
||||||
\annotatedlist creator-reference-preferences-text-editor
|
\annotatedlist creator-reference-preferences-text-editor
|
||||||
|
|
||||||
@@ -72,8 +94,7 @@
|
|||||||
|
|
||||||
\section1 UI Design
|
\section1 UI Design
|
||||||
|
|
||||||
Design UIs with either \l{User Interfaces}{Qt Quick or Qt Widgets}.
|
You can use a visual editor, \QD, for designing widget-based UIs
|
||||||
\QC integrates a visual editor, \QD, for designing widget-based UIs
|
|
||||||
in the \uicontrol Design mode. For Qt Quick UIs, use a separate visual
|
in the \uicontrol Design mode. For Qt Quick UIs, use a separate visual
|
||||||
editor, \l{\QDS Manual}{\QDS}, or the \uicontrol Edit mode.
|
editor, \l{\QDS Manual}{\QDS}, or the \uicontrol Edit mode.
|
||||||
|
|
||||||
@@ -81,11 +102,22 @@
|
|||||||
|
|
||||||
\section1 Views
|
\section1 Views
|
||||||
|
|
||||||
|
When you switch modes or trigger actions, \QC opens views for viewing
|
||||||
|
output and organizing project contents.
|
||||||
|
|
||||||
\section2 Output Views
|
\section2 Output Views
|
||||||
|
|
||||||
|
You can view output from several sources, such as a list of errors and
|
||||||
|
warnings encountered during a build, detailed output from the compiler,
|
||||||
|
status of a program when it is executed, debug output, or search results.
|
||||||
|
|
||||||
\annotatedlist creator-reference-output-views
|
\annotatedlist creator-reference-output-views
|
||||||
|
|
||||||
\section2 Sidebar Views
|
\section2 Sidebar Views
|
||||||
|
|
||||||
|
In some modes, you can use a left and right sidebar to organize different
|
||||||
|
views into project contents. Only views that are relevant to the mode you
|
||||||
|
are working in are available in it.
|
||||||
|
|
||||||
\annotatedlist creator-reference-sidebar-views
|
\annotatedlist creator-reference-sidebar-views
|
||||||
*/
|
*/
|
||||||
|
@@ -1,44 +0,0 @@
|
|||||||
// Copyright (C) 2023 The Qt Company Ltd.
|
|
||||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
|
|
||||||
|
|
||||||
// **********************************************************************
|
|
||||||
// NOTE: the sections are not ordered by their logical order to avoid
|
|
||||||
// reshuffling the file each time the index order changes (i.e., often).
|
|
||||||
// Run the fixnavi.pl script to adjust the links to the index order.
|
|
||||||
// **********************************************************************
|
|
||||||
|
|
||||||
/*!
|
|
||||||
\previouspage creator-build-process-customizing.html
|
|
||||||
\page creator-testing.html
|
|
||||||
\nextpage creator-debugging.html
|
|
||||||
|
|
||||||
\title Debugging and Analyzing
|
|
||||||
|
|
||||||
\image front-testing.png
|
|
||||||
|
|
||||||
\list
|
|
||||||
|
|
||||||
\li \l{Debugging}
|
|
||||||
|
|
||||||
If you install \QC with \QOI, the GNU Symbolic Debugger
|
|
||||||
is installed automatically and you should be ready to start
|
|
||||||
debugging after you create a new project. However, you can
|
|
||||||
change the setup to use debugging tools for Windows, for
|
|
||||||
example. You can connect \l{glossary-device}{devices} to your
|
|
||||||
development host and debug processes running on the devices.
|
|
||||||
|
|
||||||
\li \l{Analyzing Code}
|
|
||||||
|
|
||||||
Use tools for analyzing C++ and QML code to identify issues in
|
|
||||||
memory management, CPU usage, coding constructs, and so on. You
|
|
||||||
must install and configure the tools on your system to use them
|
|
||||||
from \QC. However, the QML Profiler is installed as part of \QC
|
|
||||||
for profiling Qt Quick applications.
|
|
||||||
|
|
||||||
\li \l{Using Squish}
|
|
||||||
|
|
||||||
Map AUTs to \QC and run Squish test suites and cases from it.
|
|
||||||
|
|
||||||
\endlist
|
|
||||||
|
|
||||||
*/
|
|
@@ -11,7 +11,7 @@
|
|||||||
\page creator-usability.html
|
\page creator-usability.html
|
||||||
\previouspage creator-reference.html
|
\previouspage creator-reference.html
|
||||||
|
|
||||||
\ingroup creator-reference
|
\ingroup creator-reference-platforms
|
||||||
|
|
||||||
\title Optimizing Applications for Mobile Devices
|
\title Optimizing Applications for Mobile Devices
|
||||||
|
|
||||||
|
@@ -48,8 +48,9 @@
|
|||||||
\image qtcreator-custom-wizard.png {Wizard details in the New Project dialog}
|
\image qtcreator-custom-wizard.png {Wizard details in the New Project dialog}
|
||||||
|
|
||||||
In most project wizards, you can choose the build system to use for
|
In most project wizards, you can choose the build system to use for
|
||||||
building the project: qmake, CMake, or Qbs. If you do not get to choose,
|
building the project: qmake, CMake, Qbs, and possibly others, depending on
|
||||||
the project uses qmake as the build system.
|
which plugins you have installed. If you do not get to choose,
|
||||||
|
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-qt-gui.png {Define Build System dialog}
|
||||||
|
|
||||||
|
@@ -120,7 +120,7 @@
|
|||||||
|
|
||||||
\list 1
|
\list 1
|
||||||
|
|
||||||
\li Select \uicontrol File > \uicontrol {New Project} >
|
\li Go to \uicontrol File > \uicontrol {New Project}, and select
|
||||||
\uicontrol Library > \uicontrol {C++ Library}. If your top level
|
\uicontrol Library > \uicontrol {C++ Library}. If your top level
|
||||||
project is a subdirs project or contains one, you may add the library
|
project is a subdirs project or contains one, you may add the library
|
||||||
to the project. However, this does not link other libraries from
|
to the project. However, this does not link other libraries from
|
||||||
@@ -131,16 +131,16 @@
|
|||||||
|
|
||||||
\image qtcreator-add-library-internal-project-location.webp {Project Location dialog}
|
\image qtcreator-add-library-internal-project-location.webp {Project Location dialog}
|
||||||
|
|
||||||
\li In the \uicontrol Name field, give a name for the library. For example,
|
\li In \uicontrol Name, give a name for the library. For example,
|
||||||
\e MyLibrary.
|
\e MyLibrary.
|
||||||
|
|
||||||
\li Select \uicontrol Next (on Windows and Linux) or \uicontrol Continue
|
\li Select \uicontrol Next (on Windows and Linux) or \uicontrol Continue
|
||||||
(on \macos) to open the \uicontrol {Define Build System} dialog.
|
(on \macos) to open the \uicontrol {Define Build System} dialog.
|
||||||
|
|
||||||
\li Select \uicontrol Next or \uicontrol Continue to use CMake as the
|
\li In \uicontrol {Build system}, select \uicontrol qmake.
|
||||||
build system.
|
|
||||||
|
|
||||||
The \uicontrol {Define Project Details} dialog opens.
|
\li Select \uicontrol Next or \uicontrol Continue to open the
|
||||||
|
\uicontrol {Define Project Details} dialog.
|
||||||
|
|
||||||
\image qtcreator-add-library-internal-project-details.webp {Define Project Details dialog}
|
\image qtcreator-add-library-internal-project-details.webp {Define Project Details dialog}
|
||||||
|
|
||||||
@@ -170,7 +170,7 @@
|
|||||||
|
|
||||||
\image qtcreator-add-library-internal.webp {Adding an internal library}
|
\image qtcreator-add-library-internal.webp {Adding an internal library}
|
||||||
|
|
||||||
\li In the \uicontrol Library field, select \e mylibrary, and then select
|
\li In \uicontrol Library, select \e mylibrary, and then select
|
||||||
\uicontrol Next.
|
\uicontrol Next.
|
||||||
|
|
||||||
\li Select \uicontrol Finish to add the library declaration to the
|
\li Select \uicontrol Finish to add the library declaration to the
|
||||||
@@ -178,15 +178,7 @@
|
|||||||
|
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
When using CMake, the \c target_link_libraries command is added to the
|
The wizard adds the following library declaration to the .pro file:
|
||||||
CMakeLists.txt file:
|
|
||||||
|
|
||||||
\badcode
|
|
||||||
target_link_libraries(myapplication PRIVATE mylibrary)
|
|
||||||
\endcode
|
|
||||||
|
|
||||||
When using qmake, the following library declaration is added to the .pro
|
|
||||||
file:
|
|
||||||
|
|
||||||
\badcode
|
\badcode
|
||||||
win32:CONFIG(release, debug|release): LIBS += -L$$OUT_PWD/../../../projects/mylib/release/ -lmylib
|
win32:CONFIG(release, debug|release): LIBS += -L$$OUT_PWD/../../../projects/mylib/release/ -lmylib
|
||||||
|
@@ -45,22 +45,23 @@
|
|||||||
\li Profile
|
\li Profile
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
A debug build has debug symbols that you need for debugging the application
|
A \e Debug build has debug symbols that you need for debugging the application
|
||||||
but that you can leave out from the release version. Generally, you use the
|
but that you should leave out from the release version. Generally, you use the
|
||||||
debug configuration for testing and the release configuration for creating
|
debug configuration for testing and the \e Release configuration for creating
|
||||||
the final installation binary package.
|
the final installation binary package.
|
||||||
|
|
||||||
If you selected CMake as the build system for the project, you can
|
A \e Profile build is an optimized release build with debug information.
|
||||||
use a \e {minimum size release} build configuration to create the
|
It is best suited for analyzing applications.
|
||||||
|
|
||||||
|
If you selected CMake as the build system for the project, a
|
||||||
|
\e {Release with Debug Information} build configuration is also available.
|
||||||
|
It is similar to a \e profile configuration, but with
|
||||||
|
\l{Debugging Qt Quick Projects}{QML debugging and profiling} explicitly turned off.
|
||||||
|
You can also use a \e {Minimum Size Release} build configuration to create the
|
||||||
final installation binary package. It is a release build that makes the size
|
final installation binary package. It is a release build that makes the size
|
||||||
of the binary package as small as possible, even if this makes the
|
of the binary package as small as possible, even if this makes the
|
||||||
application slower.
|
application slower.
|
||||||
|
|
||||||
A profile build (which is called \e {release with debug information}
|
|
||||||
when using CMake) is an optimized release build that is delivered
|
|
||||||
with separate debug information. It is best suited for analyzing
|
|
||||||
applications.
|
|
||||||
|
|
||||||
\section1 Specifying Run Settings
|
\section1 Specifying Run Settings
|
||||||
|
|
||||||
The run settings to specify depend on the type of the project and on the
|
The run settings to specify depend on the type of the project and on the
|
||||||
|
@@ -2,7 +2,7 @@
|
|||||||
// 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
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
\page tutorial-python-application-qt-widgets.html
|
\page creator-tutorial-python-application-qt-widgets.html
|
||||||
\previouspage creator-tutorials.html
|
\previouspage creator-tutorials.html
|
||||||
\nextpage creator-how-tos.html
|
\nextpage creator-how-tos.html
|
||||||
|
|
||||||
|
@@ -12,21 +12,16 @@
|
|||||||
\uicontrol Search function in the \l{https://doc.qt.io/qtcreator/}
|
\uicontrol Search function in the \l{https://doc.qt.io/qtcreator/}
|
||||||
{Qt documentation} portal or in the \l {Get help}{Help} mode.
|
{Qt documentation} portal or in the \l {Get help}{Help} mode.
|
||||||
|
|
||||||
|
\list
|
||||||
|
\li \l{Developing with \QC}
|
||||||
\list
|
\list
|
||||||
\li \l{Getting Started}
|
\li \l{Getting Started}
|
||||||
\list
|
\list
|
||||||
\li \l{Overview}
|
|
||||||
\list
|
|
||||||
\li \l{Creating Projects}
|
|
||||||
\li \l{Configuring Projects}
|
|
||||||
\endlist
|
|
||||||
\li \l{User Interface}
|
\li \l{User Interface}
|
||||||
\li \l{Configuring Qt Creator}
|
\li \l{Configuring Qt Creator}
|
||||||
\endlist
|
\endlist
|
||||||
\li \l{Tutorials}
|
\li \l{Creating Projects}
|
||||||
\generatelist creator-tutorials
|
\li \l{Configuring Projects}
|
||||||
\li \l{Running on Devices}
|
|
||||||
\list
|
|
||||||
\li \l{Validating with Target Hardware}
|
\li \l{Validating with Target Hardware}
|
||||||
\list
|
\list
|
||||||
\li \l{Previewing on Desktop}
|
\li \l{Previewing on Desktop}
|
||||||
@@ -52,9 +47,6 @@
|
|||||||
\li \l{Connecting Remote Linux Devices}
|
\li \l{Connecting Remote Linux Devices}
|
||||||
\li \l{Building Applications for the Web}
|
\li \l{Building Applications for the Web}
|
||||||
\endlist
|
\endlist
|
||||||
\endlist
|
|
||||||
\li \l{Debugging and Analyzing}
|
|
||||||
\list
|
|
||||||
\li \l{Debugging}
|
\li \l{Debugging}
|
||||||
\list
|
\list
|
||||||
\li \l{Setting Up Debugger}
|
\li \l{Setting Up Debugger}
|
||||||
@@ -97,6 +89,8 @@
|
|||||||
\endlist
|
\endlist
|
||||||
\li \l{Using Squish}
|
\li \l{Using Squish}
|
||||||
\endlist
|
\endlist
|
||||||
|
\li \l{Tutorials}
|
||||||
|
\generatelist creator-tutorials
|
||||||
\li \l{How To}
|
\li \l{How To}
|
||||||
\list
|
\list
|
||||||
\li Analyze
|
\li Analyze
|
||||||
|
@@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
/*!
|
/*!
|
||||||
\page index.html
|
\page index.html
|
||||||
\nextpage creator-getting-started.html
|
\nextpage creator-overview.html
|
||||||
|
|
||||||
\title Qt Creator Manual
|
\title Qt Creator Manual
|
||||||
|
|
||||||
@@ -27,37 +27,27 @@
|
|||||||
|
|
||||||
\table
|
\table
|
||||||
\row
|
\row
|
||||||
\li {4,1} \b {\l{All Topics}{Click Here for a List of All Topics}}
|
\li {4,1} \b {\l{All Topics}}
|
||||||
\row
|
\row
|
||||||
\li \inlineimage front-gs.png
|
\li \inlineimage front-gs.png
|
||||||
\li \inlineimage front-coding.png
|
\li \inlineimage front-coding.png
|
||||||
\li \inlineimage front-preview.png
|
|
||||||
\row
|
|
||||||
\li \b {\l{Getting Started}}
|
|
||||||
\list
|
|
||||||
\li \l{Overview}
|
|
||||||
\li \l{User Interface}
|
|
||||||
\li \l{Configuring Qt Creator}
|
|
||||||
\endlist
|
|
||||||
\li \b {\l{Tutorials}}
|
|
||||||
\generatelist creator-tutorials
|
|
||||||
\li \b {\l{Running on Devices}}
|
|
||||||
\list
|
|
||||||
\li \l{Validating with Target Hardware}
|
|
||||||
\li \l{Deploying to Devices}
|
|
||||||
\li \l{Connecting Devices}
|
|
||||||
\endlist
|
|
||||||
\row
|
|
||||||
\li \inlineimage front-testing.png
|
|
||||||
\li \inlineimage front-help.png
|
\li \inlineimage front-help.png
|
||||||
\li \inlineimage front-advanced.png
|
\li \inlineimage front-advanced.png
|
||||||
\row
|
\row
|
||||||
\li \b {\l{Debugging and Analyzing}}
|
\li \b {\l{Developing with \QC}}
|
||||||
\list
|
\list
|
||||||
|
\li \l{Getting Started}
|
||||||
|
\li \l{Creating Projects}
|
||||||
|
\li \l{Configuring Projects}
|
||||||
|
\li \l{Validating with Target Hardware}
|
||||||
|
\li \l{Connecting Devices}
|
||||||
|
\li \l{Deploying to Devices}
|
||||||
\li \l{Debugging}
|
\li \l{Debugging}
|
||||||
\li \l{Analyzing Code}
|
\li \l{Analyzing Code}
|
||||||
\li \l{Using Squish}
|
\li \l{Using Squish}
|
||||||
\endlist
|
\endlist
|
||||||
|
\li \b {\l{Tutorials}}
|
||||||
|
\generatelist creator-tutorials
|
||||||
\li \b {\l{How To}}
|
\li \b {\l{How To}}
|
||||||
\list
|
\list
|
||||||
\li \l{Analyze}
|
\li \l{Analyze}
|
||||||
@@ -70,7 +60,6 @@
|
|||||||
\li \l{Test}
|
\li \l{Test}
|
||||||
\li \l{Use \QC}
|
\li \l{Use \QC}
|
||||||
\li \l{Use the UI}
|
\li \l{Use the UI}
|
||||||
\li \l{How To}{See More...}
|
|
||||||
\endlist
|
\endlist
|
||||||
\li \b {\l{Reference}}
|
\li \b {\l{Reference}}
|
||||||
\list
|
\list
|
||||||
@@ -81,7 +70,8 @@
|
|||||||
\li \l {Keyboard Shortcuts}
|
\li \l {Keyboard Shortcuts}
|
||||||
\li \l {Preferences}
|
\li \l {Preferences}
|
||||||
\li \l {Supported Platforms}
|
\li \l {Supported Platforms}
|
||||||
\li \l {Reference}{See More...}
|
\li \l {Version Control Systems}
|
||||||
|
\li \l {Views}
|
||||||
\endlist
|
\endlist
|
||||||
\endtable
|
\endtable
|
||||||
*/
|
*/
|
||||||
|
@@ -133,7 +133,7 @@
|
|||||||
\skipto set_property
|
\skipto set_property
|
||||||
\printuntil )
|
\printuntil )
|
||||||
|
|
||||||
Because the CMake version is older than 3.19, add a manual
|
For compatibility with CMake versions older than 3.19, add a manual
|
||||||
finalization step to the \c qt_add_executable function:
|
finalization step to the \c qt_add_executable function:
|
||||||
|
|
||||||
\quotefromfile accelbubble/CMakeLists.txt
|
\quotefromfile accelbubble/CMakeLists.txt
|
||||||
|
@@ -247,14 +247,12 @@
|
|||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
The title of the topic to use for automatically generating the navigation
|
The title of the topic to use for automatically generating the navigation
|
||||||
links is set as the value of the \c indexTitle option in the document
|
links is set as the value of the \c navigation.toctitles option in the
|
||||||
configuration file:
|
document configuration file:
|
||||||
|
|
||||||
\list
|
\list
|
||||||
\li \QC: \c qhp.qtcreator.subprojects.manual.indexTitle in
|
\li \QC: \c {\doc\qtcreator\config\qtcreator-project.qdocconf}
|
||||||
\c {\doc\qtcreator\config\qtcreator-project.qdocconf}
|
\li \QDS: \c {\doc\qtdesignstudio\config\qtdesignstudio.qdocconf}
|
||||||
\li \QDS: \c qhp.qtdesignstudio.subprojects.manual.indexTitle in
|
|
||||||
\c {\doc\qtdesignstudio\config\qtdesignstudio.qdocconf}
|
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
When you add new topics, you must add them either to the TOC or to a
|
When you add new topics, you must add them either to the TOC or to a
|
||||||
|
@@ -25,4 +25,8 @@
|
|||||||
<shortcut id="QtCreator.Options">
|
<shortcut id="QtCreator.Options">
|
||||||
<key value="Ctrl+,"/>
|
<key value="Ctrl+,"/>
|
||||||
</shortcut>
|
</shortcut>
|
||||||
|
<shortcut id="QtCreator.Locate">
|
||||||
|
<key value="Ctrl+P"/>
|
||||||
|
</shortcut>
|
||||||
|
<shortcut id="QtCreator.Print"/>
|
||||||
</mapping>
|
</mapping>
|
||||||
|
@@ -12218,123 +12218,123 @@ und das Überschreiben Ihrer Einstellungen erfordert. Das Überschreiben erlaube
|
|||||||
<name>QtC::AppManager</name>
|
<name>QtC::AppManager</name>
|
||||||
<message>
|
<message>
|
||||||
<source>Create Application Manager package with CMake</source>
|
<source>Create Application Manager package with CMake</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Application Manager-Paket mit CMake erstellen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Create Application Manager package</source>
|
<source>Create Application Manager package</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Application Manager-Paket erstellen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Source directory:</source>
|
<source>Source directory:</source>
|
||||||
<translation type="unfinished">Quellverzeichnis:</translation>
|
<translation>Quellverzeichnis:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Package file:</source>
|
<source>Package file:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Paketdatei:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Automatic Application Manager Deploy Configuration</source>
|
<source>Automatic Application Manager Deploy Configuration</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Automatische Deployment-Konfiguration für Application Manager</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Deploy Application Manager package</source>
|
<source>Deploy Application Manager package</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Deployment des Application Manager-Pakets</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Target directory:</source>
|
<source>Target directory:</source>
|
||||||
<translation type="unfinished">Zielverzeichnis:</translation>
|
<translation>Zielverzeichnis:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Uploading finished.</source>
|
<source>Uploading finished.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Hochladen beendet.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Uploading failed.</source>
|
<source>Uploading failed.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Hochladen fehlgeschlagen.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Install Application Manager package</source>
|
<source>Install Application Manager package</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Application Manager-Paket installieren</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Starting command "%1".</source>
|
<source>Starting command "%1".</source>
|
||||||
<translation type="unfinished">Starte Kommando "%1".</translation>
|
<translation>Starte Kommando "%1".</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Command finished successfully.</source>
|
<source>Command finished successfully.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Das Kommando wurde erfolgreich beendet.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Process failed: %1</source>
|
<source>Process failed: %1</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Der Prozess schlug fehl: %1</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Process finished with exit code %1.</source>
|
<source>Process finished with exit code %1.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Der Prozess wurde mit dem Rückgabewert %1 beendet.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Run an Application Manager Package</source>
|
<source>Run an Application Manager Package</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Ein Application Manager-Paket ausführen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Run and Debug an Application Manager Package</source>
|
<source>Run and Debug an Application Manager Package</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Ein Application Manager-Paket ausführen und debuggen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Clean Environment</source>
|
<source>Clean Environment</source>
|
||||||
<translation type="unfinished">Saubere Umgebung</translation>
|
<translation>Saubere Umgebung</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>%1 exited.</source>
|
<source>%1 exited.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>%1 wurde beendet.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Starting Application Manager debugging...</source>
|
<source>Starting Application Manager debugging...</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Starte Application Manager-Debuggen...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Using: %1.</source>
|
<source>Using: %1.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Benutze: %1.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Cannot debug: Only QML and native applications are supported.</source>
|
<source>Cannot debug: Only QML and native applications are supported.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Kann nicht debuggen: Es werden nur QML- und native Anwendungen unterstützt.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Cannot debug: Local executable is not set.</source>
|
<source>Cannot debug: Local executable is not set.</source>
|
||||||
<translation type="unfinished">Kann nicht debuggen: Lokale ausführbare Datei ist nicht angegeben.</translation>
|
<translation>Kann nicht debuggen: Lokale ausführbare Datei ist nicht angegeben.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Application ID:</source>
|
<source>Application ID:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Anwendungs-ID:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Application Manager instance ID:</source>
|
<source>Application Manager instance ID:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>ID der Application Manager-Instanz:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Default instance</source>
|
<source>Default instance</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Voreingestellte Instanz</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Document URL:</source>
|
<source>Document URL:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Dokument-URL:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Customize step</source>
|
<source>Customize step</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Schritt anpassen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Disables the automatic updates based on the current run configuration and allows customizing the values.</source>
|
<source>Disables the automatic updates based on the current run configuration and allows customizing the values.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Deaktiviert die auf der aktuellen Ausführungskonfiguration basierenden automatischen Aktualisierungen und erlaubt, die Werte anzupassen.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Controller:</source>
|
<source>Controller:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Controller:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Packager:</source>
|
<source>Packager:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Packager:</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
@@ -13693,178 +13693,181 @@ Siehe auch die Einstellungen für Google Test.</translation>
|
|||||||
<name>QtC::Axivion</name>
|
<name>QtC::Axivion</name>
|
||||||
<message>
|
<message>
|
||||||
<source>Project:</source>
|
<source>Project:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Projekt:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Lines of code:</source>
|
<source>Lines of code:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Codezeilen:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Analysis timestamp:</source>
|
<source>Analysis timestamp:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Zeitstempel der Analyse:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>unknown</source>
|
<source>unknown</source>
|
||||||
<translation type="unfinished">unbekannt</translation>
|
<translation>unbekannt</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Total:</source>
|
<source>Total:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Summe:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Owner</source>
|
<source>Owner</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Eigentümer</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Path globbing</source>
|
<source>Path globbing</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Pfad-Globbing</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Total rows:</source>
|
<source>Total rows:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Gesamtzeilen:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Axivion</source>
|
<source>Axivion</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Axivion</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Show dashboard</source>
|
<source>Show dashboard</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Dashboard anzeigen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Search for issues</source>
|
<source>Search for issues</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Probleme durchsuchen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Show rule details</source>
|
<source>Show rule details</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Regeldetails anzeigen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Certificate Error</source>
|
<source>Certificate Error</source>
|
||||||
<translation type="unfinished">Zertifikatsfehler</translation>
|
<translation>Zertifikatsfehler</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Server certificate for %1 cannot be authenticated.
|
<source>Server certificate for %1 cannot be authenticated.
|
||||||
Do you want to disable SSL verification for this server?
|
Do you want to disable SSL verification for this server?
|
||||||
Note: This can expose you to man-in-the-middle attack.</source>
|
Note: This can expose you to man-in-the-middle attack.</source>
|
||||||
<translation type="unfinished">Server-Zertifikat für %1 kann nicht authentifiziert werden.
|
<translation>Server-Zertifikat für %1 kann nicht authentifiziert werden.
|
||||||
Möchten Sie die SSL-Verifikation für diesen Server abschalten?
|
Möchten Sie die SSL-Verifikation für diesen Server abschalten?
|
||||||
Hinweis: Dies macht Sie anfällig für Man-in-the-middle-Angriffe.</translation>
|
Hinweis: Dies macht Sie anfällig für Man-in-the-middle-Angriffe.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Unknown Dto structure deserialization error.</source>
|
<source>Unknown Dto structure deserialization error.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Unbekannter Fehler in der Dto-Struktur beim Deserialisieren.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>The ApiToken cannot be read in a secure way.</source>
|
<source>The ApiToken cannot be read in a secure way.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Das ApiToken kann nicht auf sichere Weise gelesen werden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>The ApiToken cannot be stored in a secure way.</source>
|
<source>The ApiToken cannot be stored in a secure way.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Das ApiToken kann nicht auf sichere Weise gespeichert werden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>The ApiToken cannot be deleted in a secure way.</source>
|
<source>The ApiToken cannot be deleted in a secure way.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Das ApiToken kann nicht auf sichere Weise gelöscht werden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Key chain message: "%1".</source>
|
<source>Key chain message: "%1".</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Meldung der Schlüsselverwaltung: "%1".</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Enter the password for:
|
<source>Enter the password for:
|
||||||
Dashboard: %1
|
Dashboard: %1
|
||||||
User: %2</source>
|
User: %2</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Geben Sie das Passwort ein für:
|
||||||
|
Dashboard: %1
|
||||||
|
Benutzer: %2</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Axivion Server Password</source>
|
<source>Axivion Server Password</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Axivion Server-Passwort</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>The stored ApiToken is not valid anymore, removing it.</source>
|
<source>The stored ApiToken is not valid anymore, removing it.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Das gespeicherte ApiToken ist nicht mehr gültig und wird entfernt.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Fetching DashboardInfo error.</source>
|
<source>Fetching DashboardInfo error.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Fehler beim Abrufen der DashboardInfo.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>The DashboardInfo doesn't contain project "%1".</source>
|
<source>The DashboardInfo doesn't contain project "%1".</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Die DashboardInfo enthält das Projekt "%1" nicht.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>The activated link appears to be external.
|
<source>The activated link appears to be external.
|
||||||
Do you want to open "%1" with its default application?</source>
|
Do you want to open "%1" with its default application?</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Der aktivierte Link scheint extern zu sein.
|
||||||
|
Wollen Sie "%1" mit der Standardanwendung öffnen?</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Open External Links</source>
|
<source>Open External Links</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Externe Links öffnen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Fetch Projects</source>
|
<source>Fetch Projects</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Projekte abrufen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Link Project</source>
|
<source>Link Project</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Projekt verknüpfen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Unlink Project</source>
|
<source>Unlink Project</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Projektverknüpfung aufheben</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Dashboard projects:</source>
|
<source>Dashboard projects:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Dashboard-Projekte:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>This project is not linked to a dashboard project.</source>
|
<source>This project is not linked to a dashboard project.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Dieses Projekt ist nicht mit einem Dashboard-Projekt verknüpft.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>This project is linked to "%1".</source>
|
<source>This project is linked to "%1".</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Dieses Projekt ist mit "%1" verknüpft.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Incomplete or misconfigured settings.</source>
|
<source>Incomplete or misconfigured settings.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Unvollständige oder fehlerhafte Einstellungen.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Highlight marks</source>
|
<source>Highlight marks</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Markierungen hervorheben</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Marks issues on the scroll bar.</source>
|
<source>Marks issues on the scroll bar.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Markiert Probleme in der Bildlaufleiste.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Dashboard URL:</source>
|
<source>Dashboard URL:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Dashboard-URL:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Username:</source>
|
<source>Username:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Benutzername:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>User name</source>
|
<source>User name</source>
|
||||||
<translation type="unfinished">Benutzername</translation>
|
<translation>Benutzername</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Edit...</source>
|
<source>Edit...</source>
|
||||||
<translation type="unfinished">Bearbeiten...</translation>
|
<translation>Bearbeiten...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Edit Dashboard Configuration</source>
|
<source>Edit Dashboard Configuration</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Dashboard-Konfiguration bearbeiten</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>General</source>
|
<source>General</source>
|
||||||
<translation type="unfinished">Allgemein</translation>
|
<translation>Allgemein</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Fetching...</source>
|
<source>Fetching...</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Rufe ab...</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
@@ -44332,7 +44335,7 @@ fails because Clang does not understand the target architecture.</source>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>&Generate Kit</source>
|
<source>&Generate Kit</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>&Kit erstellen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>&Clean Up</source>
|
<source>&Clean Up</source>
|
||||||
@@ -44400,19 +44403,19 @@ fails because Clang does not understand the target architecture.</source>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Installing PySide</source>
|
<source>Installing PySide</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Installiere PySide</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>You can install PySide from PyPi (Community OSS version) or from your Qt installation location, if you are using the Qt Installer and have a commercial license.</source>
|
<source>You can install PySide from PyPi (Community OSS version) or from your Qt installation location, if you are using the Qt Installer and have a commercial license.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Sie können PySide von PyPI (Community OSS-Version) oder, falls Sie den Qt-Installer benutzen und eine kommerzielle Lizenz besitzen, von Ihrer Qt-Installation installieren.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Select which version to install:</source>
|
<source>Select which version to install:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Wählen Sie die zu installierende Version aus:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Latest PySide from the PyPI</source>
|
<source>Latest PySide from the PyPI</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Letzte PySide-Version von PyPI</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>PySide %1 Wheel (%2)</source>
|
<source>PySide %1 Wheel (%2)</source>
|
||||||
@@ -44464,27 +44467,28 @@ fails because Clang does not understand the target architecture.</source>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>PySide uic tool:</source>
|
<source>PySide uic tool:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>PySide uic-Werkzeug:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Enter location of PySide uic tool.</source>
|
<source>Enter location of PySide uic tool.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Geben Sie den Ort des PySide uic-Werkzeugs ein.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Effective venv:</source>
|
<source>Effective venv:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Resultierende venv:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>New Virtual Environment</source>
|
<source>New Virtual Environment</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Neue virtuelle Umgebung</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Global Python</source>
|
<source>Global Python</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Globales Python</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source> Virtual Environment</source>
|
<source> Virtual Environment</source>
|
||||||
<translation type="unfinished"></translation>
|
<translatorcomment>python->name + Tr::tr(" Virtual Environment");</translatorcomment>
|
||||||
|
<translation> virtuelle Umgebung</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>REPL</source>
|
<source>REPL</source>
|
||||||
@@ -44564,43 +44568,43 @@ fails because Clang does not understand the target architecture.</source>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>None</source>
|
<source>None</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Kein</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>The interpreter used for Python based projects.</source>
|
<source>The interpreter used for Python based projects.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Der für Python-basierte Projekte benutzte Interpreter.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>No Python setup.</source>
|
<source>No Python setup.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Kein Python eingerichtet.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Python "%1" not found.</source>
|
<source>Python "%1" not found.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Python "%1" nicht gefunden.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Python "%1" is not executable.</source>
|
<source>Python "%1" is not executable.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Python "%1" nicht ausführbar.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Python "%1" does not contain a usable pip. pip is needed to install Python packages from the Python Package Index, like PySide and the Python language server. To use any of that functionality ensure that pip is installed for that Python.</source>
|
<source>Python "%1" does not contain a usable pip. pip is needed to install Python packages from the Python Package Index, like PySide and the Python language server. To use any of that functionality ensure that pip is installed for that Python.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Python "%1" enthält kein verwendbares pip. pip wird für das Installieren von Python-Paketen wie PySide und dem Python Language Server vom Python Package Index benötigt. Um diese Funktionen benutzen zu können, stellen Sie sicher, dass pip für dieses Python installiert ist.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Python "%1" does not contain a usable venv. venv is the recommended way to isolate a development environment for a project from the globally installed Python.</source>
|
<source>Python "%1" does not contain a usable venv. venv is the recommended way to isolate a development environment for a project from the globally installed Python.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Python "%1" enthält kein verwendbares venv. venv ist der empfohlene Weg, um eine Entwicklungsumgebung für ein Projekt von der globalen Python-Installation zu isolieren.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Name of Python Interpreter</source>
|
<source>Name of Python Interpreter</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Name des Python-Interpreters</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Path to Python Interpreter</source>
|
<source>Path to Python Interpreter</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Pfad zum Python-Interpreter</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>No Python interpreter set for kit "%1"</source>
|
<source>No Python interpreter set for kit "%1"</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Kein Python-Interpreter für das Kit "%1" eingerichtet</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
@@ -49742,7 +49746,7 @@ Zusätzlich wird die Verbindung zum Gerät getestet.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Remote command finished successfully.</source>
|
<source>Remote command finished successfully.</source>
|
||||||
<translation>Das entfernte Kommando wurde erfolgreich ausgeführt.</translation>
|
<translation>Das entfernte Kommando wurde erfolgreich beendet.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>WizardPage</source>
|
<source>WizardPage</source>
|
||||||
|
@@ -547,18 +547,6 @@ private:
|
|||||||
\endcode
|
\endcode
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*!
|
|
||||||
\fn GroupItem Group::withTimeout(std::chrono::milliseconds timeout, const std::function<void()> &handler) const
|
|
||||||
|
|
||||||
Attaches \c TimeoutTask to a copy of \c this group, elapsing after \a timeout in milliseconds,
|
|
||||||
with an optionally provided timeout \a handler, and returns the coupled item.
|
|
||||||
|
|
||||||
When the group finishes before \a timeout passes,
|
|
||||||
the returned item finishes immediately with the group's result.
|
|
||||||
Otherwise, the \a handler is invoked (if provided), the group's tasks are canceled,
|
|
||||||
and the returned item finishes with an error.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
\class Tasking::Sync
|
\class Tasking::Sync
|
||||||
\inheaderfile solutions/tasking/tasktree.h
|
\inheaderfile solutions/tasking/tasktree.h
|
||||||
@@ -758,17 +746,6 @@ private:
|
|||||||
\sa TaskSetupHandler, TaskDoneHandler
|
\sa TaskSetupHandler, TaskDoneHandler
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*!
|
|
||||||
\fn template <typename Adapter> GroupItem CustomTask<Adapter>::withTimeout(std::chrono::milliseconds timeout, const std::function<void()> &handler) const
|
|
||||||
|
|
||||||
Attaches \c TimeoutTask to a copy of \c this task, elapsing after \a timeout in milliseconds,
|
|
||||||
with an optionally provided timeout \a handler, and returns the coupled item.
|
|
||||||
|
|
||||||
When the task finishes before \a timeout passes, the returned item finishes immediately
|
|
||||||
with the task's result. Otherwise, \a handler is invoked (if provided),
|
|
||||||
the task is canceled, and the returned item finishes with an error.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
\enum Tasking::WorkflowPolicy
|
\enum Tasking::WorkflowPolicy
|
||||||
|
|
||||||
@@ -1415,6 +1392,26 @@ void GroupItem::addChildren(const QList<GroupItem> &children)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\class Tasking::ExecutableItem
|
||||||
|
\inheaderfile solutions/tasking/tasktree.h
|
||||||
|
\inmodule TaskingSolution
|
||||||
|
\brief Base class for executable task items.
|
||||||
|
\reentrant
|
||||||
|
|
||||||
|
\c ExecutableItem provides an additional interface for items containing executable tasks.
|
||||||
|
Use withTimeout() to attach a timeout to a task.
|
||||||
|
Use withLog() to include debugging information about the task startup and the execution result.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*!
|
||||||
|
Attaches \c TimeoutTask to a copy of \c this ExecutableItem, elapsing after \a timeout
|
||||||
|
in milliseconds, with an optionally provided timeout \a handler, and returns the coupled item.
|
||||||
|
|
||||||
|
When the ExecutableItem finishes before \a timeout passes, the returned item finishes
|
||||||
|
immediately with the task's result. Otherwise, \a handler is invoked (if provided),
|
||||||
|
the task is canceled, and the returned item finishes with an error.
|
||||||
|
*/
|
||||||
ExecutableItem ExecutableItem::withTimeout(milliseconds timeout,
|
ExecutableItem ExecutableItem::withTimeout(milliseconds timeout,
|
||||||
const std::function<void()> &handler) const
|
const std::function<void()> &handler) const
|
||||||
{
|
{
|
||||||
@@ -1433,6 +1430,17 @@ ExecutableItem ExecutableItem::withTimeout(milliseconds timeout,
|
|||||||
|
|
||||||
static QString currentTime() { return QTime::currentTime().toString(Qt::ISODateWithMs); }
|
static QString currentTime() { return QTime::currentTime().toString(Qt::ISODateWithMs); }
|
||||||
|
|
||||||
|
/*!
|
||||||
|
Attaches a custom debug printout to a copy of \c this ExecutableItem,
|
||||||
|
issued on task startup and after the task is finished, and returns the coupled item.
|
||||||
|
|
||||||
|
The debug printout includes a timestamp of the event (start or finish)
|
||||||
|
and \a logName to identify the specific task in the debug log.
|
||||||
|
|
||||||
|
The finish printout contains the additional information whether the execution was
|
||||||
|
synchronous or asynchronous, its result (the value described by the DoneWith enum),
|
||||||
|
and the total execution time in milliseconds.
|
||||||
|
*/
|
||||||
ExecutableItem ExecutableItem::withLog(const QString &logName) const
|
ExecutableItem ExecutableItem::withLog(const QString &logName) const
|
||||||
{
|
{
|
||||||
const auto header = [logName] {
|
const auto header = [logName] {
|
||||||
|
@@ -450,9 +450,11 @@ static Group dtoRecipe(const Storage<DtoStorageType<DtoType>> &dtoStorage)
|
|||||||
if (error) {
|
if (error) {
|
||||||
if constexpr (std::is_same_v<DtoType, Dto::DashboardInfoDto>) {
|
if constexpr (std::is_same_v<DtoType, Dto::DashboardInfoDto>) {
|
||||||
// Suppress logging error on unauthorized dashboard fetch
|
// Suppress logging error on unauthorized dashboard fetch
|
||||||
if (!dtoStorage->credential && error->type == "UnauthenticatedException")
|
if (!dtoStorage->credential && error->type == "UnauthenticatedException") {
|
||||||
|
dtoStorage->url = reply->url();
|
||||||
return DoneResult::Success;
|
return DoneResult::Success;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
errorString = Error(DashboardError(reply->url(), statusCode,
|
errorString = Error(DashboardError(reply->url(), statusCode,
|
||||||
reply->attribute(QNetworkRequest::HttpReasonPhraseAttribute).toString(),
|
reply->attribute(QNetworkRequest::HttpReasonPhraseAttribute).toString(),
|
||||||
@@ -530,13 +532,11 @@ static void handleCredentialError(const CredentialQuery &credential)
|
|||||||
|
|
||||||
static Group authorizationRecipe()
|
static Group authorizationRecipe()
|
||||||
{
|
{
|
||||||
|
const Storage<QUrl> serverUrlStorage;
|
||||||
const Storage<GetDtoStorage<Dto::DashboardInfoDto>> unauthorizedDashboardStorage;
|
const Storage<GetDtoStorage<Dto::DashboardInfoDto>> unauthorizedDashboardStorage;
|
||||||
const auto onUnauthorizedGroupSetup = [unauthorizedDashboardStorage] {
|
const auto onUnauthorizedGroupSetup = [serverUrlStorage, unauthorizedDashboardStorage] {
|
||||||
if (isServerAccessEstablished())
|
unauthorizedDashboardStorage->url = *serverUrlStorage;
|
||||||
return SetupResult::StopWithSuccess;
|
return isServerAccessEstablished() ? SetupResult::StopWithSuccess : SetupResult::Continue;
|
||||||
|
|
||||||
unauthorizedDashboardStorage->url = QUrl(settings().server.dashboard);
|
|
||||||
return SetupResult::Continue;
|
|
||||||
};
|
};
|
||||||
const auto onUnauthorizedDashboard = [unauthorizedDashboardStorage] {
|
const auto onUnauthorizedDashboard = [unauthorizedDashboardStorage] {
|
||||||
if (unauthorizedDashboardStorage->dtoData) {
|
if (unauthorizedDashboardStorage->dtoData) {
|
||||||
@@ -575,7 +575,7 @@ static Group authorizationRecipe()
|
|||||||
|
|
||||||
const Storage<QString> passwordStorage;
|
const Storage<QString> passwordStorage;
|
||||||
const Storage<GetDtoStorage<Dto::DashboardInfoDto>> dashboardStorage;
|
const Storage<GetDtoStorage<Dto::DashboardInfoDto>> dashboardStorage;
|
||||||
const auto onPasswordGroupSetup = [passwordStorage, dashboardStorage] {
|
const auto onPasswordGroupSetup = [serverUrlStorage, passwordStorage, dashboardStorage] {
|
||||||
if (dd->m_apiToken)
|
if (dd->m_apiToken)
|
||||||
return SetupResult::StopWithSuccess;
|
return SetupResult::StopWithSuccess;
|
||||||
|
|
||||||
@@ -589,7 +589,7 @@ static Group authorizationRecipe()
|
|||||||
|
|
||||||
const QString credential = settings().server.username + ':' + *passwordStorage;
|
const QString credential = settings().server.username + ':' + *passwordStorage;
|
||||||
dashboardStorage->credential = "Basic " + credential.toUtf8().toBase64();
|
dashboardStorage->credential = "Basic " + credential.toUtf8().toBase64();
|
||||||
dashboardStorage->url = QUrl(settings().server.dashboard);
|
dashboardStorage->url = *serverUrlStorage;
|
||||||
return SetupResult::Continue;
|
return SetupResult::Continue;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -632,13 +632,13 @@ static Group authorizationRecipe()
|
|||||||
return DoneResult::Success;
|
return DoneResult::Success;
|
||||||
};
|
};
|
||||||
|
|
||||||
const auto onDashboardGroupSetup = [dashboardStorage] {
|
const auto onDashboardGroupSetup = [serverUrlStorage, dashboardStorage] {
|
||||||
if (dd->m_dashboardInfo || dd->m_serverAccess != ServerAccess::WithAuthorization
|
if (dd->m_dashboardInfo || dd->m_serverAccess != ServerAccess::WithAuthorization
|
||||||
|| !dd->m_apiToken) {
|
|| !dd->m_apiToken) {
|
||||||
return SetupResult::StopWithSuccess; // Unauthorized access should have collect dashboard before
|
return SetupResult::StopWithSuccess; // Unauthorized access should have collect dashboard before
|
||||||
}
|
}
|
||||||
dashboardStorage->credential = "AxToken " + *dd->m_apiToken;
|
dashboardStorage->credential = "AxToken " + *dd->m_apiToken;
|
||||||
dashboardStorage->url = QUrl(settings().server.dashboard);
|
dashboardStorage->url = *serverUrlStorage;
|
||||||
return SetupResult::Continue;
|
return SetupResult::Continue;
|
||||||
};
|
};
|
||||||
const auto onDeleteCredentialSetup = [dashboardStorage](CredentialQuery &credential) {
|
const auto onDeleteCredentialSetup = [dashboardStorage](CredentialQuery &credential) {
|
||||||
@@ -656,11 +656,16 @@ static Group authorizationRecipe()
|
|||||||
};
|
};
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
serverUrlStorage,
|
||||||
|
onGroupSetup([serverUrlStorage] { *serverUrlStorage = QUrl(settings().server.dashboard); }),
|
||||||
Group {
|
Group {
|
||||||
unauthorizedDashboardStorage,
|
unauthorizedDashboardStorage,
|
||||||
onGroupSetup(onUnauthorizedGroupSetup),
|
onGroupSetup(onUnauthorizedGroupSetup),
|
||||||
dtoRecipe(unauthorizedDashboardStorage),
|
dtoRecipe(unauthorizedDashboardStorage),
|
||||||
Sync(onUnauthorizedDashboard)
|
Sync(onUnauthorizedDashboard),
|
||||||
|
onGroupDone([serverUrlStorage, unauthorizedDashboardStorage] {
|
||||||
|
*serverUrlStorage = unauthorizedDashboardStorage->url;
|
||||||
|
}),
|
||||||
},
|
},
|
||||||
Group {
|
Group {
|
||||||
LoopUntil(onCredentialLoopCondition),
|
LoopUntil(onCredentialLoopCondition),
|
||||||
|
@@ -261,6 +261,7 @@ AxivionSettingsWidget::AxivionSettingsWidget()
|
|||||||
void AxivionSettingsWidget::apply()
|
void AxivionSettingsWidget::apply()
|
||||||
{
|
{
|
||||||
settings().server = m_dashboardDisplay->dashboardServer();
|
settings().server = m_dashboardDisplay->dashboardServer();
|
||||||
|
emit settings().changed(); // ugly but needed
|
||||||
settings().toSettings();
|
settings().toSettings();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -291,12 +291,17 @@ void ClangdFindReferences::Private::handleFindUsagesResult(const QList<Location>
|
|||||||
|
|
||||||
for (const Location &loc : locations)
|
for (const Location &loc : locations)
|
||||||
fileData[loc.uri()].rangesAndLineText.push_back({loc.range(), {}});
|
fileData[loc.uri()].rangesAndLineText.push_back({loc.range(), {}});
|
||||||
|
QSet<FilePath> canonicalFilePaths;
|
||||||
for (auto it = fileData.begin(); it != fileData.end();) {
|
for (auto it = fileData.begin(); it != fileData.end();) {
|
||||||
const Utils::FilePath filePath = client()->serverUriToHostPath(it.key());
|
const Utils::FilePath filePath = client()->serverUriToHostPath(it.key());
|
||||||
if (!filePath.exists()) { // https://github.com/clangd/clangd/issues/935
|
if (!filePath.exists()) { // https://github.com/clangd/clangd/issues/935
|
||||||
it = fileData.erase(it);
|
it = fileData.erase(it);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
if (!Utils::insert(canonicalFilePaths, filePath.canonicalPath())) { // QTCREATORBUG-30546
|
||||||
|
it = fileData.erase(it);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
const QStringList lines = SymbolSupport::getFileContents(filePath);
|
const QStringList lines = SymbolSupport::getFileContents(filePath);
|
||||||
it->fileContent = lines.join('\n');
|
it->fileContent = lines.join('\n');
|
||||||
for (auto &rangeWithText : it.value().rangesAndLineText) {
|
for (auto &rangeWithText : it.value().rangesAndLineText) {
|
||||||
|
@@ -274,6 +274,10 @@ struct ItemData
|
|||||||
Utils::Text::Range range;
|
Utils::Text::Range range;
|
||||||
QVariant userData;
|
QVariant userData;
|
||||||
};
|
};
|
||||||
|
bool operator==(const ItemData &id1, const ItemData &id2)
|
||||||
|
{
|
||||||
|
return id1.range == id2.range && id1.userData == id2.userData;
|
||||||
|
}
|
||||||
|
|
||||||
QStringList SymbolSupport::getFileContents(const Utils::FilePath &filePath)
|
QStringList SymbolSupport::getFileContents(const Utils::FilePath &filePath)
|
||||||
{
|
{
|
||||||
@@ -342,15 +346,32 @@ Utils::SearchResultItems generateSearchResultItems(
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
using ItemDataPerPath = QMap<Utils::FilePath, QList<ItemData>>;
|
||||||
|
void filterFileAliases(ItemDataPerPath &itemDataPerPath)
|
||||||
|
{
|
||||||
|
QSet<Utils::FilePath> canonicalPaths;
|
||||||
|
for (auto it = itemDataPerPath.begin(); it != itemDataPerPath.end(); ) {
|
||||||
|
const Utils::FilePath canonicalPath = it.key().canonicalPath();
|
||||||
|
if (!Utils::insert(canonicalPaths, canonicalPath)
|
||||||
|
&& it.value() == itemDataPerPath.value(canonicalPath)) { // QTCREATORBUG-30546
|
||||||
|
it = itemDataPerPath.erase(it);
|
||||||
|
} else {
|
||||||
|
++it;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Utils::SearchResultItems generateSearchResultItems(
|
Utils::SearchResultItems generateSearchResultItems(
|
||||||
const LanguageClientArray<Location> &locations, const DocumentUri::PathMapper &pathMapper)
|
const LanguageClientArray<Location> &locations, const DocumentUri::PathMapper &pathMapper)
|
||||||
{
|
{
|
||||||
if (locations.isNull())
|
if (locations.isNull())
|
||||||
return {};
|
return {};
|
||||||
QMap<Utils::FilePath, QList<ItemData>> rangesInDocument;
|
ItemDataPerPath rangesInDocument;
|
||||||
for (const Location &location : locations.toList())
|
for (const Location &location : locations.toList()) {
|
||||||
rangesInDocument[location.uri().toFilePath(pathMapper)]
|
rangesInDocument[location.uri().toFilePath(pathMapper)]
|
||||||
<< ItemData{SymbolSupport::convertRange(location.range()), {}};
|
<< ItemData{SymbolSupport::convertRange(location.range()), {}};
|
||||||
|
}
|
||||||
|
filterFileAliases(rangesInDocument);
|
||||||
return generateSearchResultItems(rangesInDocument);
|
return generateSearchResultItems(rangesInDocument);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -552,7 +573,7 @@ Utils::SearchResultItems generateReplaceItems(const WorkspaceEdit &edits,
|
|||||||
return ItemData{SymbolSupport::convertRange(edit.range()), QVariant(edit)};
|
return ItemData{SymbolSupport::convertRange(edit.range()), QVariant(edit)};
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
QMap<Utils::FilePath, QList<ItemData>> rangesInDocument;
|
ItemDataPerPath rangesInDocument;
|
||||||
auto documentChanges = edits.documentChanges().value_or(QList<DocumentChange>());
|
auto documentChanges = edits.documentChanges().value_or(QList<DocumentChange>());
|
||||||
if (!documentChanges.isEmpty()) {
|
if (!documentChanges.isEmpty()) {
|
||||||
for (const DocumentChange &documentChange : std::as_const(documentChanges)) {
|
for (const DocumentChange &documentChange : std::as_const(documentChanges)) {
|
||||||
@@ -588,6 +609,7 @@ Utils::SearchResultItems generateReplaceItems(const WorkspaceEdit &edits,
|
|||||||
for (auto it = changes.begin(), end = changes.end(); it != end; ++it)
|
for (auto it = changes.begin(), end = changes.end(); it != end; ++it)
|
||||||
rangesInDocument[it.key().toFilePath(pathMapper)] = convertEdits(it.value());
|
rangesInDocument[it.key().toFilePath(pathMapper)] = convertEdits(it.value());
|
||||||
}
|
}
|
||||||
|
filterFileAliases(rangesInDocument);
|
||||||
items += generateSearchResultItems(rangesInDocument, search, limitToProjects);
|
items += generateSearchResultItems(rangesInDocument, search, limitToProjects);
|
||||||
return items;
|
return items;
|
||||||
}
|
}
|
||||||
|
@@ -372,7 +372,8 @@ QString QmakeBuildConfiguration::unalignedBuildDirWarning()
|
|||||||
bool QmakeBuildConfiguration::isBuildDirAtSafeLocation(const FilePath &sourceDir,
|
bool QmakeBuildConfiguration::isBuildDirAtSafeLocation(const FilePath &sourceDir,
|
||||||
const FilePath &buildDir)
|
const FilePath &buildDir)
|
||||||
{
|
{
|
||||||
return buildDir.path().count('/') == sourceDir.path().count('/');
|
return buildDir.path().count('/') == sourceDir.path().count('/')
|
||||||
|
|| buildDir.isChildOf(sourceDir);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool QmakeBuildConfiguration::isBuildDirAtSafeLocation() const
|
bool QmakeBuildConfiguration::isBuildDirAtSafeLocation() const
|
||||||
|
@@ -3352,19 +3352,23 @@ void tst_Dumpers::dumper_data()
|
|||||||
+ CoreProfile()
|
+ CoreProfile()
|
||||||
|
|
||||||
+ Check("pii", "(1, 2)", "@QPair<int,int>") % Qt5
|
+ Check("pii", "(1, 2)", "@QPair<int,int>") % Qt5
|
||||||
+ Check("pii", "(1, 2)", TypeDef("std::pair<int,int>", "@QPair")) % Qt6
|
+ Check("pii", "(1, 2)", TypeDef("std::pair<int,int>", "@QPair")) % Qt6 % NoLldbEngine
|
||||||
|
+ Check("pii", "(1, 2)", TypePattern("@QPair(<int,int>)?")) % Qt6 % LldbEngine
|
||||||
+ Check("pii.first", "1", "int")
|
+ Check("pii.first", "1", "int")
|
||||||
+ Check("pii.second", "2", "int")
|
+ Check("pii.second", "2", "int")
|
||||||
+ Check("pis", "(1, ...)", "@QPair<int,QString>") % Qt5
|
+ Check("pis", "(1, ...)", "@QPair<int,QString>") % Qt5
|
||||||
+ Check("pis", "(1, ...)", TypeDef("std::pair<int,QString>", "@QPair")) % Qt6
|
+ Check("pis", "(1, ...)", TypeDef("std::pair<int,QString>", "@QPair")) % Qt6 % NoLldbEngine
|
||||||
|
+ Check("pis", "(1, ...)", TypePattern("@QPair(<int,QString>)?")) % Qt6 % LldbEngine
|
||||||
+ Check("pis.first", "1", "int")
|
+ Check("pis.first", "1", "int")
|
||||||
+ Check("pis.second", "\"ttt\"", "@QString")
|
+ Check("pis.second", "\"ttt\"", "@QString")
|
||||||
+ Check("psi", "(..., 2)", "@QPair<QString,int>") % Qt5
|
+ Check("psi", "(..., 2)", "@QPair<QString,int>") % Qt5
|
||||||
+ Check("psi", "(..., 2)", TypeDef("std::pair<QString,int>", "@QPair")) % Qt6
|
+ Check("psi", "(..., 2)", TypeDef("std::pair<QString,int>", "@QPair")) % Qt6 % NoLldbEngine
|
||||||
|
+ Check("psi", "(..., 2)", TypePattern("@QPair(<QString,int>)?")) % Qt6 % LldbEngine
|
||||||
+ Check("psi.first", "\"sss\"", "@QString")
|
+ Check("psi.first", "\"sss\"", "@QString")
|
||||||
+ Check("psi.second", "2", "int")
|
+ Check("psi.second", "2", "int")
|
||||||
+ Check("pss", "(..., ...)", "@QPair<QString,QString>") % Qt5
|
+ Check("pss", "(..., ...)", "@QPair<QString,QString>") % Qt5
|
||||||
+ Check("pss", "(..., ...)", TypeDef("std::pair<QString,QString>", "@QPair")) % Qt6
|
+ Check("pss", "(..., ...)", TypeDef("std::pair<QString,QString>", "@QPair")) % Qt6 % NoLldbEngine
|
||||||
|
+ Check("pss", "(..., ...)", TypePattern("@QPair(<QString,QString>)?")) % Qt6 % LldbEngine
|
||||||
+ Check("pss.first", "\"sss\"", "@QString")
|
+ Check("pss.first", "\"sss\"", "@QString")
|
||||||
+ Check("pss.second", "\"ttt\"", "@QString");
|
+ Check("pss.second", "\"ttt\"", "@QString");
|
||||||
|
|
||||||
|
@@ -36,10 +36,11 @@ def main():
|
|||||||
test.warning("It takes more than two seconds to expand the help content tree.")
|
test.warning("It takes more than two seconds to expand the help content tree.")
|
||||||
gettingStartedQModelIndex = getQModelIndexStr("text='Getting Started'", manualQModelIndex)
|
gettingStartedQModelIndex = getQModelIndexStr("text='Getting Started'", manualQModelIndex)
|
||||||
doubleClick(gettingStartedQModelIndex, 5, 5, 0, Qt.LeftButton)
|
doubleClick(gettingStartedQModelIndex, 5, 5, 0, Qt.LeftButton)
|
||||||
mouseClick(waitForObject(getQModelIndexStr("text='Building and Running an Example'",
|
pageTitle = "Configuring Qt Creator"
|
||||||
|
mouseClick(waitForObject(getQModelIndexStr("text='%s'" % pageTitle,
|
||||||
gettingStartedQModelIndex)))
|
gettingStartedQModelIndex)))
|
||||||
helpSelector = waitForObject(":Qt Creator_HelpSelector_QComboBox")
|
helpSelector = waitForObject(":Qt Creator_HelpSelector_QComboBox")
|
||||||
pageOpened = "str(helpSelector.currentText).startswith('Building and Running an Example')"
|
pageOpened = "str(helpSelector.currentText).startswith('%s')" % pageTitle
|
||||||
if not waitFor(pageOpened, 10000):
|
if not waitFor(pageOpened, 10000):
|
||||||
test.fatal("Help page is not opened after ten seconds. Giving up.")
|
test.fatal("Help page is not opened after ten seconds. Giving up.")
|
||||||
invokeMenuItem("File", "Exit")
|
invokeMenuItem("File", "Exit")
|
||||||
@@ -74,7 +75,7 @@ def main():
|
|||||||
sampleQModelIndex = getQModelIndexStr("text='Sample'", ":Qt Creator_Bookmarks_TreeView")
|
sampleQModelIndex = getQModelIndexStr("text='Sample'", ":Qt Creator_Bookmarks_TreeView")
|
||||||
folder1QModelIndex = getQModelIndexStr("text='Folder 1'", sampleQModelIndex)
|
folder1QModelIndex = getQModelIndexStr("text='Folder 1'", sampleQModelIndex)
|
||||||
folder2QModelIndex = getQModelIndexStr("text='Folder 2'", folder1QModelIndex)
|
folder2QModelIndex = getQModelIndexStr("text='Folder 2'", folder1QModelIndex)
|
||||||
bldRunQModelIndex = getQModelIndexStr("text?='%s'" % textForQtVersion("Building and Running an Example*"),
|
configQModelIndex = getQModelIndexStr("text?='%s'" % textForQtVersion("%s*" % pageTitle),
|
||||||
folder2QModelIndex)
|
folder2QModelIndex)
|
||||||
newFolderQModelIndex = getQModelIndexStr("text='New Folder'", sampleQModelIndex)
|
newFolderQModelIndex = getQModelIndexStr("text='New Folder'", sampleQModelIndex)
|
||||||
manualQModelIndex = getQModelIndexStr("text='%s'" % textForQtVersion("Qt Creator Manual"),
|
manualQModelIndex = getQModelIndexStr("text='%s'" % textForQtVersion("Qt Creator Manual"),
|
||||||
@@ -82,16 +83,16 @@ def main():
|
|||||||
test.verify(checkIfObjectExists(sampleQModelIndex, verboseOnFail = True) and
|
test.verify(checkIfObjectExists(sampleQModelIndex, verboseOnFail = True) and
|
||||||
checkIfObjectExists(folder1QModelIndex, verboseOnFail = True) and
|
checkIfObjectExists(folder1QModelIndex, verboseOnFail = True) and
|
||||||
checkIfObjectExists(folder2QModelIndex, verboseOnFail = True) and
|
checkIfObjectExists(folder2QModelIndex, verboseOnFail = True) and
|
||||||
checkIfObjectExists(bldRunQModelIndex, verboseOnFail = True) and
|
checkIfObjectExists(configQModelIndex, verboseOnFail = True) and
|
||||||
checkIfObjectExists(manualQModelIndex, verboseOnFail = True),
|
checkIfObjectExists(manualQModelIndex, verboseOnFail = True),
|
||||||
"Verifying if all folders and bookmarks are present")
|
"Verifying if all folders and bookmarks are present")
|
||||||
mouseClick(waitForObject(":Qt Creator_Bookmarks_TreeView"), 5, 5, 0, Qt.LeftButton)
|
mouseClick(waitForObject(":Qt Creator_Bookmarks_TreeView"), 5, 5, 0, Qt.LeftButton)
|
||||||
for _ in range(6):
|
for _ in range(6):
|
||||||
type(waitForObject(":Qt Creator_Bookmarks_TreeView"), "<Right>")
|
type(waitForObject(":Qt Creator_Bookmarks_TreeView"), "<Right>")
|
||||||
type(waitForObject(":Qt Creator_Bookmarks_TreeView"), "<Return>")
|
type(waitForObject(":Qt Creator_Bookmarks_TreeView"), "<Return>")
|
||||||
test.verify(textForQtVersion("Building and Running an Example") in getHelpTitle(),
|
test.verify(textForQtVersion(pageTitle) in getHelpTitle(),
|
||||||
"Verifying if first bookmark is opened")
|
"Verifying if first bookmark is opened")
|
||||||
mouseClick(waitForObject(bldRunQModelIndex))
|
mouseClick(waitForObject(configQModelIndex))
|
||||||
type(waitForObject(":Qt Creator_Bookmarks_TreeView"), "<Down>")
|
type(waitForObject(":Qt Creator_Bookmarks_TreeView"), "<Down>")
|
||||||
type(waitForObject(":Qt Creator_Bookmarks_TreeView"), "<Right>")
|
type(waitForObject(":Qt Creator_Bookmarks_TreeView"), "<Right>")
|
||||||
type(waitForObject(":Qt Creator_Bookmarks_TreeView"), "<Down>")
|
type(waitForObject(":Qt Creator_Bookmarks_TreeView"), "<Down>")
|
||||||
@@ -114,7 +115,7 @@ def main():
|
|||||||
test.verify(checkIfObjectExists(sampleQModelIndex, verboseOnFail = True) and
|
test.verify(checkIfObjectExists(sampleQModelIndex, verboseOnFail = True) and
|
||||||
checkIfObjectExists(folder1QModelIndex, shouldExist = False, verboseOnFail = True) and
|
checkIfObjectExists(folder1QModelIndex, shouldExist = False, verboseOnFail = True) and
|
||||||
checkIfObjectExists(folder2QModelIndex, shouldExist = False, verboseOnFail = True) and
|
checkIfObjectExists(folder2QModelIndex, shouldExist = False, verboseOnFail = True) and
|
||||||
checkIfObjectExists(bldRunQModelIndex, shouldExist = False, verboseOnFail = True) and
|
checkIfObjectExists(configQModelIndex, shouldExist = False, verboseOnFail = True) and
|
||||||
checkIfObjectExists(manualQModelIndex, verboseOnFail = True),
|
checkIfObjectExists(manualQModelIndex, verboseOnFail = True),
|
||||||
"Verifying if folder 1 and folder 2 deleted including their bookmark")
|
"Verifying if folder 1 and folder 2 deleted including their bookmark")
|
||||||
# exit
|
# exit
|
||||||
|
@@ -14,8 +14,9 @@ def clickItemVerifyHelpCombo(button, expectedHelpComboRegex, testDetails):
|
|||||||
test.log("Found %s" % str(helpCombo.currentText))
|
test.log("Found %s" % str(helpCombo.currentText))
|
||||||
# select "Welcome" page from left toolbar again
|
# select "Welcome" page from left toolbar again
|
||||||
switchViewTo(ViewConstants.WELCOME)
|
switchViewTo(ViewConstants.WELCOME)
|
||||||
return test.verify(object.exists(getWelcomeScreenSideBarButton(getStarted)),
|
return test.verify(checkIfObjectExists(getWelcomeScreenSideBarButton(getStarted), timeout=1000),
|
||||||
"Verifying: '%s' button is being displayed." % getStarted)
|
"Verifying: '%s' button is being displayed." % getStarted)
|
||||||
|
|
||||||
def buttonActive(button):
|
def buttonActive(button):
|
||||||
return waitForObject(button).checked
|
return waitForObject(button).checked
|
||||||
|
|
||||||
|
@@ -85,7 +85,7 @@ def createAndSwitchToSession(toSession):
|
|||||||
def checkWelcomePage(sessionName, isCurrent=False):
|
def checkWelcomePage(sessionName, isCurrent=False):
|
||||||
switchViewTo(ViewConstants.WELCOME)
|
switchViewTo(ViewConstants.WELCOME)
|
||||||
wsButton = getWelcomeScreenSideBarButton('Projects')
|
wsButton = getWelcomeScreenSideBarButton('Projects')
|
||||||
if not object.exists(wsButton):
|
if not checkIfObjectExists(wsButton, timeout=1000):
|
||||||
test.fatal("Something's pretty wrong - leaving check for WelcomePage.")
|
test.fatal("Something's pretty wrong - leaving check for WelcomePage.")
|
||||||
return
|
return
|
||||||
mouseClick(wsButton)
|
mouseClick(wsButton)
|
||||||
|