Merge remote-tracking branch 'origin/13.0' into qds/dev

Change-Id: I1d328f67a1c538e36a54f9660d5fb2840a6753df
This commit is contained in:
Tim Jenssen
2024-02-29 19:26:53 +01:00
519 changed files with 13916 additions and 7737 deletions

View File

@@ -44,11 +44,11 @@ Prerequisites:
* Qt WebEngine module for QtWebEngine based help viewer * Qt WebEngine module for QtWebEngine based help viewer
* On Windows: * On Windows:
* MinGW with GCC 9 or Visual Studio 2019 or later * MinGW with GCC 9 or Visual Studio 2019 or later
* Python 3.5 or later (optional, needed for the python enabled debug helper) * Python 3.8 or later (optional, needed for the python enabled debug helper)
* Debugging Tools for Windows (optional, for MSVC debugging support with CDB) * Debugging Tools for Windows (optional, for MSVC debugging support with CDB)
* On Mac OS X: latest Xcode * On Mac OS X: latest Xcode
* On Linux: GCC 9 or later * On Linux: GCC 9 or later
* LLVM/Clang 10 or later (optional, LLVM/Clang 14 is recommended. * LLVM/Clang 14 or later (optional, LLVM/Clang 17 is recommended.
See [instructions](#getting-llvmclang-for-the-clang-code-model) on how to See [instructions](#getting-llvmclang-for-the-clang-code-model) on how to
get LLVM. get LLVM.
The ClangFormat plugin uses the LLVM C++ API. The ClangFormat plugin uses the LLVM C++ API.

View File

@@ -24,34 +24,34 @@ function(create_python_xy PythonExe PythonZipFilePath)
cgi.py nntplib.py tarfile.py cgi.py nntplib.py tarfile.py
cgitb.py nturl2path.py telnetlib.py cgitb.py nturl2path.py telnetlib.py
chunk.py numbers.py tempfile.py chunk.py numbers.py tempfile.py
cmd.py optparse.py textwrap.py cmd.py optparse.py this.py
code.py pathlib.py this.py code.py pathlib.py timeit.py
codeop.py pdb.py timeit.py codeop.py pdb.py trace.py
colorsys.py pickle.py trace.py colorsys.py pickle.py tracemalloc.py
compileall.py pickletools.py tracemalloc.py compileall.py pickletools.py tty.py
configparser.py pipes.py tty.py configparser.py pipes.py turtle.py
contextvars.py plistlib.py turtle.py contextvars.py plistlib.py typing.py
cProfile.py poplib.py typing.py cProfile.py poplib.py uu.py
crypt.py pprint.py uu.py crypt.py pprint.py uuid.py
csv.py profile.py uuid.py csv.py profile.py wave.py
dataclasses.py pstats.py wave.py dataclasses.py pstats.py webbrowser.py
datetime.py pty.py webbrowser.py datetime.py pty.py xdrlib.py
decimal.py pyclbr.py xdrlib.py decimal.py pyclbr.py zipapp.py
difflib.py py_compile.py zipapp.py difflib.py py_compile.py zipfile.py
doctest.py queue.py zipfile.py doctest.py queue.py zipimport.py
dummy_threading.py quopri.py zipimport.py dummy_threading.py quopri.py _compat_pickle.py
filecmp.py random.py _compat_pickle.py filecmp.py random.py _compression.py
fileinput.py rlcompleter.py _compression.py fileinput.py rlcompleter.py _dummy_thread.py
formatter.py runpy.py _dummy_thread.py formatter.py runpy.py _markupbase.py
fractions.py sched.py _markupbase.py fractions.py sched.py _osx_support.py
ftplib.py secrets.py _osx_support.py ftplib.py secrets.py _pydecimal.py
getopt.py selectors.py _pydecimal.py getopt.py selectors.py _pyio.py
getpass.py shelve.py _pyio.py getpass.py shelve.py _py_abc.py
gettext.py shlex.py _py_abc.py gettext.py shlex.py _strptime.py
gzip.py shutil.py _strptime.py gzip.py shutil.py _threading_local.py
hashlib.py smtpd.py _threading_local.py hashlib.py smtpd.py __future__.py
hmac.py smtplib.py __future__.py hmac.py smtplib.py __phello__.foo.py
imaplib.py sndhdr.py __phello__.foo.py imaplib.py sndhdr.py
) )
list(FIND python_lib_files "${python_lib_dir}/${not_needed}" found_not_needed) list(FIND python_lib_files "${python_lib_dir}/${not_needed}" found_not_needed)
if (NOT found_not_needed STREQUAL "-1") if (NOT found_not_needed STREQUAL "-1")

View File

@@ -283,7 +283,7 @@ function(add_qtc_doc_attribution target attribution_file output_file qdocconf_fi
file(MAKE_DIRECTORY ${output_dir}) file(MAKE_DIRECTORY ${output_dir})
# add target # add target
add_custom_target(${target} add_custom_target(${target}
Qt6::qtattributionsscanner -o "${output_file}" ${attribution_file} Qt6::qtattributionsscanner -o "${output_file}" --basedir "${PROJECT_SOURCE_DIR}" ${attribution_file}
COMMENT "Create attributions ${output_file} from ${attribution_file}" COMMENT "Create attributions ${output_file} from ${attribution_file}"
DEPENDS "${attribution_file}" DEPENDS "${attribution_file}"
SOURCES "${attribution_file}" SOURCES "${attribution_file}"

View File

@@ -1,6 +1,6 @@
set(IDE_VERSION "12.0.82") # The IDE version. set(IDE_VERSION "12.0.83") # The IDE version.
set(IDE_VERSION_COMPAT "12.0.82") # The IDE Compatibility version. set(IDE_VERSION_COMPAT "12.0.83") # The IDE Compatibility version.
set(IDE_VERSION_DISPLAY "13.0.0-beta1") # The IDE display version. set(IDE_VERSION_DISPLAY "13.0.0-beta2") # The IDE display version.
set(IDE_COPYRIGHT_YEAR "2024") # The IDE current copyright year. set(IDE_COPYRIGHT_YEAR "2024") # The IDE current copyright year.
set(IDE_SETTINGSVARIANT "QtProject") # The IDE settings variation. set(IDE_SETTINGSVARIANT "QtProject") # The IDE settings variation.

View File

@@ -18,7 +18,7 @@ What's new?
### 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 on 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.qt.io/qtcreator/creator-overview-qtasam.html)) ([Documentation](https://doc.qt.io/qtcreator/creator-overview-qtasam.html))
@@ -39,6 +39,12 @@ General
for searching in `Files in File System` for searching in `Files in File System`
* Added `Copy to Clipboard` to the `About Qt Creator` dialog * Added `Copy to Clipboard` to the `About Qt Creator` dialog
([QTCREATORBUG-29886](https://bugreports.qt.io/browse/QTCREATORBUG-29886)) ([QTCREATORBUG-29886](https://bugreports.qt.io/browse/QTCREATORBUG-29886))
* Fixed issues with the window actions
([QTCREATORBUG-30381](https://bugreports.qt.io/browse/QTCREATORBUG-30381))
* Known Issues
* Installers provided by The Qt Company mostly display English text, not
the system's language
([QTIFW-3310](https://bugreports.qt.io/browse/QTIFW-3310))
Editing Editing
------- -------
@@ -63,6 +69,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))
* 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))
@@ -77,6 +84,8 @@ Editing
* Clangd * Clangd
* 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
([QTCREATORBUG-30374](https://bugreports.qt.io/browse/QTCREATORBUG-30374))
### QML ### QML
@@ -96,6 +105,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))
### Widget Designer ### Widget Designer
@@ -123,6 +133,7 @@ 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))
* 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`
@@ -130,6 +141,10 @@ Projects
([QTCREATORBUG-29530](https://bugreports.qt.io/browse/QTCREATORBUG-29530)) ([QTCREATORBUG-29530](https://bugreports.qt.io/browse/QTCREATORBUG-29530))
* Added a file wizard for Qt translation (`.ts`) files * Added a file wizard for Qt translation (`.ts`) files
([QTCREATORBUG-29775](https://bugreports.qt.io/browse/QTCREATORBUG-29775)) ([QTCREATORBUG-29775](https://bugreports.qt.io/browse/QTCREATORBUG-29775))
* Added an optional warning for special characters in build directories
([QTCREATORBUG-20834](https://bugreports.qt.io/browse/QTCREATORBUG-20834))
* Improved the environment settings by making the changes explicit in a
separate, text-based editor
* Increased the maximum width of the target selector * Increased the maximum width of the target selector
([QTCREATORBUG-30038](https://bugreports.qt.io/browse/QTCREATORBUG-30038)) ([QTCREATORBUG-30038](https://bugreports.qt.io/browse/QTCREATORBUG-30038))
* Fixed that the `Left` cursor key did not always collapse the current item * Fixed that the `Left` cursor key did not always collapse the current item
@@ -164,11 +179,13 @@ Projects
* Added `Generate Kit` to the Python interpreter preferences for generating a * Added `Generate Kit` to the Python interpreter preferences for generating a
Python kit with this interpreter Python kit with this interpreter
* Added the target setup page when loading unconfigured Python projects * Added the `Kit Selection` page for creating and opening Python projects
* Added a `requirements.txt` file to the application wizard * Added a `requirements.txt` file to the application wizard
* 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))
Debugging Debugging
--------- ---------
@@ -177,6 +194,9 @@ Debugging
### C++ ### C++
* Added a pretty printer for `std::tuple` * Added a pretty printer for `std::tuple`
* Improved the display of size information for the pretty printer of
`QByteArray`
([QTCREATORBUG-30065](https://bugreports.qt.io/browse/QTCREATORBUG-30065))
* 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))
@@ -244,6 +264,7 @@ 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))
### Remote Linux ### Remote Linux
@@ -262,6 +283,7 @@ Andre Hartmann
André Pönitz André Pönitz
Andreas Loth Andreas Loth
Artem Sokolovskii Artem Sokolovskii
Assam Boudjelthia
Brook Cronin Brook Cronin
Burak Hancerli Burak Hancerli
Christian Kandeler Christian Kandeler
@@ -298,6 +320,7 @@ Robert Löhning
Sami Shalayel Sami Shalayel
Samuel Jose Raposo Vieira Mira Samuel Jose Raposo Vieira Mira
Samuel Mira Samuel Mira
Semih Yavuz
Serg Kryvonos Serg Kryvonos
Shrief Gabr Shrief Gabr
Sivert Krøvel Sivert Krøvel

View File

@@ -43,6 +43,14 @@ function(_add_doc _doc_file _dev_doc_file)
"${GENERATED_ATTRIBUTIONS_DIR}/creator-attributions.qdoc" "${GENERATED_ATTRIBUTIONS_DIR}/creator-attributions.qdoc"
${_doc_file} ${_doc_file}
) )
set(litehtml_attributions "${CMAKE_CURRENT_SOURCE_DIR}/../src/libs/qlitehtml/src/3rdparty/qt_attribution.json")
if(EXISTS "${litehtml_attributions}")
add_qtc_doc_attribution(doc_attributions_litehtml
"${litehtml_attributions}"
"${GENERATED_ATTRIBUTIONS_DIR}/creator-attributions-litehtml.qdoc"
${_doc_file}
)
endif()
if (BUILD_DEVELOPER_DOCS) if (BUILD_DEVELOPER_DOCS)
_find_all_includes(_all_includes _framework_paths) _find_all_includes(_all_includes _framework_paths)
add_qtc_documentation(${_dev_doc_file} add_qtc_documentation(${_dev_doc_file}

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 159 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 167 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 239 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 121 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.4 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.7 KiB

View File

@@ -195,7 +195,7 @@
To view the available AVDs, select \preferences > \uicontrol Devices. To view the available AVDs, select \preferences > \uicontrol Devices.
You can add more AVDs. You can add more AVDs.
\image qtcreator-android-avd-manager.png {Android device in Devices} \image qtcreator-android-avd-manager.webp {Android device in Devices}
You can see the status of the selected device in \uicontrol {Current state}. You can see the status of the selected device in \uicontrol {Current state}.
To update the status information, select \uicontrol Refresh. To update the status information, select \uicontrol Refresh.

View File

@@ -262,7 +262,7 @@
You can build applications for and run them on bare metal devices You can build applications for and run them on bare metal devices
in the same way as for and on the desktop. For more information, see in the same way as for and on the desktop. For more information, see
\l{Building for Multiple Platforms} and \l{Running on Multiple Platforms}. \l{Building for Multiple Platforms} and \l{Run on many platforms}.
\sa {Enable and disable plugins} \sa {Enable and disable plugins}
*/ */

View File

@@ -180,7 +180,7 @@
case-sensitivity. Select \uicontrol {Show Non-matching Lines} to case-sensitivity. Select \uicontrol {Show Non-matching Lines} to
hide the lines that match the filter. hide the lines that match the filter.
Press \key {Ctrl+F} to \l{Finding and Replacing}{search} for a string from Press \key {Ctrl+F} to \l{Search in current file}{search} for a string in
the output. the output.
To increase or decrease the output text size, select \inlineimage icons/plus.png To increase or decrease the output text size, select \inlineimage icons/plus.png
@@ -188,7 +188,7 @@
(\uicontrol {Zoom Out}), or press \key Ctrl++ or \key Ctrl+-. (\uicontrol {Zoom Out}), or press \key Ctrl++ or \key Ctrl+-.
To hide the output, select the \inlineimage icons/rightsidebaricon.png To hide the output, select the \inlineimage icons/rightsidebaricon.png
(\uicontrol {Hide/Show Right Sidebar}) button or press \key {Alt+Shift+0}. (\uicontrol {Hide Right Sidebar}) button or press \key {Alt+Shift+0}.
\section1 CLICOLOR_FORCE Environment Variable \section1 CLICOLOR_FORCE Environment Variable
@@ -275,6 +275,7 @@
The build errors and warnings are parsed and displayed in \l Issues. The build errors and warnings are parsed and displayed in \l Issues.
\sa {Activate kits for a project}, {Configure projects for building}, \sa {Activate kits for a project}, {Add custom output parsers},
{Configure projects for running}, {Open projects}, {CMake} {Configure projects for building}, {Configure projects for running},
{Open projects}, {CMake}
*/ */

View File

@@ -99,7 +99,7 @@
\section2 Supported GDB Versions \section2 Supported GDB Versions
Use GDB 7.5, or later, with the Python scripting extension and Python version Use GDB 7.5, or later, with the Python scripting extension and Python version
3.3, or later. 3.5, or later.
For remote debugging using GDB and GDB server, the minimum supported version For remote debugging using GDB and GDB server, the minimum supported version
of GDB server on the target \l{glossary-device}{device} is 7.0. of GDB server on the target \l{glossary-device}{device} is 7.0.
@@ -121,35 +121,26 @@
On Linux, the minimum supported version is LLDB 3.8. On Linux, the minimum supported version is LLDB 3.8.
\omit \section2 GDB Run Modes
\section2 GDB Adapter Modes
[Advanced Topic]
The GDB native debugger used internally by the debugger plugin runs in The GDB native debugger used internally by the debugger plugin runs in
different adapter modes to cope with the variety of supported platforms and different modes to cope with the variety of supported platforms and
environments. All GDB adapters inherit from AbstractGdbAdapter: environments:
\list \list
\li PlainGdbAdapter debugs locally started GUI processes. It is \li Plain mode debugs locally started processes that do not need console input.
physically split into parts that are relevant only when Python is
available, parts relevant only when Python is not available, and
mixed code.
\li TermGdbAdapter debugs locally started processes that need a console. \li Terminal mode debugs locally started processes that need a console.
\li AttachGdbAdapter debugs local processes started outside \QC. \li Attach mode debugs local processes started outside \QC.
\li CoreGdbAdapter debugs core files generated from crashes. \li Core mode debugs core files generated from crashes.
\li RemoteGdbAdapter interacts with the GDB server running on Linux. \li Remote mode interacts with the GDB server running on Linux.
\endlist \endlist
\endomit
\section1 Installing Native Debuggers \section1 Installing Native Debuggers
The following sections describe installing native debuggers. The following sections describe installing native debuggers.

View File

@@ -14,18 +14,6 @@
\title Debugging \title Debugging
A debugger lets you see what happens \e inside an application while it runs
or when it crashes. A debugger can do the following to help you find errors
in the application:
\list
\li Start the application with parameters that specify its behavior.
\li Stop the application when conditions are met.
\li Examine what happens when the application stops.
\li Make changes in the application when you fix an error and continue
to find the next one.
\endlist
The \QC debugger plugin acts as an interface between the \QC The \QC debugger plugin acts as an interface between the \QC
core and external native debuggers that you can use to: core and external native debuggers that you can use to:
@@ -127,9 +115,17 @@
\title Launching the Debugger \title Launching the Debugger
To start an application from an open project under the control of a You can start an application from an open project under the control of a
debugger, select the \inlineimage icons/qtcreator-debug-button.png debugger in the following ways:
(\uicontrol {Start Debugging of Startup Project}) button or press \key F5.
\list
\li Select \inlineimage icons/qtcreator-debug-button.png
(\uicontrol {Start Debugging of Startup Project}).
\li Press \key F5.
\li Enter \c {dr} in the locator, and select the project to debug.
\li Go to \uicontrol Debug > \uicontrol {Start Debugging} >
\uicontrol {Start Debugging of Startup Project}.
\endlist
\QC checks whether the compiled application is up-to-date, and rebuilds and \QC checks whether the compiled application is up-to-date, and rebuilds and
deploys it if you set the \uicontrol {Build before deploying} field to deploys it if you set the \uicontrol {Build before deploying} field to
@@ -1985,7 +1981,7 @@
\li Select the \inlineimage icons/run_small.png \li Select the \inlineimage icons/run_small.png
(\uicontrol Run) button to verify that the (\uicontrol Run) button to verify that the
\l {Running on Multiple Platforms}{build and run kit selector} \l {Run on many platforms}{build and run kit selector}
picked a runnable target and you can run the application. picked a runnable target and you can run the application.
\li Make sure the debugger is \l{Setting Up Debugger}{set up properly}. \li Make sure the debugger is \l{Setting Up Debugger}{set up properly}.

View File

@@ -80,7 +80,7 @@
\li To debug applications on \l{glossary-device}{devices}, check that \li To debug applications on \l{glossary-device}{devices}, check that
Qt 5.0, or later, libraries are installed on the device and Qt 5.0, or later, libraries are installed on the device and
\l{Running on Multiple Platforms}{select the corresponding kit for the device} \l{Run on many platforms}{select the corresponding kit for the device}
before you start debugging. before you start debugging.
\endlist \endlist

View File

@@ -8,20 +8,6 @@
\title Refactoring \title Refactoring
\e {Code refactoring} is the process of improving and simplifying code
without modifying the existing functionality of an application. You
can easily find and rename symbols and apply predefined actions to
refactor code.
Refactor code to:
\list
\li Improve internal quality of your application
\li Improve performance and extensibility
\li Improve code readability and maintainability
\li Simplify code structure
\endlist
To quickly and conveniently apply actions to refactor your To quickly and conveniently apply actions to refactor your
code, \l{Apply quick fixes}{select quick fixes in a context menu}. code, \l{Apply quick fixes}{select quick fixes in a context menu}.
@@ -51,13 +37,6 @@
\image qtcreator-search-cpp-symbols.png \image qtcreator-search-cpp-symbols.png
\endif \endif
\section1 Finding QML Types
To find instances of a specific QML type in a project, place the cursor on
the type and select \uicontrol Tools > \uicontrol {QML/JS} >
\uicontrol {Find References to Symbol Under Cursor} or press
\key {Ctrl+Shift+U}.
\section1 Viewing Search Results \section1 Viewing Search Results
\QC searches from the following locations: \QC searches from the following locations:
@@ -71,7 +50,7 @@
\endif \endif
\endlist \endlist
\l{Search Results} shows the location and number of search hits in the \l{Search Results View} shows the location and number of search hits in the
current project. current project.
\if defined(qtcreator) \if defined(qtcreator)

View File

@@ -36,12 +36,15 @@
key components of \QC. You can use the code editor in the key components of \QC. You can use the code editor in the
\uicontrol Edit mode. \uicontrol Edit mode.
\endif \endif
\if defined(qtdesignstudio)
\li \l{Finding} \li \l{Finding}
Use the incremental and advanced search to search from currently Use the incremental and advanced search to search in currently
open projects or files on the file system or use the locator to open projects or files on the file system or use the locator to
browse through projects, files, classes, functions, documentation browse through projects, files, classes, functions, documentation
and file systems. and file systems.
\endif
\li \l{Refactoring} \li \l{Refactoring}

View File

@@ -11,7 +11,7 @@
\page creator-diff-editor.html \page creator-diff-editor.html
\if defined(qtdesignstudio) \if defined(qtdesignstudio)
\previouspage qt-quick-toolbars.html \previouspage qt-quick-toolbars.html
\nextpage creator-finding-overview.html \nextpage studio-finding.html
\else \else
\previouspage creator-macros.html \previouspage creator-macros.html
\nextpage creator-clang-codemodel.html \nextpage creator-clang-codemodel.html

View File

@@ -1,51 +0,0 @@
// Copyright (C) 2018 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.
// **********************************************************************
/*!
\page creator-finding-overview.html
\if defined(qtdesignstudio)
\previouspage creator-diff-editor.html
\else
\previouspage creator-clang-codemodel.html
\endif
\nextpage creator-editor-finding.html
\title Finding
\list
\li \l{Finding and Replacing}
The incremental search highlights the matching strings in the
window while typing and the advanced search enables you to
search from currently open projects or files on the file system.
You can conduct incremental and advanced searches in parallel.
In addition, you can search for symbols when you want to
refactor code.
\li \l{Searching with the Locator}
Use the locator to browse
through projects, files, classes, functions, documentation and
file systems.
\if defined(qtdesignstudio)
\li \l{Jump to the Code}
Jump to the code for a specific component directly from
the \uicontrol {2D} view or \uicontrol {Navigator} view.
You can also jump to the code of a particular
\uicontrol {State} or \uicontrol {Connection} from their
corresponding views.
\endif
\endlist
*/

View File

@@ -2,9 +2,13 @@
// 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
/*! /*!
\previouspage creator-editor-finding.html
\page creator-editor-locator.html \page creator-editor-locator.html
\previouspage creator-how-to-advanced-search.html
\if defined(qtdesignstudio)
\nextpage creator-jump-to-the-code.html \nextpage creator-jump-to-the-code.html
\else
\nextpage creator-how-tos.html
\endif
\title Searching with the Locator \title Searching with the Locator

View File

@@ -65,7 +65,11 @@
The editor toolbar is context sensitive and shows items relevant to the file The editor toolbar is context sensitive and shows items relevant to the file
currently open in the editor. currently open in the editor.
\image qtcreator-editor-toolbar.webp {Edit mode toolbar} \image qtcreator-editor-toolbar.webp {Editor toolbar for a C++ source file}
\caption Editor toolbar when a C++ source file is open
\image qtcreator-editor-toolbar-qml.webp {Editor toolbar for a QML file}
\caption Editor toolbar when a QML file is open
\table \table
\header \header
@@ -104,6 +108,10 @@
between \QC and language servers, view server capabilities, and set between \QC and language servers, view server capabilities, and set
language server preferences. language server preferences.
\li \l {Language Servers} \li \l {Language Servers}
\row
\li \inlineimage icons/live-preview.png
\li Preview changes to QML code live in your application.
\li \l {Previewing on Desktop}
\row \row
\li \inlineimage icons/debugger_singleinstructionmode.png \li \inlineimage icons/debugger_singleinstructionmode.png
\li Run Clang-Tidy or Clazy to analyze the currently open file. \li Run Clang-Tidy or Clazy to analyze the currently open file.

View File

@@ -328,7 +328,20 @@
\endcode \endcode
\li String literal \li String literal
\row
\li Enclose in QByteArrayLiteral()
\li Converts a string to a byte array. For example, rewrites
\code
"abcd"
\endcode
as
\code
QByteArrayLiteral("abcd")
\endcode
\li String literal
\row \row
\li Mark as Translatable \li Mark as Translatable
\li Marks a string translatable. For example, rewrites \c "abcd" \li Marks a string translatable. For example, rewrites \c "abcd"

View File

@@ -238,6 +238,10 @@
\image qtcreator-qml-js-editing.webp {QML/JS Editing preferences} \image qtcreator-qml-js-editing.webp {QML/JS Editing preferences}
When using \c qmlls from Qt 6.7 or later, it is recommended
to set \l{QT_QML_GENERATE_QMLLS_INI} to \c{ON} in
\uicontrol {Initial Configuration}.
\sa {Manage Language Servers}{How To: Manage Language Servers}, \sa {Manage Language Servers}{How To: Manage Language Servers},
{Enabling and Disabling Messages}, {Language Servers} {Enabling and Disabling Messages}, {Language Servers}
*/ */

View File

@@ -1,4 +1,4 @@
// Copyright (C) 2023 The Qt Company Ltd. // Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
/*! /*!
@@ -9,9 +9,9 @@
\title Edit Markdown files \title Edit Markdown files
Open \l{https://www.markdownguide.org/basic-syntax/}{Markdown} (.md) files Open \l{https://www.markdownguide.org/basic-syntax/}{Markdown} (.md) files,
or select \uicontrol File > \uicontrol {New File} > \uicontrol {General} > or go to \uicontrol File > \uicontrol {New File} and select
\uicontrol {Markdown File} to create a new file. \uicontrol {General} > \uicontrol {Markdown File} to create a new file.
\image qtcreator-markdown-editor.webp {Markdown file in Preview and Editor views} \image qtcreator-markdown-editor.webp {Markdown file in Preview and Editor views}
@@ -26,4 +26,25 @@
Use the buttons on the editor toolbar to format text as italic (i), bold (b), Use the buttons on the editor toolbar to format text as italic (i), bold (b),
or inline code (`), and to create links to web sites or inline code (`), and to create links to web sites
(\inlineimage icons/linkicon.png). (\inlineimage icons/linkicon.png).
\section1 Move to a line and column
The line and column indicator shows information about the current cursor
position. Select it to activate the locator, and enter a line and column
number to move there.
\section1 Follow links to web sites
To follow a link to a web site in the editor:
\list 1
\li Place the cursor on the link.
\li Then, do one of the following:
\list
\li Press \key {Ctrl+Click} (or \key {Cmd+Click} on \macos).
\li Press \key F2.
\li Go to \uicontrol {Follow Symbol Under Cursor} in the context
menu.
\endlist
\endlist
*/ */

View File

@@ -98,7 +98,7 @@
state chart. state chart.
\endtable \endtable
To search from the state chart, select \uicontrol {Search} and start typing To search in the state chart, select \uicontrol {Search} and start typing
in the \uicontrol Filter field. The search checks the whole SCXML tree for in the \uicontrol Filter field. The search checks the whole SCXML tree for
attributes that match the search criteria. attributes that match the search criteria.

View File

@@ -1,29 +1,40 @@
// Copyright (C) 2022 The Qt Company Ltd. // Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
/*! /*!
\previouspage creator-finding-overview.html
\page creator-editor-finding.html \page creator-editor-finding.html
\nextpage creator-editor-locator.html \if defined(qtdesignstudio)
\previouspage studio-finding.html
\nextpage creator-how-to-advanced-search.html
\else
\previouspage creator-how-tos.html
\endif
\title Finding and Replacing \ingroup creator-how-to-search
\title Search in current file
The incremental search highlights the matching strings in the editor while
you type.
To search through the currently open file: To search through the currently open file:
\list 1 \list 1
\li Press \key {Ctrl+F} or select \uicontrol Edit > \li Press \key {Ctrl+F} or go to \uicontrol Edit >
\uicontrol {Find/Replace} > \uicontrol {Find/Replace}. \uicontrol {Find/Replace} > \uicontrol {Find/Replace}.
\li In \uicontrol Find, enter the text you are looking for. \li In \uicontrol Find, enter the text you are looking for.
\image qtcreator-find-incremental.png \image qtcreator-find-from-current-file.webp {Search hits highlighted in editor}
If the text is found, all occurrences are highlighted as you type. All occurrences of the text are highlighted in the editor as you
type.
\li To go to the next occurrence, click \inlineimage icons/next.png \li To go to the next occurrence, select \inlineimage icons/next.png
(\uicontrol {Find Next}), or press \key F3. To go to the previous (\uicontrol {Find Next}), or press \key F3.
occurrence click \inlineimage icons/prev.png
\li To go to the previous occurrence, select \inlineimage icons/prev.png
(\uicontrol {Find Previous}), or press \key {Shift+F3}. (\uicontrol {Find Previous}), or press \key {Shift+F3}.
\li To select all found occurrences in a file, select \li To select all found occurrences in a file, select
@@ -31,9 +42,13 @@
\endlist \endlist
You can restrict the search in the \uicontrol Find field by selecting \note Select text before selecting \uicontrol {Find/Replace} to search only
\inlineimage icons/qtcreator-new-search-icon.png from the selection.
. Select one or several search criteria:
\section1 Set search criteria
To restrict the search in the \uicontrol Find box, select
\inlineimage icons/qtcreator-new-search-icon.png and set search criteria:
\list \list
@@ -42,38 +57,33 @@
\li To search only whole words, select \uicontrol {Whole Words Only}. \li To search only whole words, select \uicontrol {Whole Words Only}.
\li To search using regular expressions, select \li To search using \l{QRegularExpression}{regular expressions}, select
\uicontrol {Use Regular Expressions}. Regular expressions used in \QC \uicontrol {Use Regular Expressions}. Regular expressions used in \QC
are modeled on Perl regular expressions. For more information on are modeled on Perl regular expressions
using regular expressions, see the documentation for the
QRegularExpression Class.
\endlist \endlist
\note If you have selected text before selecting \uicontrol {Find/Replace}, the \section1 Replace text
search is conducted within the selection.
To replace occurrences of the existing text, enter the new text in the To replace occurrences of the existing text, enter the new text in
\uicontrol {Replace with} field. \uicontrol {Replace with}.
\list \list
\li To replace the selected occurrence, select \uicontrol {Replace}.
\li To replace the selected occurrence and move to the next one, \li To replace the selected occurrence and move to the next one,
click \uicontrol {Find Next} or press \key {Ctrl+=}. select \uicontrol {Replace & Find}.
\li To replace all occurrences in the file, select
\li To replace the selected occurrence and move to the previous one,
click \uicontrol {Find Previous}.
\li To replace all occurrences in the file, click
\uicontrol {Replace All}. \uicontrol {Replace All}.
\endlist \endlist
The \uicontrol {Preserve Case when Replacing} option can be selected to \section1 Preserve case when replacing
preserve the case of the original text when replacing. This option is not
compatible with the \uicontrol {Use Regular Expressions} search option, and will To preserve the case of the original text when replacing, select
thus be disabled when regular expressions are used. When the option is used, \inlineimage icons/qtcreator-new-search-icon.png and then select
the case of the occurrence will be conserved, according to the following \uicontrol {Preserve Case when Replacing}. You cannot use this option
together with \uicontrol {Use Regular Expressions}.
The case of the of the occurrence is preserved according to the following
rules: rules:
\list \list
@@ -88,163 +98,127 @@
\li Other occurrences are replaced with the new text as entered. \li Other occurrences are replaced with the new text as entered.
\li If an occurrence and the new text have the same prefix or suffix, \li If an occurrence and the new text have the same prefix or suffix,
then the case of the prefix and/or suffix are preserved, and the the case of the prefix and suffix are preserved, and the
other rules are applied on the rest of the occurrence only. other rules are applied to the rest of the occurrence.
\endlist \endlist
\section1 Highlight search hits
The locations of search hits, breakpoints, and bookmarks in your document The locations of search hits, breakpoints, and bookmarks in your document
are highlighted on the editor scroll bar. To turn highlighting off, select are highlighted on the editor scroll bar. To turn highlighting off, select
\preferences > \uicontrol {Text Editor} > \preferences > \uicontrol {Text Editor} >
\uicontrol Display > \uicontrol {Highlight search results on the scrollbar}. \uicontrol Display > \uicontrol {Highlight search results on the scrollbar}.
To search using more advanced options, select \uicontrol Advanced. \image qtcreator-options-text-editor-display.png {Text Editor Display preferences}
\section1 Advanced Search \section1 Search globally
To search through projects, files on a file system, files in all project Select \uicontrol Advanced to open the \uicontrol {Search Results} view where
directories, or currently open files: you can search in currently open projects or files on the file system. Or,
search for symbols to refactor code.
\if defined(qtcreator)
\sa {Search}{How To: Search}
\else
\sa {Search in projects or file systems}
\endif
\sa {Search Results View}
*/
/*!
\page creator-how-to-advanced-search.html
\if defined(qtdesignstudio)
\previouspage creator-editor-finding.html
\nextpage creator-editor-locator.html
\else
\previouspage creator-how-tos.html
\endif
\ingroup creator-how-to-search
\title Search in projects or file systems
The search scope and search criteria determine where \QC looks for the search
string, how it matches the string with text, and which results it shows.
\section1 Search in all projects
\list 1 \list 1
\li Press \key {Ctrl+Shift+F} or go to \uicontrol Edit >
\li Press \key {Ctrl+Shift+F} or select \uicontrol Edit >
\uicontrol {Find/Replace} > \uicontrol {Advanced Find} > \uicontrol {Find/Replace} > \uicontrol {Advanced Find} >
\uicontrol {Open Advanced Find}. \uicontrol {Open Advanced Find}.
\li In \uicontrol Scope, select \uicontrol {All Projects}.
\li Select the scope of your search: \image qtcreator-search-all-projects.webp {Search Results view}
\li In \uicontrol {Search for}, enter the string you are looking for.
\list \li Select options to make the search case sensitive, search only whole
words, or use regular expressions.
\li \uicontrol {All Projects} searches from all currently open \li In \uicontrol {File pattern}, specify file patterns to
projects.
\image qtcreator-search-allprojects.png
\if defined(qtcreator)
If you cannot find some files, see
\l{Specify project contents} for how
to declare them as a part of the project.
\endif
\li \uicontrol {Current Project} searches from the project you
are currently editing.
\li \uicontrol {Files in All Project Directories} searches from
all project directories.
\li \uicontrol {Files in File System} recursively searches from
the selected directory.
\image qtcreator-search-filesystem.png
In the \uicontrol {Search engine} field, select the search
engine to use:
\list
\li Select \uicontrol Internal to use the \QC search
engine.
\li Select \uicontrol {Git Grep} to use Git to only
search tracked files in the Git work tree. To
restrict the search to the HEAD, a tag, a local or
remote branch, or a commit hash, enter a reference.
Leave the field empty to search through the file
system.
\if defined(qtcreator)
\li Select \uicontrol {Silver Searcher} to use the
experimental Silver Searcher plugin. For more
information, see \l{Enabling Silver Searcher}.
\endif
\endlist
\li \uicontrol {Current File} searches only from the current
file.
\li \uicontrol {Open Documents} searches from all open files.
\endlist
\li In the \uicontrol {File pattern} field, specify file patterns to
restrict the search to files that match the pattern. For example, to restrict the search to files that match the pattern. For example, to
search for a string only in \c {.cpp} and \c {.h} files, enter search for a string only in \c {.cpp} and \c {.h} files, enter
\c {*.cpp,*.h}. \c {*.cpp,*.h}.
\li In \uicontrol {Exclusion pattern}, specify file patterns
\li In the \uicontrol {Exclusion pattern} field, specify file patterns
to omit files from the search. to omit files from the search.
\li Select \uicontrol Search.
\li Enter the text you are looking for and click \uicontrol Search.
\image qtcreator-search-results-matches.webp {Found matches in Search Results}
\l {Search Results} shows a list of files that have the searched text.
\list
\li To see all occurrences in a file, double-click the file name
in the list.
\li To go to an occurrence, double-click it.
\li To repeat the search after you have made changes to the
listed files, for example, select
\uicontrol {Search Again}.
\endlist
\endlist \endlist
The search results are stored in the search history from which you can
select earlier searches.
To clear the search results, select the \inlineimage icons/clean_pane_small.png
(\uicontrol Clear) button.
To expand and collapse the search results, select the
\uicontrol {Expand All} button.
To start a new search, select the \inlineimage icons/qtcreator-new-search-icon.png
(\uicontrol {New Search}) button.
\note You can use \uicontrol {Advanced Find} also to search for symbols. For
more information, see
\if defined(qtcreator) \if defined(qtcreator)
\l{Finding Symbols}. If you cannot find some files, see \l{Specify project contents} for
\else how to declare them as a part of the project.
\l{Finding QML Types}.
\endif \endif
\if defined(qtcreator) \section1 Search in the file system
\section1 Enabling Silver Searcher
You can use Silver Searcher as a search engine in \QC if you install In addition to the options available for searching from all projects, you can
Silver Searcher on the development PC. select the search engine to use and the directory to search in.
\note Enable the SilverSearcher plugin to use it.
To use Silver Searcher:
\list 1 \list 1
\li In \uicontrol Scope, select \uicontrol {Files in File System}.
\li Download and install Silver Searcher from \image qtcreator-search-file-system.webp {Search Results view}
\l {https://geoff.greer.fm/ag/}{The Silver Searcher} or \li In \uicontrol {Search for}, enter the string you are looking for.
\l {https://github.com/ggreer/the_silver_searcher}{GitHub}. \li In \uicontrol {Search engine}, select the search engine to use:
\list
You might have to build Silver Searcher from sources for some \li Select \uicontrol Internal to use the \QC search
platforms. engine.
\li Select \uicontrol {Git Grep} to use Git to only
\li When searching, select \uicontrol {Silver Searcher} in the search tracked files in the Git work tree. To
\uicontrol {Search engine} field. restrict the search to the HEAD, a tag, a local or
remote branch, or a commit hash, enter a reference.
\li If Silver Searcher is not found, you might have installed it in a Leave the field empty to search through the file
location that is not found via the \c{PATH} environment variable. system.
Select \preferences > \uicontrol Environment > \uicontrol System, \if defined(qtcreator)
then select \uicontrol Change in the \uicontrol Environment field, \li Select \uicontrol {Silver Searcher} to use the
and add the entry \c{PATH=/path/to/bin:${PATH}}. experimental Silver Searcher plugin.
\endif
\endlist
\li In \uicontrol Directory, select the directory to search in.
Select \uicontrol Browse to locate the directory or
\uicontrol Current to search in the directory where the currently
active file is.
\li Select \uicontrol Search.
\endlist \endlist
\sa {Enable and disable plugins} \section1 Search and replace
To replace occurrences of the existing text:
\list 1
\li Select \uicontrol {Search & Replace}.
\image qtcreator-search-results-reg-exp.webp {Search results when searching and replacing}
\li Enter the new text in \uicontrol {Replace with}.
\li Select \uicontrol Replace.
\endlist
To preserve the case of the original text when replacing,
select \uicontrol {Preserve case}. The rules listed in
\l {Preserve case when replacing} apply here as well.
\if defined(qtcreator)
\sa {Search}{How To: Search}, {Finding Symbols}, {Turn on Silver Searcher}
\else
\sa {Search in current file}
\endif \endif
\sa {Search Results View}
*/ */

View File

@@ -134,18 +134,30 @@
\title Use Qt Linguist \title Use Qt Linguist
Most of the text to translate in an application consists of either single
words or short phrases. These typically appear as window titles, menu items,
tooltips, and labels to buttons, checkboxes, and radio buttons.
You mark the phrases as translatable in the QML and C++ source code. Qt
localization tools provide context information for each of the phrases to
help the translator understand their meaning. You can add comments to the
phrases.
Translation files contain all the user-visible text and keyboard shortcuts
in an application and translations of that text.
When you \l{Creating Projects}{create a new project}, you can automatically When you \l{Creating Projects}{create a new project}, you can automatically
generate a translation source file (TS) for one language. You can add other generate a translation source file (TS) for one language. To add other
languages later by editing the project file. languages, edit the project file or go to \uicontrol File >
\uicontrol {New File}.
To open TS files in Qt Linguist, right-click a TS file in the To open TS files in Qt Linguist, right-click a TS file in the
\uicontrol Projects or \uicontrol {File System} view and select \uicontrol Projects or \uicontrol {File System} view and go to
\uicontrol {Open With} > \uicontrol {Qt Linguist} in the context menu. \uicontrol {Open With} > \uicontrol {Qt Linguist} in the context menu.
For more information about Qt Linguist, see \l{Qt Linguist Manual}.
\section1 Use lupdate and lrelease \section1 Use lupdate and lrelease
You can use the Qt Linguist release manager tools, lupdate and lrelease, Use the Qt Linguist release manager tools, lupdate and lrelease,
directly from \QC. The lupdate tool synchronizes source directly from \QC. The lupdate tool synchronizes source
code and translations. The lrelease tool creates run-time code and translations. The lrelease tool creates run-time
translation files for use by the released application. translation files for use by the released application.
@@ -156,22 +168,27 @@
{Qt6::LinguistTools}. {Qt6::LinguistTools}.
By default, the project .pro file is passed to the tools as an argument. To By default, the project .pro file is passed to the tools as an argument. To
specify other command-line arguments for the tools, select \uicontrol Tools > specify other command-line arguments for the tools, go to \uicontrol Tools >
\uicontrol External > \uicontrol Configure. \uicontrol External > \uicontrol Configure.
\section2 Synchronize TS files \section2 Synchronize TS files
To synchronize TS files from a translator with the To synchronize TS files from a translator with the
application code, select \uicontrol Tools > \uicontrol External > application code, go to \uicontrol Tools > \uicontrol External >
\uicontrol Linguist > \uicontrol {Update Translations (lupdate)}. \uicontrol Linguist > \uicontrol {Update Translations (lupdate)}.
\section2 Generate QM files \section2 Generate QM files
To generate from the TS files Qt message (QM) files that can be used by an To generate from the TS files Qt message (QM) files that can be used by an
application, select \uicontrol Tools > \uicontrol External > application, go to \uicontrol Tools > \uicontrol External >
\uicontrol Linguist > \uicontrol {Release Translations (lrelease)}. \uicontrol Linguist > \uicontrol {Release Translations (lrelease)}.
\sa {Use external tools} \if defined(qtcreator)
\sa {Add translation files}
\endif
\sa {Use external tools}, {Internationalization with Qt},
{Qt Linguist Manual}
*/ */
/*! /*!

View File

@@ -0,0 +1,53 @@
// Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
/*!
\page creator-how-to-silver-searcher.html
\previouspage creator-how-tos.html
\ingroup creator-how-to-search
\title Turn on Silver Searcher
You can use Silver Searcher as a search engine in \QC if you install
Silver Searcher on the computer.
\image qtcreator-search-file-system.webp {Files in File System scope in Search Results view}
\note Enable the SilverSearcher plugin to use it.
To use Silver Searcher:
\list 1
\li Download and install Silver Searcher from
\l {https://geoff.greer.fm/ag/}{The Silver Searcher} or
\l {https://github.com/ggreer/the_silver_searcher}{GitHub}.
You might have to build Silver Searcher from sources for some
platforms.
\li When searching, select \uicontrol {Silver Searcher} in
\uicontrol {Search engine}.
\endlist
If \QC cannot find Silver Searcher, you might have installed it in a
location that is not set in the \c{PATH} environment variable.
\section1 Set location of Silver Searcher
To tell \QC where Silver Searcher is:
\list 1
\li Go to \preferences > \uicontrol Environment > \uicontrol System.
\image qtcreator-preferences-environment-system.webp {System preferences}
\li In \uicontrol Environment, select \uicontrol Change.
\li In \uicontrol {Edit Environment}, add the path to the Silver Searcher
executable:
\badcode
PATH=</path/to/bin>:${PATH}
\endcode
\image qtcreator-edit-environment.webp {Edit Environment dialog}
\endlist
\sa {Enable and disable plugins}, {Search}{How To: Search},
{Batch edit environment settings}
*/

View File

@@ -65,6 +65,10 @@
\generatelist creator-how-to-lsp \generatelist creator-how-to-lsp
\section2 Search
\generatelist creator-how-to-search
\section1 Manage Kits \section1 Manage Kits
\generatelist creator-how-to-manage-kits \generatelist creator-how-to-manage-kits
@@ -77,7 +81,7 @@
\generatelist creator-how-to-projects-create \generatelist creator-how-to-projects-create
\section2 Create Files \section2 Add Files
\generatelist creator-how-to-projects-files \generatelist creator-how-to-projects-files
@@ -224,17 +228,48 @@
*/ */
/*! /*!
\page creator-how-to-jump-to-functions-in-qml-code.html \page creator-how-to-navigate-qml-code.html
\previouspage creator-how-tos.html \previouspage creator-how-tos.html
\ingroup creator-how-to-edit \ingroup creator-how-to-edit
\title Jump to a function in QML code \title Move in QML code
Open the \uicontrol Locator with \key {Ctrl+K} and type m, followed by a space. Find QML methods and types, and move to the C++ implementation of a QML type.
You can now go directly to any QML method in the file.
\sa {Edit Code}{How To: Edit Code}, {Edit Mode} \section1 Locate QML methods
To locate a QML method:
\list 1
\li Press \key {Ctrl+K} to activate the locator.
\li Type m, followed by a space.
\image qtcreator-locator-m-filter.webp {The m filter in the locator}
\li Double-click a QML method in the list to move to it in the editor.
\endlist
\section1 Find QML types
To find instances of a QML type in a project, place the cursor on
the type and and do one of the following:
\list
\li Press \key {Ctrl+Shift+U}.
\li Go to \uicontrol Tools > \uicontrol {QML/JS} >
\uicontrol {Find References to Symbol Under Cursor}.
\endlist
\section1 Move between QML and C++
To move to the C++ implementation of a QML type in the code editor, place the
cursor on the type and do one of the following:
\list
\li Press \key F2.
\li Go to \uicontrol {Follow Symbol Under Cursor} in the context menu.
\endlist
\sa {Edit Code}{How To: Edit Code}, {Edit Mode}, {Searching with the Locator}
*/ */
/*! /*!
@@ -373,34 +408,43 @@
/*! /*!
\page creator-how-to-search-and-replace-using-regexp.html \page creator-how-to-search-and-replace-using-regexp.html
\previouspage creator-how-to-move-between-open-files.html \previouspage creator-how-tos.html
\ingroup creator-how-to-edit \ingroup creator-how-to-search
\title Search and replace across files using a regular expression \title Search and replace using a regular expression
As an example, say you want to replace equality checks (\c {foo == bar}) Search and replace across files using regular expressions in the
with a function (\c {foo.equals(bar)}): \uicontrol {Search Results} view.
Regular expressions used in \QC are modeled on Perl regular expressions.
For more information about using regular expressions, see
\l QRegularExpression.
For example, to replace equality checks (\c {foo == bar}) with a function
(\c {foo.equals(bar)}):
\list 1 \list 1
\li Ensure that any work you have done is committed to version control, \li Commit your changes to version control, as you cannot undo the
as the changes cannot be undone. replace action.
\li Press \key {Ctrl+Shift+F} to bring up the \uicontrol {Advanced Find} \li Press \key {Ctrl+Shift+F} or go to \uicontrol Edit >
form. \uicontrol {Find/Replace} > \uicontrol {Advanced Find} >
\li Change the scope to whatever is appropriate for your search. \uicontrol {Open Advanced Find} to open \uicontrol {Search Results}.
\li Under the \uicontrol {Search for} text field, select \image qtcreator-search-reg-exp.webp {Regular expression in Search Results view}
the \uicontrol {Use regular expressions} check box. \li In \uicontrol Scope, select whatever is appropriate for your search.
\li Enter the following text in the \uicontrol {Search for} text field: \li Select \uicontrol {Use regular expressions}.
\li Enter the following text in \uicontrol {Search for}:
\badcode \badcode
if \((.*) == (.*)\) if \((.*) == (.*)\)
\endcode \endcode
\li Press \uicontrol {Search & Replace} to see a list of search results. \li Select \uicontrol {Search & Replace} to see a list of search results.
\li In the \uicontrol {Replace with} text field, enter the following text: \image qtcreator-search-results-reg-exp.webp {Search results for the regular expression}
\li In \uicontrol {Replace with}, enter the following text:
\badcode \badcode
if (\1.strictlyEquals(\2)) if (\1.strictlyEquals(\2))
\endcode \endcode
\li Press \uicontrol Replace to replace all instances of the text. \li Select \uicontrol Replace to replace all instances of the text.
\endlist \endlist
\sa {Advanced Search}, {Edit Code}{How To: Edit Code}, {Edit Mode} \sa {Edit Code}{How To: Edit Code}, {Search}{How To: Search}, {Edit Mode}
*/ */

View File

@@ -1,4 +1,4 @@
// Copyright (C) 2019 The Qt Company Ltd. // Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
/*! /*!
@@ -11,8 +11,6 @@
You can connect iOS devices to your local machine with a USB cable to You can connect iOS devices to your local machine with a USB cable to
run applications built for them from \QC. run applications built for them from \QC.
\note Deployment, running, and debugging on iOS 17 devices are not supported.
To be able to use \QC on \macos, you must install Xcode, and therefore, To be able to use \QC on \macos, you must install Xcode, and therefore,
you already have the tool chain for building applications for iOS. \QC you already have the tool chain for building applications for iOS. \QC
automatically detects the tool chain and creates the necessary automatically detects the tool chain and creates the necessary
@@ -22,6 +20,14 @@
You only need Qt libraries that are built for iOS. You can install them as You only need Qt libraries that are built for iOS. You can install them as
part of Qt 5.2, or later. part of Qt 5.2, or later.
\section1 iOS 17 Devices
\QC detects iOS 17 devices, and you can deploy and run applications on them.
However, \QC cannot access application output. Also, debugging and
profiling are not supported because of limitations of the Apple tool for
accessing devices with iOS 17, and later.
\section1 Configuring Devices \section1 Configuring Devices
The connections between \QC and an iOS device are protected by using a The connections between \QC and an iOS device are protected by using a

View File

@@ -76,7 +76,7 @@
\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}
\li \l{Running on Remote Linux Devices} \li \l{Run on remote Linux devices}
\li \l{https://doc.qt.io/qtcreator/creator-overview-qtasam.html} \li \l{https://doc.qt.io/qtcreator/creator-overview-qtasam.html}
{Qt Creator Plugin for Qt Application Manager} {Qt Creator Plugin for Qt Application Manager}
\endlist \endlist
@@ -110,7 +110,7 @@
\li \l{Connecting QNX Devices} \li \l{Connecting QNX Devices}
\li \l{Deploying to QNX Neutrino} \li \l{Deploying to QNX Neutrino}
\li \l{QNX Run Settings} \li \l{QNX Run Settings}
\li \l{Running on QNX Devices} \li \l{Run on QNX devices}
\li \l{Qt for QNX} \li \l{Qt for QNX}
\endlist \endlist

View File

@@ -1,24 +1,25 @@
// Copyright (C) 2017 The Qt Company Ltd. // Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
/*! /*!
//! [running on embedded linux] \page creator-how-to-run-on-remote-linux.html
\previouspage creator-how-tos.html
\section1 Running on Remote Linux Devices \ingroup creator-how-to-run
To build the application and run it on a device: \title Run on remote Linux devices
To build an application and run it on a device:
\list 1 \list 1
\li Specify a connection to the device. For more information, see \li Specify a connection to the device.
\l{Connecting Remote Linux Devices}.
\li Click the \uicontrol Run button. \li Select \inlineimage icons/run_small.png (\uicontrol Run).
\endlist \endlist
\QC uses the compiler specified in the project build settings \QC uses the compiler from the kit (tool chain) to build the application.
(tool chain) to build the application.
\QC copies the application files to the connected device and runs the \QC copies the application files to the connected device and runs the
application. The application views are application. The application views are
@@ -33,5 +34,6 @@
Debugging works transparently if GDB server is installed on the device and Debugging works transparently if GDB server is installed on the device and
it is compatible with the GDB on the host. it is compatible with the GDB on the host.
//! [running on embedded linux] \sa {Connecting Remote Linux Devices}, {Run on many platforms}, {Compilers},
{Embedded Platforms}, {kit-preferences}{Kits}
*/ */

View File

@@ -31,7 +31,7 @@
\QC contains the following third-party components: \QC contains the following third-party components:
\generatelist{groupsbymodule attributions-qtcreator-tools} \generatelist{groupsbymodule attributions-tools}
The following third-party components are shipped with binary packages of \QC: The following third-party components are shipped with binary packages of \QC:

View File

@@ -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{IDE Overview}} \li \b {\l{Overview}}
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{IDE Overview}. \l{Overview}.
\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

View File

@@ -44,7 +44,7 @@
\list \list
\li \l{Connecting Android Devices} \li \l{Connecting Android Devices}
\li \l{Deploying to Android} \li \l{Deploying to Android}
\li \l{Running on Multiple Platforms} \li \l{Run on many platforms}
\li \l{Creating a Mobile Application} \li \l{Creating a Mobile Application}
\li \l{Debugging on Android Devices} \li \l{Debugging on Android Devices}
\li \l{Qt for Android} \li \l{Qt for Android}
@@ -64,7 +64,7 @@
\list \list
\li \l{Connecting iOS Devices} \li \l{Connecting iOS Devices}
\li \l{Running on Multiple Platforms} \li \l{Run on many platforms}
\li \l{Creating a Mobile Application} \li \l{Creating a Mobile Application}
\li \l{Qt for iOS} \li \l{Qt for iOS}
\endlist \endlist

View File

@@ -1,4 +1,4 @@
// Copyright (C) 2023 The Qt Company Ltd. // Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
// ********************************************************************** // **********************************************************************
@@ -12,147 +12,243 @@
\page creator-overview.html \page creator-overview.html
\nextpage creator-quick-tour.html \nextpage creator-quick-tour.html
\title IDE Overview \title Overview
\QC is an integrated development environment (IDE) that has tools for \QC is a cross-platform, complete integrated development environment
designing and developing applications with the Qt application framework. (IDE) that you can use to create applications for desktop, embedded,
With Qt you can develop applications and user interfaces once and deploy and mobile operating systems, or web browsers.
them to several desktop, embedded, and mobile operating systems or
web browsers (experimental). \QC has the tools for accomplishing your tasks With Qt, you can develop applications and user interfaces once and deploy
them to many platforms. \QC has the tools for accomplishing your tasks
throughout the whole application development life-cycle, from creating a throughout the whole application development life-cycle, from creating a
project to deploying the application to the target platforms. project, designing a UI, and writing code to building applications and
deploying them to the target platforms for running and debugging.
\table \image qt-app-dev-flow.webp {Application development life-cycle}
\row \caption Application development life-cycle
\li \inlineimage front-projects.png
\li \inlineimage front-ui.png
\li \inlineimage front-coding.png
\row
\li \b {Managing Projects}
To be able to build and run applications, \QC needs the same \section1 Projects
information as a compiler would need. It stores the information
in the project settings.
You can share projects with other designers and developers across First, you need a \e project. \QC relies on a separate build system, such as
different development platforms with a common tool for design, CMake, qmake, or Qbs for building the project. From the build system, \QC
development, and debugging. gets most of the information it needs to offer services for writing, editing,
and navigating source code, as well as to deploy and run applications. It
stores additional information in the project settings.
\list Share projects with other designers and developers across different
\li \l{Creating Projects} development platforms with a common tool for design, development, and
debugging.
To set up a project, you first have to decide what kind \list
of an application you want to develop: do you want a user \li \l{Creating Projects}
interface based on \l{User Interfaces}
{Qt Quick or Qt Widgets}. Second, you have to choose the
programming language to implement the application logic:
C++ or Python.
\li \l{Version Control Systems}
The recommended way to set up a project is to use a To set up a project, you first have to decide what kind
version control system. Store and edit only project of an application you want to develop: do you want a user
source files and configuration files. Do not store interface based on \l{User Interfaces}
generated files. {Qt Quick or Qt Widgets}. Second, you have to choose the
\li \l{Configuring Projects} programming language to implement the application logic:
C++ or Python.
\li \l{Version Control Systems}
Installation programs and project wizards create default The recommended way to set up a project is to use a
configurations for \QC and your projects. You can change version control system. Store and edit only project
the configurations in the \uicontrol Projects mode. source files and configuration files. Do not store
\endlist generated files.
For more information, see \l{Manage Projects} \li \l{Configuring Projects}
{How To: Manage Projects}.
\li \b {Designing User Interfaces}
To create intuitive, modern-looking, fluid user interfaces, you Installation programs and project wizards create default
can use \l{Qt Quick} and \l{Qt Design Studio Manual}{\QDS}: configurations for \QC and your projects. Change the
configurations in the \uicontrol Projects mode.
\endlist
\list For more information, see \l{Manage Projects}{How To: Manage Projects}.
\li \l {\QMLD}
Or, you can enable the \QMLD plugin to visually edit \section1 User Interfaces
\l{UI Files}{UI files} (.ui.qml).
\li \l {Converting UI Projects to Applications}
Qt Quick UI Prototype projects (.qmlproject) are useful \image heartgame-start.webp {Heart Rate Game}
for creating user interfaces. To use them for application
development, you have to convert them to Qt Quick
Application projects that have project configuration
files (CMakeLists.txt or .pro), .cpp, and .qrc files.
\li \l {UI Files}
If you switch between \QC and \QDS or cooperate with To create intuitive, modern-looking, fluid user interfaces, use \l{Qt Quick}
designers on a project, you might encounter .ui.qml files. and \l{Qt Design Studio Manual}{\QDS}:
They are intended to be edited in \QDS only, so you need
to be careful not to break the code. To visually edit the
files in \QC, enable the \QMLD plugin.
\li \l{Using QML Modules with Plugins}
You can load C++ plugins for QML to simulate data. \list
\endlist \li \l {\QMLD}
If you need a traditional user interface that has a clear Or, enable the \QMLD plugin to visually edit \l{UI Files}{UI files}
structure and enforces a platform look and feel, use (.ui.qml).
\l{Qt Widgets} and the integrated \l{\QD}. \li \l {Converting UI Projects to Applications}
For more information, see Qt Quick UI Prototype projects (.qmlproject) are useful
\l{Design UIs}{How To: Design UIs}. for creating user interfaces. To use them for application
\li \b {\l{Coding}} development, you have to convert them to Qt Quick
Application projects that have project configuration
files (CMakeLists.txt or .pro), .cpp, and .qrc files.
\li \l {UI Files}
As an IDE, \QC differs from a text editor in that it knows how If you switch between \QC and \QDS or cooperate with
to build and run applications. It understands the C++ and QML designers on a project, you might encounter .ui.qml files.
languages as code, not just as plain text. Therefore, it can They are intended to be edited in \QDS only, so you need
offer useful features, such as semantic highlighting, to be careful not to break the code. To visually edit the
checking code syntax, code completion, and refactoring actions. files in \QC, enable the \QMLD plugin.
\QC supports some of these services also for other programming \li \l{Using QML Modules with Plugins}
languages, such as Python, for which a \e {language server} is
available that provides information about the code to IDEs.
For more information, see \l{Edit Code}{How To: Edit Code}. Load C++ plugins for QML to simulate data.
\row \endlist
\li \inlineimage front-preview.png
\li \inlineimage front-testing.png
\li \inlineimage front-publishing.png
\row
\li \b {\l{Building and Running}}
\QC integrates cross-platform systems for build If you need a traditional user interface that has a clear structure and
automation: qmake, Qbs, CMake, and Autotools. In addition, you enforces a platform look and feel, use \l{Qt Widgets} and the integrated
can import \l{\QD}.
projects as \e {generic projects} and fully control the steps
and commands used to build the project.
You can build applications for, deploy them to, and run them on For more information, see \l{Design UIs}{How To: Design UIs} and
the desktop environment or a \l{glossary-device}{device}. \l{UI Design}.
\l{glossary-buildandrun-kit}{Kits}, build, run, and deployment
settings allow you to quickly switch between different setups and
target platforms.
For more information, see \l{Build and Run} \section1 Code
{How To: Build and Run}.
\li \b {\l{Testing}}
\QC integrates several external native debuggers that you can use Writing, editing, and navigating in source code are core tasks in application
to inspect the state of your application while debugging. development. Therefore, the code editor is one of the key components of \QC.
Use the code editor in the \l {Edit Mode}{Edit mode}.
Devices have limited memory and CPU power, so you should use them As an IDE, \QC differs from a text editor in that it knows how to build and
carefully. \QC integrates code analysis tools for detecting run applications. It understands the C++ and QML languages as code, not just
memory leaks, profiling function execution, analyzing CPU use, as plain text. Therefore, it can offer useful features, such as semantic
and eliminating unnecessary complexity of code. Other tools highlighting, checking code syntax, code completion, and refactoring actions.
provide code coverage and visualize trace events.
\QC integrates several testing frameworks for unit testing \QC supports some of these services also for other programming languages,
applications and libraries. You can use \QC to create, build, such as Python, for which a \e {language server} is available that provides
and run autotests. information about the code to IDEs.
For more information, see \l{Testing}. \section2 Find
\li \b {Publishing}
\QC enables you to create installation packages for mobile Use the incremental and advanced search to search in currently open projects
devices that you can publish to application stores or files on the file system or use the locator to browse through projects,
and other channels. You must make sure that the package contents files, classes, functions, documentation, and file systems.
meet the requirements for publishing on the channel.
For more information, see \l{Publishing to Google Play}. \section2 Refactor
\endtable
\e {Code refactoring} is the process of improving and simplifying code
without modifying the existing functionality of an application. Find
and rename symbols and apply predefined actions to refactor code.
Refactor code to:
\list
\li Improve internal quality of your application
\li Improve performance and extensibility
\li Improve code readability and maintainability
\li Simplify code structure
\endlist
\section2 Configure the Editor
Configure the text editor to suit your specific needs. Change the fonts,
colors, highlighting, and indentation.
If you are used to the Vim editor, run the main editor in the
\l {FakeVim Modes and Commands}{FakeVim mode}.
For more information, see \l{Edit Code}{How To: Edit Code} and \l{Editors}.
\section1 Build, Deploy, and Run
Run and deploy Qt applications that you build for different target
platforms or with different compilers, debuggers, or Qt versions.
\l{glossary-buildandrun-kit}{Kits} define the tools, \l{glossary-device}
{device} type and other settings to use when building and running your
project.
\QC integrates cross-platform systems for build automation: CMake,
qmake, Qbs, and Autotools. In addition, you can import projects as
\e {generic projects} and fully control the steps and commands to
build the project.
Build applications for, deploy them to, and run them on the desktop
environment or a device. With kits, as well as build, run, and deployment
configurations, you can quickly switch between different setups and
target platforms.
For more information, see \l{Build and Run}{How To: Build and Run},
\l{Build Systems}, \l{Build Configurations}, and \l{Run Configurations}.
\section2 On Devices
When you install tool chains for device types as part of a Qt distribution,
the build and run configurations for the devices might be set up
automatically. However, you might need to install and configure some
additional software on the devices to be able to connect to them
from the computer.
Deployment configurations handle the packaging and copying of the necessary
files to a location you want to run the executable at, such as the file
system of a device.
For more information, see \l{Connecting Devices} and \l{Deploying to Devices}.
\section2 Preview QML
Use the QML live preview to preview a QML file or an entire Qt Quick
application on the desktop, as well as on Android and embedded Linux
devices. The changes you make to the UI are instantly visible to you
in the preview.
For more information, see \l{Validating with Target Hardware}.
\section1 Debug
A debugger lets you see what happens \e inside an application while it runs
or when it crashes. A debugger can do the following to help you find errors
in the application:
\list
\li Start the application with parameters that specify its behavior.
\li Stop the application when conditions are met.
\li Examine what happens when the application stops.
\li Make changes in the application when you fix an error and continue
to find the next one.
\endlist
\QC integrates several external native debuggers for inspecting the state of
your application while debugging. The debugger plugin automatically selects
a suitable native debugger for each kit from the ones it finds on the
computer. Edit the kits to override this choice.
Connect devices to your computer to debug processes running on the devices.
For more information, see \l{Debugging}.
\section1 Analyze
Devices have limited memory and CPU power, so you should use them carefully.
\QC integrates code analysis tools for detecting memory leaks, profiling
function execution, analyzing CPU use, and eliminating unnecessary complexity
of code. Other tools provide code coverage and visualize trace events.
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.
For more information, see \l{Analyzing Code}.
\section1 Autotest
Create, build and run Qt tests, Qt Quick tests, Google tests, and Boost tests
to unit test applications and libraries.
Map AUTs (Application Under Test) to \QC and run Squish test suites
and cases from it.
For more information, see \l{Running Autotests} and \l{Using Squish}.
\section1 Publish
Create installation packages for mobile devices that you publish to
application stores and other channels. You must make sure that the
package contents meet the requirements for publishing on the channel.
For more information, see \l{Publishing to Google Play}.
\section1 Qt Tools
\QC is one of many Qt tools for designing and developing applications.
\image qt-tools.webp {Tools for Qt application development}
\caption Tools for Qt application development
*/ */

View File

@@ -21,12 +21,12 @@
\section1 Build Configurations \section1 Build Configurations
Build configurations have everything you need to compile the sources into
binaries. Build configurations use the tools and settings defined in their
corresponding kit.
\annotatedlist creator-reference-build-configurations \annotatedlist creator-reference-build-configurations
\section1 Run Configurations
\annotatedlist creator-reference-run-configurations
\section1 Editors \section1 Editors
\annotatedlist creator-reference-editors \annotatedlist creator-reference-editors
@@ -59,6 +59,17 @@
\annotatedlist creator-reference-preferences-text-editor \annotatedlist creator-reference-preferences-text-editor
\section1 Run Configurations
Run configurations start the application in the location where the
\e {deploy configuration} copied it. By default, when you select
\uicontrol Run, \QC builds the project, deploys it to the device
defined in the kit, and runs it there. If you did not make changes
to the project since you last built and deployed it, \QC simply runs
it again.
\annotatedlist creator-reference-run-configurations
\section1 UI Design \section1 UI Design
Design UIs with either \l{User Interfaces}{Qt Quick or Qt Widgets}. Design UIs with either \l{User Interfaces}{Qt Quick or Qt Widgets}.

View File

@@ -20,7 +20,7 @@
\li \l{Debugging} \li \l{Debugging}
If you install \QC as part of \QSDK, the GNU Symbolic Debugger If you install \QC with \QOI, the GNU Symbolic Debugger
is installed automatically and you should be ready to start is installed automatically and you should be ready to start
debugging after you create a new project. However, you can debugging after you create a new project. However, you can
change the setup to use debugging tools for Windows, for change the setup to use debugging tools for Windows, for

View File

@@ -0,0 +1,408 @@
GNU LIBRARY GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1991 Free Software Foundation, Inc. 51 Franklin St, Fifth
Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.
[This is the first released version of the library GPL. It is numbered 2
because it goes with version 2 of the ordinary GPL.]
Preamble
The licenses for most software are designed to take away your freedom to
share and change it. By contrast, the GNU General Public Licenses are
intended to guarantee your freedom to share and change free software--to
make sure the software is free for all its users.
This license, the Library General Public License, applies to some
specially designated Free Software Foundation software, and to any other
libraries whose authors decide to use it. You can use it for your
libraries, too.
When we speak of free software, we are referring to freedom, not price.
Our General Public Licenses are designed to make sure that you have the
freedom to distribute copies of free software (and charge for this
service if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid anyone
to deny you these rights or to ask you to surrender the rights. These
restrictions translate to certain responsibilities for you if you
distribute copies of the library, or if you modify it.
For example, if you distribute copies of the library, whether gratis or
for a fee, you must give the recipients all the rights that we gave you.
You must make sure that they, too, receive or can get the source code.
If you link a program with the library, you must provide complete object
files to the recipients so that they can relink them with the library,
after making changes to the library and recompiling it. And you must
show them these terms so they know their rights.
Our method of protecting your rights has two steps: (1) copyright the
library, and (2) offer you this license which gives you legal permission
to copy, distribute and/or modify the library.
Also, for each distributor's protection, we want to make certain that
everyone understands that there is no warranty for this free library. If
the library is modified by someone else and passed on, we want its
recipients to know that what they have is not the original version, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software patents.
We wish to avoid the danger that companies distributing free software
will individually obtain patent licenses, thus in effect transforming
the program into proprietary software. To prevent this, we have made it
clear that any patent must be licensed for everyone's free use or not
licensed at all.
Most GNU software, including some libraries, is covered by the ordinary
GNU General Public License, which was designed for utility programs.
This license, the GNU Library General Public License, applies to certain
designated libraries. This license is quite different from the ordinary
one; be sure to read it in full, and don't assume that anything in it is
the same as in the ordinary license.
The reason we have a separate public license for some libraries is that
they blur the distinction we usually make between modifying or adding to
a program and simply using it. Linking a program with a library, without
changing the library, is in some sense simply using the library, and is
analogous to running a utility program or application program. However,
in a textual and legal sense, the linked executable is a combined work,
a derivative of the original library, and the ordinary General Public
License treats it as such.
Because of this blurred distinction, using the ordinary General Public
License for libraries did not effectively promote software sharing,
because most developers did not use the libraries. We concluded that
weaker conditions might promote sharing better.
However, unrestricted linking of non-free programs would deprive the
users of those programs of all benefit from the free status of the
libraries themselves. This Library General Public License is intended to
permit developers of non-free programs to use free libraries, while
preserving your freedom as a user of such programs to change the free
libraries that are incorporated in them. (We have not seen how to
achieve this as regards changes in header files, but we have achieved it
as regards changes in the actual functions of the Library.) The hope is
that this will lead to faster development of free libraries.
The precise terms and conditions for copying, distribution and
modification follow. Pay close attention to the difference between a
"work based on the library" and a "work that uses the library". The
former contains code derived from the library, while the latter only
works together with the library.
Note that it is possible for a library to be covered by the ordinary
General Public License rather than by this special one.
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License Agreement applies to any software library which
contains a notice placed by the copyright holder or other authorized
party saying it may be distributed under the terms of this Library
General Public License (also called "this License"). Each licensee
is addressed as "you".
A "library" means a collection of software functions and/or data
prepared so as to be conveniently linked with application programs
(which use some of those functions and data) to form executables.
The "Library", below, refers to any such software library or work
which has been distributed under these terms. A "work based on the
Library" means either the Library or any derivative work under
copyright law: that is to say, a work containing the Library or a
portion of it, either verbatim or with modifications and/or
translated straightforwardly into another language. (Hereinafter,
translation is included without limitation in the term
"modification".)
"Source code" for a work means the preferred form of the work for
making modifications to it. For a library, complete source code
means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the library.
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running a program using the Library is not restricted, and output
from such a program is covered only if its contents constitute a
work based on the Library (independent of the use of the Library in
a tool for writing it). Whether that is true depends on what the
Library does and what the program that uses the Library does. 1. You
may copy and distribute verbatim copies of the Library's complete
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any
warranty; and distribute a copy of this License along with the
Library.
You may charge a fee for the physical act of transferring a copy,
and you may at your option offer warranty protection in exchange for
a fee. 2. You may modify your copy or copies of the Library or any
portion of it, thus forming a work based on the Library, and copy
and distribute such modifications or work under the terms of Section
1 above, provided that you also meet all of these conditions: a) The
modified work must itself be a software library. b) You must cause
the files modified to carry prominent notices stating that you
changed the files and the date of any change. c) You must cause the
whole of the work to be licensed at no charge to all third parties
under the terms of this License. d) If a facility in the modified
Library refers to a function or a table of data to be supplied by an
application program that uses the facility, other than as an
argument passed when the facility is invoked, then you must make a
good faith effort to ensure that, in the event an application does
not supply such function or table, the facility still operates, and
performs whatever part of its purpose remains meaningful.
(For example, a function in a library to compute square roots
has a purpose that is entirely well-defined independent of the
application. Therefore, Subsection 2d requires that any
application-supplied function or table used by this function
must be optional: if the application does not supply it, the
square root function must still compute square roots.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Library,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work
based on the Library, the distribution of the whole must be on the
terms of this License, whose permissions for other licensees extend
to the entire whole, and thus to each and every part regardless of
who wrote it.
Thus, it is not the intent of this section to claim rights or
contest your rights to work written entirely by you; rather, the
intent is to exercise the right to control the distribution of
derivative or collective works based on the Library.
In addition, mere aggregation of another work not based on the
Library with the Library (or with a work based on the Library) on a
volume of a storage or distribution medium does not bring the other
work under the scope of this License. 3. You may opt to apply the
terms of the ordinary GNU General Public License instead of this
License to a given copy of the Library. To do this, you must alter
all the notices that refer to this License, so that they refer to
the ordinary GNU General Public License, version 2, instead of to
this License. (If a newer version than version 2 of the ordinary GNU
General Public License has appeared, then you can specify that
version instead if you wish.) Do not make any other change in these
notices.
Once this change is made in a given copy, it is irreversible for
that copy, so the ordinary GNU General Public License applies to all
subsequent copies and derivative works made from that copy.
This option is useful when you wish to copy part of the code of the
Library into a program that is not a library. 4. You may copy and
distribute the Library (or a portion or derivative of it, under
Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you accompany it with the
complete corresponding machine-readable source code, which must be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange.
If distribution of object code is made by offering access to copy
from a designated place, then offering equivalent access to copy the
source code from the same place satisfies the requirement to
distribute the source code, even though third parties are not
compelled to copy the source along with the object code. 5. A
program that contains no derivative of any portion of the Library,
but is designed to work with the Library by being compiled or linked
with it, is called a "work that uses the Library". Such a work, in
isolation, is not a derivative work of the Library, and therefore
falls outside the scope of this License.
However, linking a "work that uses the Library" with the Library
creates an executable that is a derivative of the Library (because
it contains portions of the Library), rather than a "work that uses
the library". The executable is therefore covered by this License.
Section 6 states terms for distribution of such executables.
When a "work that uses the Library" uses material from a header file
that is part of the Library, the object code for the work may be a
derivative work of the Library even though the source code is not.
Whether this is true is especially significant if the work can be
linked without the Library, or if the work is itself a library. The
threshold for this to be true is not precisely defined by law.
If such an object file uses only numerical parameters, data
structure layouts and accessors, and small macros and small inline
functions (ten lines or less in length), then the use of the object
file is unrestricted, regardless of whether it is legally a
derivative work. (Executables containing this object code plus
portions of the Library will still fall under Section 6.)
Otherwise, if the work is a derivative of the Library, you may
distribute the object code for the work under the terms of Section
6. Any executables containing that work also fall under Section 6,
whether or not they are linked directly with the Library itself. 6.
As an exception to the Sections above, you may also compile or link
a "work that uses the Library" with the Library to produce a work
containing portions of the Library, and distribute that work under
terms of your choice, provided that the terms permit modification of
the work for the customer's own use and reverse engineering for
debugging such modifications.
You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are
covered by this License. You must supply a copy of this License.
If the work during execution displays copyright notices, you
must include the copyright notice for the Library among them, as
well as a reference directing the user to the copy of this
License. Also, you must do one of these things: a) Accompany the
work with the complete corresponding machine-readable source
code for the Library including whatever changes were used in the
work (which must be distributed under Sections 1 and 2 above);
and, if the work is an executable linked with the Library, with
the complete machine-readable "work that uses the Library", as
object code and/or source code, so that the user can modify the
Library and then relink to produce a modified executable
containing the modified Library. (It is understood that the user
who changes the contents of definitions files in the Library
will not necessarily be able to recompile the application to use
the modified definitions.) b) Accompany the work with a written
offer, valid for at least three years, to give the same user the
materials specified in Subsection 6a, above, for a charge no
more than the cost of performing this distribution. c) If
distribution of the work is made by offering access to copy from
a designated place, offer equivalent access to copy the above
specified materials from the same place. d) Verify that the user
has already received a copy of these materials or that you have
already sent this user a copy.
For an executable, the required form of the "work that uses the
Library" must include any data and utility programs needed for
reproducing the executable from it. However, as a special exception,
the source code distributed need not include anything that is
normally distributed (in either source or binary form) with the
major components (compiler, kernel, and so on) of the operating
system on which the executable runs, unless that component itself
accompanies the executable.
It may happen that this requirement contradicts the license
restrictions of other proprietary libraries that do not normally
accompany the operating system. Such a contradiction means you
cannot use both them and the Library together in an executable that
you distribute. 7. You may place library facilities that are a work
based on the Library side-by-side in a single library together with
other library facilities not covered by this License, and distribute
such a combined library, provided that the separate distribution of
the work based on the Library and of the other library facilities is
otherwise permitted, and provided that you do these two things: a)
Accompany the combined library with a copy of the same work based on
the Library, uncombined with any other library facilities. This must
be distributed under the terms of the Sections above. b) Give
prominent notice with the combined library of the fact that part of
it is a work based on the Library, and explaining where to find the
accompanying uncombined form of the same work. 8. You may not copy,
modify, sublicense, link with, or distribute the Library except as
expressly provided under this License. Any attempt otherwise to
copy, modify, sublicense, link with, or distribute the Library is
void, and will automatically terminate your rights under this
License. However, parties who have received copies, or rights, from
you under this License will not have their licenses terminated so
long as such parties remain in full compliance. 9. You are not
required to accept this License, since you have not signed it.
However, nothing else grants you permission to modify or distribute
the Library or its derivative works. These actions are prohibited by
law if you do not accept this License. Therefore, by modifying or
distributing the Library (or any work based on the Library), you
indicate your acceptance of this License to do so, and all its terms
and conditions for copying, distributing or modifying the Library or
works based on it. 10. Each time you redistribute the Library (or
any work based on the Library), the recipient automatically receives
a license from the original licensor to copy, distribute, link with
or modify the Library subject to these terms and conditions. You may
not impose any further restrictions on the recipients' exercise of
the rights granted herein. You are not responsible for enforcing
compliance by third parties to this License. 11. If, as a
consequence of a court judgment or allegation of patent infringement
or for any other reason (not limited to patent issues), conditions
are imposed on you (whether by court order, agreement or otherwise)
that contradict the conditions of this License, they do not excuse
you from the conditions of this License. If you cannot distribute so
as to satisfy simultaneously your obligations under this License and
any other pertinent obligations, then as a consequence you may not
distribute the Library at all. For example, if a patent license
would not permit royalty-free redistribution of the Library by all
those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Library.
If any portion of this section is held invalid or unenforceable
under any particular circumstance, the balance of the section is
intended to apply, and the section as a whole is intended to apply
in other circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is
willing to distribute software through any other system and a
licensee cannot impose that choice.
This section is intended to make thoroughly clear what is believed
to be a consequence of the rest of this License. 12. If the
distribution and/or use of the Library is restricted in certain
countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Library under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License. 13. The
Free Software Foundation may publish revised and/or new versions of
the Library General Public License from time to time. Such new
versions will be similar in spirit to the present version, but may
differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the
Library specifies a version number of this License which applies to
it and "any later version", you have the option of following the
terms and conditions either of that version or of any later version
published by the Free Software Foundation. If the Library does not
specify a license version number, you may choose any version ever
published by the Free Software Foundation. 14. If you wish to
incorporate parts of the Library into other free programs whose
distribution conditions are incompatible with these, write to the
author to ask for permission. For software which is copyrighted by
the Free Software Foundation, write to the Free Software Foundation;
we sometimes make exceptions for this. Our decision will be guided
by the two goals of preserving the free status of all derivatives of
our free software and of promoting the sharing and reuse of software
generally.
NO WARRANTY 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE,
THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE
COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS"
WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE
RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU.
SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL
NECESSARY SERVICING, REPAIR OR CORRECTION. 16. IN NO EVENT UNLESS
REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY
COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR
DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL
DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY
(INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED
INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE
OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH
HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES.
END OF TERMS AND CONDITIONS

View File

@@ -43,8 +43,8 @@
\li \uicontrol {Qt} \li \uicontrol {Qt}
\li Source and header files for item, table, \li Source and header files for item, table,
or list models, \QD forms and a matching classes for Qt Widgets or list models, \QD forms and a matching classes for Qt Widgets
projects, Qt resource files, as well as QML and JavaScript files projects, Qt resource and translation files, as well as QML and
for Qt Quick projects. JavaScript files for Qt Quick projects.
\row \row
\li \uicontrol {Compiler Explorer} \li \uicontrol {Compiler Explorer}
\li Example setup for using Compiler Explorer to compile C++ or Python \li Example setup for using Compiler Explorer to compile C++ or Python
@@ -74,9 +74,7 @@
\li Empty Nim source and script files. \li Empty Nim source and script files.
\endtable \endtable
\sa {Create compiler explorer sessions}, {Create C++ classes}, \sa {Add Files}{How To: Add Files}, {Create UML-style models},
{Create OpenGL fragment and vertex shaders}, {Create resource files},
{Create UML-style models}, {Create vcpkg manifest files},
{Use project wizards} {Use project wizards}
*/ */

View File

@@ -1,20 +1,20 @@
// Copyright (C) 2023 The Qt Company Ltd. // Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
/*! /*!
\page creator-how-to-create-compiler-explorer-sessions.html \page creator-how-to-create-compiler-explorer-sessions.html
\previouspage creator-how-tos.html \previouspage creator-how-tos.html
\ingroup creator-how-to-projects-files \ingroup creator-how-to-analyze
\title Create compiler explorer sessions \title Create compiler explorer sessions
To create a compiler explorer session for a C++ or Python project: To create a compiler explorer session for a C++ or Python project:
\list 1 \list 1
\li Select \uicontrol File > \uicontrol {New File} > \li Go to \uicontrol File > \uicontrol {New File}.
\uicontrol {Compiler Explorer} > \uicontrol C++ or \uicontrol Python \li Select \uicontrol {Compiler Explorer} > \uicontrol C++ or
> \uicontrol Choose. \uicontrol Python > \uicontrol Choose.
\li Follow the instructions of the wizard to create an example \li Follow the instructions of the wizard to create an example
compiler explorer session as a JSON-based \c .qtce file and to open compiler explorer session as a JSON-based \c .qtce file and to open
it. it.
@@ -29,7 +29,7 @@
\page creator-how-to-explore-compiler-code.html \page creator-how-to-explore-compiler-code.html
\previouspage creator-how-tos.html \previouspage creator-how-tos.html
\ingroup creator-how-to-build \ingroup creator-how-to-analyze
\title Explore compiler code \title Explore compiler code
@@ -45,7 +45,7 @@
To check how a compiler sees C++ or Python code: To check how a compiler sees C++ or Python code:
\list 1 \list 1
\li Select \uicontrol Tools > \uicontrol {Compiler Explorer} > \li Go to \uicontrol Tools > \uicontrol {Compiler Explorer} >
\uicontrol {Open Compiler Explorer}. \uicontrol {Open Compiler Explorer}.
\li In the \uicontrol Language field, select the language to compile. \li In the \uicontrol Language field, select the language to compile.
\li In the \uicontrol Compiler field, select a compiler to see the \li In the \uicontrol Compiler field, select a compiler to see the
@@ -53,6 +53,9 @@
\li Enter code to see the resulting assembly code. \li Enter code to see the resulting assembly code.
\endlist \endlist
Hover the mouse over the assembly code, to have the matching source lines
highlighted.
You can also see the application status and output. You can also see the application status and output.
To explore several compilers, select \uicontrol {Add Compiler}. To explore several compilers, select \uicontrol {Add Compiler}.

View File

@@ -0,0 +1,30 @@
// Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
/*!
\page creator-how-to-add-ts-files.html
\previouspage creator-how-tos.html
\ingroup creator-how-to-projects-files
\title Add translation files
When you \l{Creating Projects}{create a new project}, you can automatically
generate a translation source file (TS) for one language. To add other
languages later, use a file wizard.
To create a translation source (TS) file for a language:
\list 1
\li Go to \uicontrol File > \uicontrol {New File}.
\li Select \uicontrol Qt > \uicontrol {Qt Translation File} >
\uicontrol Choose.
\li In \uicontrol Language, select a language and territory (\e locale).
\image qtcreator-new-file-ts.webp {Select language for a TS file}
\endlist
You can see the file name in \uicontrol {Translation file}.
\sa {Create files}, {Use project wizards}, {Use Qt Linguist},
{Internationalization with Qt}, {Qt Linguist Manual}
*/

View File

@@ -37,15 +37,6 @@
the sources into binaries. Build configurations use the tools and settings the sources into binaries. Build configurations use the tools and settings
defined in their corresponding kit. defined in their corresponding kit.
\li \l{Running on Multiple Platforms}
\e {Run configurations} start the application in the location
where it was copied by the \e{deploy configuration}. By default,
when you select the \uicontrol Run function, \QC builds the project,
deploys it to the device defined in the kit, and runs it there. However,
if you have not made any changes to the project since you last
built and deployed it, \QC simply runs it again.
\li \l{Deploying to Devices} \li \l{Deploying to Devices}
\e {Deploy configurations} handle the packaging and copying of \e {Deploy configurations} handle the packaging and copying of
@@ -63,16 +54,5 @@
\endlist \endlist
\section1 Related Topics \sa {Build and Run}{How To: Build and Run}
\list
\li \l{Customizing the Build Process}
By default, running an application also builds it and deploys it to
a location from where it can be run on the device. You can change
the relationship between the build, run, and deploy configurations.
\endlist
*/ */

View File

@@ -1,4 +1,4 @@
// Copyright (C) 2020 The Qt Company Ltd. // Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
// ********************************************************************** // **********************************************************************
@@ -30,25 +30,28 @@
\list 1 \list 1
\li Click the \uicontrol {Build and Run Kit Selector} icon (1) or select \li Select the \uicontrol {Build and Run Kit Selector} icon or go to
\uicontrol Build > \uicontrol {Open Build and Run Kit Selector} to select the \uicontrol Build > \uicontrol {Open Build and Run Kit Selector} to select the
build and run \l{glossary-buildandrun-kit}{kit} or an build and run \l{glossary-buildandrun-kit}{kit} or an
\l{Managing Android Virtual Devices (AVD)}{Android device}. \l{Managing Android Virtual Devices (AVD)}{Android device}.
\image qtcreator-kit-selector.png "Kit selector" \image qtcreator-kit-selector.webp {Kit selector}
\li Choose \uicontrol Build > \uicontrol {Build Project} or press \li Choose \uicontrol Build > \uicontrol {Build Project} or press
\key {Ctrl+B}. \key {Ctrl+B}.
You can also select the \uicontrol Run button (2) to also deploy and run Or, select \inlineimage icons/run_small.png (\uicontrol Run) to
the application after building it. deploy and run the application after building it.
\endlist \endlist
While the application is being built, the \uicontrol Build button (3) While the application is being built, the \inlineimage icons/build.png
changes to a \uicontrol {Cancel Build} button. To cancel the build, select (\uicontrol Build) button changes to a \inlineimage icons/cancel-build.png
(\uicontrol {Cancel Build}) button. To cancel the build, select
the button, press \key {Alt+Backspace}, or select \uicontrol Build > the button, press \key {Alt+Backspace}, or select \uicontrol Build >
\uicontrol {Cancel Build}. If you selected a build command and \uicontrol {Cancel Build}.
If you selected a build command and
decide you would also like to run the application, you can select the decide you would also like to run the application, you can select the
\uicontrol Run button to schedule running the project after building is done. \uicontrol Run button to schedule running the project after building is done.

View File

@@ -1,4 +1,4 @@
// Copyright (C) 2020 The Qt Company Ltd. // Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
// ********************************************************************** // **********************************************************************
@@ -9,35 +9,48 @@
/*! /*!
\page creator-build-process-customizing.html \page creator-build-process-customizing.html
\previouspage creator-setup-webassembly.html \previouspage creator-how-tos.html
\nextpage creator-testing.html
\title Customizing the Build Process \ingroup creator-how-to-build
To configure how projects are built, deployed, and run, select \title Customize the build process
To configure how projects are built, deployed, and run, go to
\preferences > \uicontrol {Build & Run} > \uicontrol General. \preferences > \uicontrol {Build & Run} > \uicontrol General.
\image qtcreator-project-options-deploy.png "Project General preferences" \image qtcreator-preferences-build-run-general.webp {Build & Run General preferences}
By default, the \uicontrol {Always deploy project before running it} (1) and By default, \uicontrol {Always deploy project before running it} (1) and
\uicontrol {Build the Whole Project} (2) options are enabled. Therefore, \uicontrol {Build the Whole Project} (2) are selected. Therefore, when
when you select the \uicontrol Run function, \QC checks for changes in the you select \inlineimage icons/run_small.png (\uicontrol Run), \QC checks
project files and also builds and deploys the project if necessary. for changes in the project files and also builds and deploys the project if
necessary.
To deploy applications without building them or to just build the To deploy applications without building them or to just build the
application that you want to run, select the appropriate options application that you want to run, select the appropriate options
in the \uicontrol {Build before deploying} field. in \uicontrol {Build before deploying}.
\section1 Stop applications before building
By default, the applications that the project contains are stopped By default, the applications that the project contains are stopped
before rebuilding the project. To stop just the current application, before rebuilding the project.
the applications in the same build directory, all applications,
or no applications, select the appropriate option in the To stop just the current application, the applications in the same build
\uicontrol {Stop applications before building} field. directory, all applications, or no applications, select the appropriate
option in \uicontrol {Stop applications before building}.
\section1 Use jom
On Windows, you can use \c jom instead of \c nmake for building the project On Windows, you can use \c jom instead of \c nmake for building the project
to distribute the compilation process to multiple CPU cores. You can download to distribute the compilation process to multiple CPU cores.
\c jom from \l{http://download.qt.io/official_releases/jom}{Qt Downloads}.
To use \c jom, select the \uicontrol {Use jom instead of nmake} check box.
Deselect the check box if you experience build problems.
To use \c jom:
\list 1
\li Download \c jom from \l{http://download.qt.io/official_releases/jom}
{Qt Downloads}.
\li Select \uicontrol {Use jom instead of nmake}.
\endlist
Clear the check box if builds fail.
*/ */

View File

@@ -198,8 +198,8 @@
directory in the \l {File System} view. directory in the \l {File System} view.
Declaring files as a part of the project also makes them visible to the Declaring files as a part of the project also makes them visible to the
\l{Searching with the Locator}{locator} and \l{Advanced Search} \l{Searching with the Locator}{locator} and
{project-wide search}. \l{Search in projects or file systems}{project-wide search}.
\section1 CMake Projects \section1 CMake Projects

View File

@@ -1,4 +1,4 @@
// Copyright (C) 2023 The Qt Company Ltd. // Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
// ********************************************************************** // **********************************************************************
@@ -20,6 +20,8 @@
has the same XML structure as a \e {.user} file, but only has the has the same XML structure as a \e {.user} file, but only has the
settings to share. settings to share.
\note Use \l{CMake Presets} to share CMake project settings.
\section1 Create a shared settings file \section1 Create a shared settings file
The easiest way to create a \e {.shared} file is to copy settings from the The easiest way to create a \e {.shared} file is to copy settings from the
@@ -70,5 +72,5 @@
a permanent sticky setting that was created just because you wanted to try a permanent sticky setting that was created just because you wanted to try
something out. something out.
\sa {Configuring Projects} \sa {Configuring Projects}, {CMake Presets}
*/ */

View File

@@ -1,4 +1,4 @@
// Copyright (C) 2021 The Qt Company Ltd. // Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
// ********************************************************************** // **********************************************************************
@@ -9,68 +9,76 @@
/*! /*!
\page creator-running-targets.html \page creator-running-targets.html
\if defined(qtdesignstudio) \previouspage creator-how-tos.html
\previouspage studio-live-preview.html
\else
\previouspage creator-building-targets.html
\endif
\nextpage creator-deployment.html
\title Running on Multiple Platforms \ingroup creator-how-to-run
\title Run on many platforms
By default, running an application also builds it and deploys it to a By default, running an application also builds it and deploys it to a
location from where it can be run on the desktop, on a device emulator or location from where it can run on the desktop, on a device emulator or
simulator, or on a \l{glossary-device}{device} that is connected to simulator, or on a \l{glossary-device}{device} that is connected to
the development PC. the computer.
To run executable files without deploying them first, select \uicontrol Build > \section1 Run applications
\uicontrol {Run Without Deployment}. To make this the default option, deselect the
\preferences > \uicontrol {Build & Run} >
\uicontrol General > \uicontrol {Always deploy project before running it}
check box.
To run applications: To run applications:
\list 1 \list 1
\li Click the \uicontrol {Build and Run Kit Selector} icon (1) or select \li Select the \uicontrol {Build and Run Kit Selector} icon or go to
\uicontrol Build > \uicontrol {Open Build and Run Kit Selector} to select the \uicontrol Build > \uicontrol {Open Build and Run Kit Selector} to select the
build and run \l{glossary-buildandrun-kit}{kit}. build and run \l{glossary-buildandrun-kit}{kit}.
\image qtcreator-kit-selector.png "Kit selector" \image qtcreator-kit-selector.webp {Kit selector}
\li Click the \uicontrol Run button (2). \li Select \inlineimage icons/run_small.png (\uicontrol Run).
\endlist \endlist
\section1 Run on mobile and embedded devices
If you have connected \l{Mobile Platforms}{mobile devices} or
\l{Embedded Platforms}{embedded devices} to the computer
or added virtual devices, such as \l{Managing Android Virtual Devices (AVD)}
{Android Virtual Devices (AVD)}, you can select them in the kit selector.
Select \uicontrol Manage to manage device settings. For example, you can add
AVDs or manually start disconnected AVDs.
\section1 Select run targets
If your project has several run targets defined, such as If your project has several run targets defined, such as
\l{Running Autotests}{tests}, you can select them in the kit selector. \l{Running Autotests}{tests}, you can select them in the kit selector.
\image qtcreator-kit-selector-run-targets.png "Run targets in the kit selector" \image qtcreator-kit-selector-run-targets.png {Run targets in the kit selector}
If you have connected \l{Mobile Platforms}{mobile devices} or \section1 Run without deploying
\l{Embedded Platforms}{embedded devices} to the development PC
or added virtual devices, such as \l{Managing Android Virtual Devices (AVD)}
{Android Virtual Devices (AVD)}, you can select them in the kit selector.
Select \uicontrol Manage to manage device settings. For example, you can add
AVDs or manually start disconnected AVDs.
\l {Application Output} displays the status of the To run executable files without deploying them first, select \uicontrol Build >
application while it is running. You can select the \uicontrol Run button \uicontrol {Run Without Deployment}.
to re-run applications without building them first. This is
useful when developing Qt Quick applications because the QML files are To make this the default option, go to \preferences >
interpreted at runtime. Therefore, the application does not need to be \uicontrol {Build & Run} > \uicontrol General, and clear
\uicontrol {Always deploy project before running it}.
\section1 Run without building
\l {Application Output} displays the status of the application while it is
running.
\image qtcreator-application-output.webp {Application Output view}
Select \inlineimage icons/run_small.png (\uicontrol Run)
to re-run applications without building them first.
This is useful when developing Qt Quick applications because the QML files
are interpreted at runtime. Therefore, the application does not need to be
built again if you edited only QML files. This saves time especially if built again if you edited only QML files. This saves time especially if
the application has large image files that would need to be bundled the application has large image files that would need to be bundled
into the resource file before running the application. into the resource file before running the application.
\image qtcreator-application-output.webp {Application Output view} \sa {Configure projects for running}, {Customize the build process},
{Run on QNX devices}, {Run on remote Linux devices},
\include linux-mobile/creator-projects-running-generic-linux.qdocinc running on embedded linux {Run Python applications}, {Supported Platforms}
\if defined(qtcreator)
\include qnx/creator-projects-running-qnx.qdocinc running on qnx
\sa {Configure projects for running}, {Run Python applications}
\endif
*/ */

View File

@@ -19,9 +19,8 @@
\list \list
\li \l{Set up PySide6} \li \l{Set up PySide6}
\li \l{Create Qt for Python applications} \li \l{Create Qt for Python applications}
\li \l{Select the Python interpreter} \li \l{Select the Python version}
\li \l{Create a virtual environment} \li \l{Create kits for Python}
\li \l{Create kits for Python interpreters}
\li \l{Use Python interactive shell} \li \l{Use Python interactive shell}
\li \l{Configure Python language servers} \li \l{Configure Python language servers}
\li \l{Run Python applications} \li \l{Run Python applications}
@@ -48,9 +47,10 @@
\section1 Create Qt for Python applications \section1 Create Qt for Python applications
You can use wizards to create Qt for Python application projects. The wizards Use wizards to create Qt for Python application projects. The wizards
generate a project file, \c {.pyproject}, that lists the files in the Python generate a project file, \c {.pyproject}, that lists the files in the Python
project. They also generate a \c {.py} file that has some boilerplate code. project. They also generate a \c {.py} file that has some boilerplate code
and \c {reguirements.txt} that stores the PySide version of the generated code.
In addition, the widget-based UI wizard creates a \c {.ui} file that has a In addition, the widget-based UI wizard creates a \c {.ui} file that has a
\QD form, and the Qt Quick Application wizard creates a \c {.qml} file that \QD form, and the Qt Quick Application wizard creates a \c {.qml} file that
imports Qt Quick controls. imports Qt Quick controls.
@@ -72,50 +72,31 @@
use \c {.pyqtc} files, but we recommend that you choose \c{.pyproject} files use \c {.pyqtc} files, but we recommend that you choose \c{.pyproject} files
for new projects. for new projects.
\section1 Select the Python interpreter \section1 Select the Python version
You select the initial Python interpreter when you use the Qt for Python The \l{kits-tab}{kits} you select for the project in \uicontrol Projects >
Application wizard templates to create Python projects. \uicontrol {Build & Run} set the Python version to use.
\image qtcreator-new-qt-for-python-app-widgets-project-details.webp {Define Project Details dialog} The \l {Edit Mode}{Edit mode} toolbar shows the current Python version.
You can see the current Python interpreter on the \uicontrol Edit mode \image qtcreator-python-interpreter-edit-mode.webp {Python version on the Edit mode toolbar}
toolbar.
\image qtcreator-python-interpreter-edit-mode.webp {Python interpreter on the Edit mode toolbar} To use another Python version, activate another kit for the project.
You can change the interpreter to use for a particular project in \section1 Create kits for Python
\uicontrol Projects > \uicontrol Run > \uicontrol Interpreter.
\image qtcreator-python-run-settings.png {Python run settings} \QC automatically adds all Python versions it can find to the list of
Python versions in \preferences > \uicontrol Python > \uicontrol Interpreters.
To see the available interpreters and choose another interpreter, select the It generates kits for the global Python versions that are not inside a
current interpreter, and then select \uicontrol {Manage Python Interpreters}. virtual environment.
Or, select \preferences > \uicontrol Python > \uicontrol Interpreters.
\image qtcreator-python-interpreters.webp {Python Interpreters in Preferences} \image qtcreator-python-interpreters.webp {Python Interpreters in Preferences}
You can add and remove interpreters and clean up references to interpreters You can add and remove Python versions and clean up references to Python
that you uninstalled, but that still appear in the list. versions that you uninstalled, but that still appear in the list.
To use the selected Python interpreter by default, select To use the selected Python version when opening \c {.py} files that don't
\uicontrol {Make Default}. belong to a project, select \uicontrol {Make Default}.
\section1 Create a virtual environment
To use a clean \l{https://docs.python.org/3/library/venv.html}{Python}
virtual environment (\c venv) that is independent of your global Python
installation for a Qt for Python project, select the
\uicontrol {Create new virtual environment} check box in the project wizard.
Set the directory where to create the environment in
\uicontrol {Path to virtual environment}.
\section1 Create kits for Python interpreters
\QC automatically adds all Python interpreters it can find to the list of
interpreters in \preferences > \uicontrol Python > \uicontrol Interpreters.
It generates \l{kits-tab}{kits} for the global Python interpreters that are
not inside a virtual environment.
To use a virtual environment as a kit, select it in \uicontrol Interpreters, To use a virtual environment as a kit, select it in \uicontrol Interpreters,
and then select \uicontrol {Generate Kit}. and then select \uicontrol {Generate Kit}.
@@ -133,5 +114,6 @@
the file, select \uicontrol {REPL Import *}. the file, select \uicontrol {REPL Import *}.
\sa {Creating a Qt for Python Application with Qt Widgets}, \sa {Creating a Qt for Python Application with Qt Widgets},
{Creating a Qt for Python Application with Qt Quick} {Creating a Qt for Python Application with Qt Quick},
{Activate kits for a project}
*/ */

View File

@@ -35,7 +35,7 @@
you select for a kit in \uicontrol Projects > \uicontrol {Build & Run} > you select for a kit in \uicontrol Projects > \uicontrol {Build & Run} >
\uicontrol Run > \uicontrol {Run Settings}. \uicontrol Run > \uicontrol {Run Settings}.
\image qtcreator-python-run-settings.png {Python run settings} \image qtcreator-python-run-settings.webp {Python run settings}
The following table summarizes the settings for running Qt for Python The following table summarizes the settings for running Qt for Python
applications. applications.
@@ -45,7 +45,7 @@
\li Setting \li Setting
\li Value \li Value
\row \row
\li \uicontrol Interpreter \li \uicontrol Python
\li Path to the Python executable. \li Path to the Python executable.
\row \row
\li \uicontrol {Buffered output} \li \uicontrol {Buffered output}

View File

@@ -1,4 +1,4 @@
// Copyright (C) 2023 The Qt Company Ltd. // Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
/*! /*!
@@ -28,11 +28,10 @@
class: class:
\list 1 \list 1
\li Select \uicontrol File > \uicontrol {New Project} > \li Go to \uicontrol File > \uicontrol {New Project}.
\uicontrol {Application (Qt for Python)} > \uicontrol {Empty Window} \li Select \uicontrol {Application (Qt for Python)} >
> \uicontrol Choose. \uicontrol {Empty Window} > \uicontrol Choose to open the
\uicontrol {Project Location} dialog.
The \uicontrol {Project Location} dialog opens.
\image qtcreator-new-qt-for-python-app-widgets-project-location.webp {Project Location dialog} \image qtcreator-new-qt-for-python-app-widgets-project-location.webp {Project Location dialog}
\li In \uicontrol {Name}, enter the project name. For example, \li In \uicontrol {Name}, enter the project name. For example,
\e {hello_world}. \e {hello_world}.
@@ -49,16 +48,14 @@
\li In \uicontrol {Project file}, enter a name for the project file. \li In \uicontrol {Project file}, enter a name for the project file.
\li Select \uicontrol{Next} or \uicontrol Continue to open the \li Select \uicontrol{Next} or \uicontrol Continue to open the
\uicontrol {Define Project Details} dialog. \uicontrol {Define Project Details} dialog.
\image qtcreator-new-qt-for-python-app-widgets-project-details.webp {Define Project Details dialog} \image qtcreator-new-qt-for-python-app-project-details.webp {Define Project Details dialog}
\li In \uicontrol {PySide version}, select the PySide version of the \li In \uicontrol {PySide version}, select the PySide version of the
generated code. generated code.
\li In \uicontrol {Interpreter}, select the Python interpreter to use for \li Select \uicontrol{Next} or \uicontrol Continue to open the
the project. \uicontrol {Kit Selection} dialog.
\li Select the \uicontrol {Create new virtual environment} check box to \image qtcreator-new-project-qt-for-python-kit-selection.webp {Selecting a kit for a Python project}
use a clean \l{https://docs.python.org/3/library/venv.html}{Python} \li Select Qt for Python kits for building, deploying, and running the
environment that is independent of your global Python installation. project.
\li In \uicontrol {Path to virtual environment}, specify the directory
where to create the environment.
\li Select \uicontrol{Next} or \uicontrol Continue. \li Select \uicontrol{Next} or \uicontrol Continue.
\li Review the project settings, and select \uicontrol {Finish} (on \li Review the project settings, and select \uicontrol {Finish} (on
Windows and Linux) or \uicontrol Done (on \macos) to create the Windows and Linux) or \uicontrol Done (on \macos) to create the
@@ -71,6 +68,8 @@
\li \c {hellow_world.pyproject}, which lists the files in the Python \li \c {hellow_world.pyproject}, which lists the files in the Python
project. project.
\li \c {mywidget.py}, which has some boilerplate code for a class. \li \c {mywidget.py}, which has some boilerplate code for a class.
\li \c {reguirements.txt}, which stores the PySide version of the
generated code.
\endlist \endlist
\section1 Adding Qt Widgets Imports \section1 Adding Qt Widgets Imports

View File

@@ -1,4 +1,4 @@
// Copyright (C) 2023 The Qt Company Ltd. // Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
/*! /*!
@@ -18,16 +18,19 @@
\image qtcreator-new-qt-for-python-app-qt-quick-empty-project-ready.webp {A small Qt Quick application} \image qtcreator-new-qt-for-python-app-qt-quick-empty-project-ready.webp {A small Qt Quick application}
For more examples of creating Qt for Python applications, see
\l {https://doc.qt.io/qtforpython/tutorials/index.html}
{Qt for Python Examples and Tutorials}.
\section1 Creating an Empty Project \section1 Creating an Empty Project
To create a Qt for Python application that has a main QML file: To create a Qt for Python application that has a main QML file:
\list 1 \list 1
\li Select \uicontrol File > \uicontrol {New Project} > \li Go to \uicontrol File > \uicontrol {New Project}.
\uicontrol {Application (Qt for Python)} > \li Select \uicontrol {Application (Qt for Python)} >
\uicontrol {Qt Quick Application - Empty} > \uicontrol Choose. \uicontrol {Qt Quick Application - Empty} > \uicontrol Choose to
open the \uicontrol {Project Location} dialog.
The \uicontrol {Project Location} dialog opens.
\image qtcreator-new-qt-for-python-app-qt-quick-empty-project-location.webp {Project Location dialog} \image qtcreator-new-qt-for-python-app-qt-quick-empty-project-location.webp {Project Location dialog}
\li In \uicontrol {Name}, enter the project name. For example, \li In \uicontrol {Name}, enter the project name. For example,
\e {hello_world_quick}. \e {hello_world_quick}.
@@ -35,17 +38,14 @@
For example, \c {C:\Qt\examples}. For example, \c {C:\Qt\examples}.
\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 Project Details} dialog. (on \macos) to open the \uicontrol {Define Project Details} dialog.
\image qtcreator-new-qt-for-python-app-qt-quick-empty-project-details.webp {Define Project Details dialog} \image qtcreator-new-qt-for-python-app-project-details.webp {Define Project Details dialog}
\li In \uicontrol {PySide version}, select the PySide version of \li In \uicontrol {PySide version}, select the PySide version of
the generated code. the generated code.
\li In \uicontrol {Interpreter}, select the Python interpreter to use for \li Select \uicontrol{Next} or \uicontrol Continue to open the
the project. \uicontrol {Kit Selection} dialog.
\li Select the \uicontrol {Create new virtual environment} check box to \image qtcreator-new-project-qt-for-python-kit-selection.webp {Selecting a kit for a Python project}
use a clean \l{https://docs.python.org/3/library/venv.html}{Python} \li Select Qt for Python kits for building, deploying, and running the
environment that is independent of your global Python installation. project.
\li In \uicontrol {Path to virtual environment}, specify the directory
where to create the environment.
\li Select \uicontrol{Next} or \uicontrol Continue.
\li Review the project settings, and select \uicontrol {Finish} (on \li Review the project settings, and select \uicontrol {Finish} (on
Windows and Linux) or \uicontrol Done (on \macos) to create the Windows and Linux) or \uicontrol Done (on \macos) to create the
project. project.
@@ -58,6 +58,8 @@
project. project.
\li \c {main.py}, which has some boilerplate code. \li \c {main.py}, which has some boilerplate code.
\li \c {main.qml}, which imports Qt Quick controls. \li \c {main.qml}, which imports Qt Quick controls.
\li \c {reguirements.txt}, which stores the PySide version of the
generated code.
\endlist \endlist
\section1 Adding Qt Quick Imports \section1 Adding Qt Quick Imports

View File

@@ -1,22 +1,21 @@
// Copyright (C) 2022 The Qt Company Ltd. // Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
/*! /*!
//! [running on qnx] \page creator-how-to-run-on-qnx.html
\previouspage creator-how-tos.html
\section1 Running on QNX Devices \ingroup creator-how-to-run
\title Run on QNX devices
To build an application and run it on a device:
\list 1 \list 1
\li Connect the device to the computer or to the Wi-Fi network.
\li Connect the device to the development PC or to the Wi-Fi network. \li Configure the device and specify a connection to it.
\li Configure the device and specify a connection to it. For more
information, see \l{Connecting QNX Devices}.
\li Make sure that your kit has your QNX device set. \li Make sure that your kit has your QNX device set.
\li Select \inlineimage icons/run_small.png (\uicontrol Run).
\li Click the \uicontrol Run button.
\endlist \endlist
\QC uses the compiler specified in the QNX tool chain to build the \QC uses the compiler specified in the QNX tool chain to build the
@@ -25,23 +24,23 @@
\note Debugging is currently only fully supported on Linux and \macos. \note Debugging is currently only fully supported on Linux and \macos.
It is not possible to insert breakpoints during runtime on Windows. It is not possible to insert breakpoints during runtime on Windows.
\section2 Troubleshooting Errors \section1 Troubleshoot errors
To support running, debugging, and stopping applications from \QC, the QNX To support running, debugging, and stopping applications from \QC, the QNX
Neutrino RTOS has additional command-line tools and services, as described Neutrino RTOS has additional command-line tools and services, as described
in \l {Qt for QNX}. in \l {Qt for QNX}.
\section3 Debug Output Cannot Be Shown \section2 Debug output cannot be shown
For the command-line output to show up in the \uicontrol{Application Output}, For the command-line output to show up in the \uicontrol{Application Output},
\QC needs to be able to establish an SSH connection to the device. \QC has to create an SSH connection to the device.
This is only possible if QNX Momentics is not running, and the SSH key This is only possible if QNX Momentics is not running, and the SSH key
configured for the device is a 4096-bit key. configured for the device is a 4096-bit key.
If these conditions are not met, you will get an error message saying debug If these conditions are not met, you will get an error message saying debug
output cannot be shown. output cannot be shown.
\section3 Cannot Run, Debug, or Stop Applications \section2 Cannot run, debug, or stop applications
The board support package (BSP) for the QNX device might be missing some The board support package (BSP) for the QNX device might be missing some
of the following applications that \QC needs to run, debug, and stop of the following applications that \QC needs to run, debug, and stop
@@ -49,5 +48,6 @@
\c printf, \c ps, \c read, \c sed, \c sleep, \c uname, \c slog2info, and \c printf, \c ps, \c read, \c sed, \c sleep, \c uname, \c slog2info, and
\c cat. \c cat.
//! [running on qnx] \sa {Connecting QNX Devices}, {Run on many platforms}, {Compilers},
{Embedded Platforms}, {kit-preferences}{Kits}
*/ */

View File

@@ -15,7 +15,7 @@
\list \list
\li \l{Getting Started} \li \l{Getting Started}
\list \list
\li \l{IDE Overview} \li \l{Overview}
\list \list
\li \l{Creating Projects} \li \l{Creating Projects}
\li \l{Configuring Projects} \li \l{Configuring Projects}
@@ -36,11 +36,6 @@
\li \l{Using Text Editing Macros} \li \l{Using Text Editing Macros}
\li \l{Comparing Files} \li \l{Comparing Files}
\endlist \endlist
\li \l{Finding}
\list
\li \l{Finding and Replacing}
\li \l{Searching with the Locator}
\endlist
\li \l{Refactoring} \li \l{Refactoring}
\li \l{Configuring the Editor} \li \l{Configuring the Editor}
\li \l{Using GitHub Copilot} \li \l{Using GitHub Copilot}
@@ -54,7 +49,6 @@
\li \l{Previewing in Browsers} \li \l{Previewing in Browsers}
\endlist \endlist
\li \l{Building for Multiple Platforms} \li \l{Building for Multiple Platforms}
\li \l{Running on Multiple Platforms}
\li \l{Deploying to Devices} \li \l{Deploying to Devices}
\list \list
\li \l{Deploying to Android} \li \l{Deploying to Android}
@@ -74,7 +68,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
\li \l{Customizing the Build Process}
\endlist \endlist
\li \l{Testing} \li \l{Testing}
\list \list
@@ -149,6 +142,8 @@
\generatelist creator-how-to-configure-editors \generatelist creator-how-to-configure-editors
\li Manage Language Servers \li Manage Language Servers
\generatelist creator-how-to-lsp \generatelist creator-how-to-lsp
\li Search
\generatelist creator-how-to-search
\endlist \endlist
\li Manage Kits \li Manage Kits
\generatelist creator-how-to-manage-kits \generatelist creator-how-to-manage-kits
@@ -157,7 +152,7 @@
\list \list
\li Create Projects \li Create Projects
\generatelist creator-how-to-projects-create \generatelist creator-how-to-projects-create
\li Create Files \li Add Files
\generatelist creator-how-to-projects-files \generatelist creator-how-to-projects-files
\li Configure Projects \li Configure Projects
\generatelist creator-how-to-projects-configure \generatelist creator-how-to-projects-configure

View File

@@ -41,7 +41,7 @@
\row \row
\li \b {\l{Getting Started}} \li \b {\l{Getting Started}}
\list \list
\li \l{IDE Overview} \li \l{Overview}
\li \l{User Interface} \li \l{User Interface}
\li \l{Configuring Qt Creator} \li \l{Configuring Qt Creator}
\li \l{Building and Running an Example} \li \l{Building and Running an Example}
@@ -50,7 +50,6 @@
\li \b {\l{Coding}} \li \b {\l{Coding}}
\list \list
\li \l{Writing Code} \li \l{Writing Code}
\li \l{Finding}
\li \l{Refactoring} \li \l{Refactoring}
\li \l{Configuring the Editor} \li \l{Configuring the Editor}
\endlist \endlist
@@ -58,7 +57,6 @@
\list \list
\li \l{Validating with Target Hardware} \li \l{Validating with Target Hardware}
\li \l{Building for Multiple Platforms} \li \l{Building for Multiple Platforms}
\li \l{Running on Multiple Platforms}
\li \l{Deploying to Devices} \li \l{Deploying to Devices}
\li \l{Connecting Devices} \li \l{Connecting Devices}
\endlist \endlist

View File

@@ -19,7 +19,7 @@
If you add animation to the states, you can If you add animation to the states, you can
\l{Validating with Target Hardware}{preview} \l{Validating with Target Hardware}{preview}
or \l{Running on Multiple Platforms}{run} or \l{Run on many platforms}{run}
the application to test the animation. the application to test the animation.
//! [scxml state machines] //! [scxml state machines]

View File

@@ -1,4 +1,4 @@
// Copyright (C) 2019 The Qt Company Ltd. // Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
/*! /*!
@@ -8,44 +8,44 @@
\title Previewing on Desktop \title Previewing on Desktop
\if defined(qtcreator)
To preview the currently active QML file on the desktop, select
\uicontrol Build > \uicontrol {QML Preview}.
\image qtcreator-live-preview.png
\else
To preview the currently active QML file on the desktop: To preview the currently active QML file on the desktop:
\list \list
\if defined(qtcreator)
\li Select \inlineimage icons/live-preview.png (\uicontrol {Live Preview})
on the \l{Edit Mode}{editor} toolbar.
\image qtcreator-live-preview.webp {Application running on top of the editor view}
\li Select \uicontrol Build > \uicontrol {QML Preview}.
\endlist
\else
\li Select the \uicontrol {Live Preview} button on the top toolbar. \li Select the \uicontrol {Live Preview} button on the top toolbar.
\li Press \key {Alt+P}. \li Press \key {Alt+P}.
\image studio-live-preview.webp
\endlist \endlist
\image studio-live-preview.webp To preview any QML file in the project:
\endif
To preview any QML file that belongs to the project,
\list \list
\li Select the \uicontrol {Live Preview} button on the top toolbar. \li Select the \uicontrol {Live Preview} button on the top toolbar.
\li Right-click the \li Right-click the filename in the \l Projects view, and select
filename in the \l Projects view, and select \uicontrol {Preview File}. \uicontrol {Preview File}.
\endlist \endlist
\if defined(qtdesignstudio)
To preview the whole UI, select \uicontrol {Live Preview} To preview the whole UI, select \uicontrol {Live Preview}
when viewing the main QML file of the project. when viewing the main QML file of the project.
To view the UI in different sizes, select the zooming level on the toolbar. \section1 Overriding the Preview Tool
\section1 Selecting the Preview Tool By default, the QML runtime is used for previewing.
By default, the QML runtime is used for previewing. To use some To use some other tool:
other tool, specify it in the \uicontrol {QML viewer} field in the run
settings of the project in the Projects mode.
\note Click \inlineimage icons/settings.png \list 1
to access the setting options. \li Select \inlineimage icons/settings.png to go to
\uicontrol {Run Settings}.
\image studio-run-settings.png "Run settings" \image studio-run-settings.webp {Run Settings}
\li In \uicontrol {Override device QML viewer}, select the folder where
the preview tool executable is located.
\endlist
\endif \endif
*/ */

View File

@@ -1,4 +1,4 @@
// Copyright (C) 2021 The Qt Company Ltd. // Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
/*! /*!
@@ -12,35 +12,35 @@
\title Validating with Target Hardware \title Validating with Target Hardware
You can use the live preview feature to preview a UI file or the entire Preview a UI file or the entire UI on the desktop, as well as on embedded
UI on the desktop, as well as on embedded Linux Linux devices to instantly view the changes you make to the UI. On Android
devices. The changes you make to the UI are instantly visible devices, the preview shows the snapshot of your project from the moment
to you in the preview. you start the preview on the device, not your changes.
In addition, you can use \QDV to run \if defined(qtcreator)
\image qtcreator-live-preview.webp {Application running on top of the editor}
\else
\image studio-live-preview.webp
\endif
Or, use \QDV to run
\if defined(qtcreator) \if defined(qtcreator)
\l{Create Qt Quick UI Prototypes}{Qt Quick UI projects} \l{Create Qt Quick UI Prototypes}{Qt Quick UI projects}
\else \else
applications applications
\endif \endif
in most widely-used web browsers on the desktop and in mobile devices This in most widely-used web browsers on the desktop and in mobile devices and
enables you to easily share your designs with reviewers who don't have \QC. share your designs with reviewers who don't have \QC.
\if defined(qtcreator)
\image qtcreator-live-preview.png
\else
\image studio-live-preview.webp
\endif
\list \list
\li \l{Previewing on Desktop} \li \l{Previewing on Desktop}
You can preview individual QML files or the whole UI. Preview individual QML files or the whole UI.
\li \l{Previewing on Devices} \li \l{Previewing on Devices}
\if defined(qtcreator) \if defined(qtcreator)
You can preview Qt Quick applications on devices that you have Preview Qt Quick applications on devices that you
connected to the development PC. For more information, see connect to the development PC. For more information, see
\l {Connecting Devices}. \l {Connecting Devices}.
\else \else
When you install \QDS, everything you need for previewing on When you install \QDS, everything you need for previewing on
@@ -49,10 +49,9 @@
\endif \endif
\if defined(qtdesignstudio) \if defined(qtdesignstudio)
\li \l{Sharing Applications Online} \li \l{Sharing Applications Online}
You can share applications online and view them in a web browser. Share applications online and view them in a web browser.
\li \l{Viewing Applications on Android} \li \l{Viewing Applications on Android}
@@ -61,7 +60,7 @@
\else \else
\li \l{Previewing in Browsers} \li \l{Previewing in Browsers}
You can open \l{https://designviewer.qt.io/}{\QDV} Open \l{https://designviewer.qt.io/}{\QDV}
in a browser and load applications to it. in a browser and load applications to it.
\endif \endif
\endlist \endlist

View File

@@ -68,7 +68,7 @@
To use an \l{Terminal} {internal terminal}, select \preferences > To use an \l{Terminal} {internal terminal}, select \preferences >
\uicontrol Terminal > \uicontrol {Use internal terminal}. \uicontrol Terminal > \uicontrol {Use internal terminal}.
\endif \endif
\li Search from the selected directory. \li Search in the selected directory.
\li View file properties, such as name, path, MIME type, default editor, \li View file properties, such as name, path, MIME type, default editor,
line endings, indentation, owner, size, last read and modified line endings, indentation, owner, size, last read and modified
dates, and permissions. dates, and permissions.

View File

@@ -60,9 +60,9 @@
\section1 Find and filter output \section1 Find and filter output
To search from output, press \key {Ctrl+F} when the view is active. Enter To search in output, press \key {Ctrl+F} when the view is active. Enter
search criteria in the \uicontrol Find field. For more information, see search criteria in the \uicontrol Find field. For more information, see
\l{Finding and Replacing}. \l{Search in current file}.
To filter output, enter a string in the \uicontrol Filter field. To filter output, enter a string in the \uicontrol Filter field.

View File

@@ -15,9 +15,8 @@
application or the \uicontrol {Open Terminal} button to open a terminal, application or the \uicontrol {Open Terminal} button to open a terminal,
it opens as an output view. it opens as an output view.
To open the terminal in a separate window, select \preferences > To open the terminal in a separate window, go to \preferences >
\uicontrol Terminal, and deselet the \uicontrol {Use internal terminal} \uicontrol Terminal, and clear \uicontrol {Use internal terminal}.
check box.
On Linux and \macos, you can set the terminal to open by selecting On Linux and \macos, you can set the terminal to open by selecting
\preferences > \uicontrol Environment > \uicontrol System. \preferences > \uicontrol Environment > \uicontrol System.
@@ -39,12 +38,14 @@
. .
\li To select a word in a terminal, double-click it. To select the whole line, \li To select a word in a terminal, double-click it. To select the whole line,
triple-click it. triple-click it. To select all text, select \uicontrol {Select All}
in the context menu or press \key {Ctrl+A}.
\li To open links in a browser, files in the editor, or folders in the \li To open links in a browser, files in the editor, or folders in the
\l Projects view, hover the mouse over them, and press \key Ctrl. \l Projects view, hover the mouse over them, and press \key Ctrl.
\li To \l{Finding and Replacing}{search} through the output, press \key {Ctrl+F}. \li To \l{Search in current file}{search} through the output, press
\key {Ctrl+F}.
\li To make the font larger or smaller, select the \inlineimage icons/plus.png \li To make the font larger or smaller, select the \inlineimage icons/plus.png
and \inlineimage icons/minus.png and \inlineimage icons/minus.png

View File

@@ -89,7 +89,7 @@
\li Add and remove subprojects. \li Add and remove subprojects.
\li Find unused functions. \li Find unused functions.
\endif \endif
\li Search from the selected directory. \li Search in the selected directory.
\li Open a terminal window in the project directory. To specify the \li Open a terminal window in the project directory. To specify the
terminal to use on Linux and \macos, select \preferences > terminal to use on Linux and \macos, select \preferences >

View File

@@ -1,4 +1,4 @@
// Copyright (C) 2023 The Qt Company Ltd. // Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
// ********************************************************************** // **********************************************************************
@@ -78,25 +78,87 @@
\ingroup creator-reference-output-views \ingroup creator-reference-output-views
\ingroup studio-reference-output-views \ingroup studio-reference-output-views
\title Search Results \title Search Results View
\brief Lets you search through projects, files on a file system or the \brief Search through projects, files on a file system or the
currently open files. currently open files and view search results.
The search history (1) stores the search results. You can select earlier The search scope determines where \QC searches for the search string:
searches from the history.
\image qtcreator-search-results.webp {Search Results - criteria} \list
\li \uicontrol {All Projects} searches in all projects.
\li \uicontrol {Current Project} searches in the currently active
project.
\li \uicontrol {Files in All Project Directories} recursively searches
in all project directories.
\li \uicontrol {Files in File System} recursively searches in
the selected directory.
\li \uicontrol {Current File} searches only from the current
file.
\li \uicontrol {Open Documents} searches in all open files.
\endlist
The figure below shows an example search result for all In \uicontrol {File pattern} and \uicontrol {Exclusion pattern}, specify
occurrences of the search string in the specified directory. file patterns to further restrict the search scope.
\image qtcreator-search-results-matches.webp {Search Results - matches found} The search criteria determine how \QC matches the search
string with text and which results it shows:
For more information about the different search options, see \list
\l {Finding and Replacing}.
\li To consider case, select \uicontrol {Case sensitive}.
\li To search only whole words, select \uicontrol {Whole words only}.
\li To search using \l{QRegularExpression}{regular expressions}, select
\uicontrol {Use regular expressions}.
\endlist
\image qtcreator-search-file-system.webp {Search Results view with search options}
\section1 Viewing Search Results
After you select \uicontrol Search or \uicontrol {Search & Replace}, the view
shows a list of files that have search hits.
\image qtcreator-search-results-matches.webp {Found matches in Search Results}
To show search hits in the editor:
\list
\li To see all occurrences in a file, double-click the file name
in the list.
\li To go to an occurrence, double-click it.
\endlist
To repeat the search after you have made changes to the listed files,
for example, select \uicontrol {Search Again}.
\section1 Search Results View Toolbar
The toolbar contains options for searching again and navigating search
results:
\list
\li To clear the search results, select
\inlineimage icons/clean_pane_small.png (\uicontrol Clear).
\li To expand and collapse the search results, select
\inlineimage icons/qtcreator-expand.png (\uicontrol {Expand All}).
\li To start a new search, select
\inlineimage icons/qtcreator-new-search-icon.png
(\uicontrol {New Search}).
\li If the active project has long paths, select \uicontrol {../}
(\uicontrol {Show Paths in Relation to Active Project}) to show
relative paths.
\li To show the results of earlier searches, select them in
\uicontrol History.
\endlist
\sa {View output} \sa {View output}
\if defined(qtcreator)
\sa {Search}{How To: Search}
\endif
*/ */
/*! /*!

View File

@@ -40,7 +40,7 @@
\li \inlineimage numbers/03.png \li \inlineimage numbers/03.png
\li Run button \li Run button
\li Run the application on the selected target platform. \li Run the application on the selected target platform.
\li \l{Running on Multiple Platforms} \li \l{Run on many platforms}
\row \row
\li \inlineimage numbers/04.png \li \inlineimage numbers/04.png
\li Debug button \li Debug button

View File

@@ -309,10 +309,11 @@
\section2 Working with Branches \section2 Working with Branches
To work with Git branches, select \uicontrol {Branches}. The To work with Git branches, select \uicontrol {Branches}. The
\uicontrol {Git Branches} sidebar view shows the checked out \uicontrol {Git Branches} view shows a list of branches, as well
branch in bold and underlined in the list of branches. as the differences between your local branches and their origin.
The branch you checked out is shown in bold and underlined.
\image qtcreator-vcs-gitbranch.png {Git Branches sidebar view} \image qtcreator-git-branches.webp {Git Branches view}
Old entries and tags are filtered out of the list of branches Old entries and tags are filtered out of the list of branches
by default. To include them, select \inlineimage icons/filtericon.png by default. To include them, select \inlineimage icons/filtericon.png
@@ -332,6 +333,20 @@
To refresh the list of branches, select \inlineimage icons/reload_gray.png To refresh the list of branches, select \inlineimage icons/reload_gray.png
(\uicontrol Refresh). (\uicontrol Refresh).
\section3 Adding Branches
To create a new tracking or non-tracking branch, select
\inlineimage icons/plus.png.
\image qtcreator-git-add-branch.webp {Add Branch dialog}
To check out the branch when creating it, select
\uicontrol {Checkout new branch}.
To track the selected branch, select \uicontrol {Track local branch}.
\section3 Managing Branches
The context menu for a branch has the following functions: The context menu for a branch has the following functions:
\table \table

View File

@@ -110,7 +110,7 @@
You can now build Qt applications in WebAssembly format and run them in You can now build Qt applications in WebAssembly format and run them in
a web browser as described in \l {Building for Multiple Platforms} and a web browser as described in \l {Building for Multiple Platforms} and
\l{Running on Multiple Platforms}. \l{Run on many platforms}.
\sa {Enable and disable plugins} \sa {Enable and disable plugins}
*/ */

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