Merge remote-tracking branch 'origin/5.0'

Change-Id: I18a3caa2d5999570fcd02846403756f9124ab4af
This commit is contained in:
Eike Ziller
2021-06-24 10:59:32 +02:00
51 changed files with 364 additions and 198 deletions

View File

@@ -110,7 +110,7 @@ function(qtc_source_dir varName)
endfunction()
function(add_qtc_library name)
cmake_parse_arguments(_arg "STATIC;OBJECT;SKIP_TRANSLATION;ALLOW_ASCII_CASTS;UNVERSIONED;FEATURE_INFO"
cmake_parse_arguments(_arg "STATIC;OBJECT;SKIP_TRANSLATION;ALLOW_ASCII_CASTS;UNVERSIONED;FEATURE_INFO;SKIP_PCH"
"DESTINATION;COMPONENT;SOURCES_PREFIX;BUILD_DEFAULT"
"CONDITION;DEPENDS;PUBLIC_DEPENDS;DEFINES;PUBLIC_DEFINES;INCLUDES;PUBLIC_INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;EXTRA_TRANSLATIONS;PROPERTIES" ${ARGN}
)
@@ -256,7 +256,10 @@ function(add_qtc_library name)
ARCHIVE_OUTPUT_DIRECTORY "${_output_binary_dir}/${IDE_LIBRARY_ARCHIVE_PATH}"
${_arg_PROPERTIES}
)
if (NOT _arg_SKIP_PCH)
enable_pch(${name})
endif()
if (WIN32 AND library_type STREQUAL "SHARED" AND NOT _arg_UNVERSIONED)
# Match qmake naming scheme e.g. Library4.dll
@@ -313,7 +316,7 @@ endfunction(add_qtc_library)
function(add_qtc_plugin target_name)
cmake_parse_arguments(_arg
"SKIP_DEBUG_CMAKE_FILE_CHECK;SKIP_INSTALL;INTERNAL_ONLY;SKIP_TRANSLATION;EXPORT"
"SKIP_DEBUG_CMAKE_FILE_CHECK;SKIP_INSTALL;INTERNAL_ONLY;SKIP_TRANSLATION;EXPORT;SKIP_PCH"
"VERSION;COMPAT_VERSION;PLUGIN_JSON_IN;PLUGIN_PATH;PLUGIN_NAME;OUTPUT_NAME;BUILD_DEFAULT"
"CONDITION;DEPENDS;PUBLIC_DEPENDS;DEFINES;PUBLIC_DEFINES;INCLUDES;PUBLIC_INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;EXTRA_TRANSLATIONS;PLUGIN_DEPENDS;PLUGIN_RECOMMENDS;PLUGIN_TEST_DEPENDS;PROPERTIES"
${ARGN}
@@ -522,7 +525,9 @@ function(add_qtc_plugin target_name)
IMPORT_PREFIX ""
)
endif()
if (NOT _arg_SKIP_PCH)
enable_pch(${target_name})
endif()
if (NOT _arg_SKIP_INSTALL)
if (_arg_EXPORT)
@@ -597,7 +602,7 @@ function(extend_qtc_test target_name)
endfunction()
function(add_qtc_executable name)
cmake_parse_arguments(_arg "SKIP_INSTALL;SKIP_TRANSLATION;ALLOW_ASCII_CASTS"
cmake_parse_arguments(_arg "SKIP_INSTALL;SKIP_TRANSLATION;ALLOW_ASCII_CASTS;SKIP_PCH"
"DESTINATION;COMPONENT;BUILD_DEFAULT"
"CONDITION;DEPENDS;DEFINES;INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;EXTRA_TRANSLATIONS;PROPERTIES" ${ARGN})
@@ -698,7 +703,9 @@ function(add_qtc_executable name)
VISIBILITY_INLINES_HIDDEN ON
${_arg_PROPERTIES}
)
if (NOT _arg_SKIP_PCH)
enable_pch(${name})
endif()
if (NOT _arg_SKIP_INSTALL)
unset(COMPONENT_OPTION)
@@ -785,7 +792,7 @@ function(extend_qtc_executable name)
endfunction()
function(add_qtc_test name)
cmake_parse_arguments(_arg "GTEST" "TIMEOUT" "DEFINES;DEPENDS;INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC" ${ARGN})
cmake_parse_arguments(_arg "GTEST" "TIMEOUT" "DEFINES;DEPENDS;INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;SKIP_PCH" ${ARGN})
if ($_arg_UNPARSED_ARGUMENTS)
message(FATAL_ERROR "add_qtc_test had unparsed arguments!")
@@ -837,7 +844,9 @@ function(add_qtc_test name)
BUILD_RPATH "${_RPATH_BASE}/${_RPATH}"
INSTALL_RPATH "${_RPATH_BASE}/${_RPATH}"
)
if (NOT _arg_SKIP_PCH)
enable_pch(${name})
endif()
if (NOT _arg_GTEST)
add_test(NAME ${name} COMMAND ${name})

View File

@@ -125,6 +125,17 @@ function(qtc_handle_sccache_support)
endif()
endfunction()
function(qtc_enable_release_for_debug_configuration)
if (MSVC)
string(REPLACE "/Od" "/O2" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
string(REPLACE "/Ob0" "/Ob1" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
string(REPLACE "/RTC1" "" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
else()
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -O2")
endif()
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}" PARENT_SCOPE)
endfunction()
function(append_extra_translations target_name)
if(NOT ARGN)
return()

View File

@@ -1510,7 +1510,7 @@
contents of the pane to debugger-related questions to the \QC
mailing list (qt-creator@qt-project.org) or paste them to a
\l{Pasting and Fetching Code Snippets}{code pasting service} before
asking questions in the IRC (on the #qt-creator channel at FreeNode).
asking questions in the IRC (on the #qt-creator channel at Libera.Chat).
\endlist

View File

@@ -26,7 +26,7 @@
/*!
\page creator-telemetry.html
\if defined(qtdesignstudio)
\previouspage creator-editor-external.html
\previouspage creator-quick-ui-forms.html
\else
\previouspage creator-task-lists.html
\endif

View File

@@ -30,9 +30,9 @@
// **********************************************************************
/*!
\previouspage creator-ui-best-practices.html
\previouspage adding-plugins.html
\page creator-usability.html
\nextpage studio-qtquick-best-practices.html
\nextpage creator-coding.html
\title Optimizing Applications for Mobile Devices

View File

@@ -46,7 +46,7 @@
\list
\li \l {Previewing}
\li \l {Validating with Target Hardware}
You can use the QML live preview to preview a QML file or an
entire Qt Quick application on the desktop, as well as on

View File

@@ -155,15 +155,18 @@
\li \l{Scalable Layouts}
\li \l{Using Custom Fonts}
\li \l{Annotating Designs}
\li \l{Loading Placeholder Data}
\li \l{UI Files}
\endlist
\li \l {Adding Dynamics}
\li \l{Prototyping}
\list
\li \l{Creating Animations}
\li \l{Creating UI Logic}
\li \l{Simulating Complex Experiences}
\list
\li \l{Editing Easing Curves}
\li \l{Loading Placeholder Data}
\li \l{Using QML Modules with Plugins}
\endlist
\li \l {Dynamic Behaviors}
\list
\li \l{Adding Connections}
\list
\li \l{Connecting Components to Signals}
@@ -173,44 +176,29 @@
\endlist
\li \l {Adding States}
\endlist
\li \l{Editing 3D Scenes}
\list
\li \l {Exporting 3D Assets}
\list
\li \l{Exporting from Blender}{Blender}
\li \l{Exporting from Maya}{Maya}
\endlist
\li \l{Importing 3D Assets}
\li \l{Adding 3D Views}
\li \l{Using 3D Components}
\list
\li \l{Setting Group Properties}
\li \l{Adding 3D Models}
\li \l{Using Materials and Shaders}
\li \l{Attaching Textures to Materials}
\li \l{Using 3D Materials}
\li \l{Applying 3D Effects}
\li \l{Using Custom Shaders}
\li \l{Creating Custom Effects and Materials}
\li \l{Using Lights}
\li \l{Using Scene Camera}
\li \l{Setting Scene Environment}
\li \l{Exporting Components}
\endlist
\li \l{Motion Design}
\list
\li \l{Introduction to Animation Techniques}
\li \l{Creating Animations}
\li \l{Editing Easing Curves}
\endlist
\li \l {Browsing ISO 7000 Icons}
\li \l {Using QML Modules with Plugins}
\li \l {Converting UI Projects to Applications}
\li \l {Exporting Components}
\endlist
\li \l{Developing Widget Based Applications}
\list
\li \l{Adding Qt Designer Plugins}
\endlist
\li \l {Best Practices}
\list
\li \l{Optimizing Applications for Mobile Devices}
\endlist
\endlist
\li \l{Coding}
\list
\li \l{Writing Code}
@@ -247,7 +235,7 @@
\endlist
\li \l{Building and Running}
\list
\li \l{Previewing}
\li \l{Validating with Target Hardware}
\list
\li \l{Previewing on Desktop}
\li \l{Previewing on Devices}

View File

@@ -96,7 +96,7 @@
\row
\li \b {\l{Building and Running}}
\list
\li \l{Previewing}
\li \l{Validating with Target Hardware}
\li \l{Building for Multiple Platforms}
\li \l{Running on Multiple Platforms}
\li \l{Deploying to Devices}

View File

@@ -49,17 +49,26 @@
\li \l {Wireframing}
Qt Quick enables you to build UIs around the behavior of
\e components and how they connect with one another. You
create components using Qt Quick and QML types that are
available in the Design mode, manage their relationships,
and specify their properties.
Plan your UI properly. Know what elements, such as screens,
components, and states, you need. Create a descriptive wireframe
and acquire a detailed UI specification before you start to make
the process of creating the UI more efficient.
\li \l {Adding Dynamics}
\li \l {Prototyping}
You can animate the properties of UI components and create
connections between them to enable them to communicate with
each other.
After your UI wireframe has been approved, you can turn it into
an interactive prototype to ensure that you and the developers
share a common vision about the UI appearance and functionality.
\li \l{Motion Design}
After the wireframing and prototyping phases, you can use the
supported motion design techniques to fine-tune your UI for
production. You can use different animation techniques for
different purposes. \QC supports common motion design techniques,
such as timeline and keyframe based animation and easing curves,
as well as screen-to-screen or state-to-state application flows
and data-driven UI logic animation.
\endlist

View File

@@ -24,7 +24,7 @@
****************************************************************************/
/*!
\previouspage quick-property-bindings.html
\previouspage quick-dynamic-properties.html
\page quick-connections-backend.html
\nextpage quick-states.html

View File

@@ -26,7 +26,7 @@
/*!
\page qtquick-iso-icon-browser.html
\previouspage studio-3d-scene-environment.html
\nextpage creator-qml-modules-with-plugins.html
\nextpage quick-converting-ui-projects.html
\title Browsing ISO 7000 Icons

View File

@@ -39,9 +39,10 @@
\image qmldesigner-states-when-condition.png
If you add animation to the states, you can \l{Previewing}{preview}
or \l{Running on Multiple Platforms}{run} the application to test
the animation.
If you add animation to the states, you can
\l{Validating with Target Hardware}{preview}
or \l{Running on Multiple Platforms}{run}
the application to test the animation.
//! [scxml state machines]
*/

View File

@@ -27,7 +27,7 @@
\previouspage creator-live-preview-devices.html
\page qt-design-viewer.html
\if defined(qtdesignstudio)
\nextpage studio-advanced.html
\nextpage studio-exporting-and-importing.html
\else
\nextpage creator-building-targets.html
\endif

View File

@@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Copyright (C) 2021 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Design Studio documentation.
@@ -25,16 +25,19 @@
/*!
\page studio-simulation-overview.html
\previouspage creator-editor-options-text.html
\previouspage qtquick-creating-ui-logic.html
\nextpage qtquick-placeholder-data.html
\title Simulating Data Input
\title Simulating Complex Experiences
\QDS enables you to connect UIs to different forms of data from various
sources, such as QML-based data models, JavaScript files, and backend
services. You can also connect your UI to Simulink to load live data from a
services.
\if definded(qtdesignstudio)
You can also connect your UI to Simulink to load live data from a
Simulink simulation.
\endif
\list
\li \l{Loading Placeholder Data}
@@ -43,6 +46,7 @@
you can test grid, list, or path views, even though you don't
have access to real data.
\if defined(qtdesignstudio)
\li \l{Simulating Application Logic}
You can use JavaScript to generate mock data for your UI.
@@ -52,6 +56,7 @@
Use the Simulink connector to connect a Simulink Simulation Model to
your UI. Simulink is a MATLAB-based graphical programming environment
for modeling, simulating, and analyzing multi-domain dynamic systems.
\endif
\li \l{Using QML Modules with Plugins}

View File

@@ -25,22 +25,16 @@
/*!
\page qtquick-adding-dynamics.html
\previouspage creator-quick-ui-forms.html
\nextpage studio-timeline.html
\previouspage creator-qml-modules-with-plugins.html
\nextpage qmldesigner-connections.html
\title Adding Dynamics
\title Dynamic Behaviors
You can animate the properties of UI components and create connections
between them to enable them to communicate with each other.
Create connections between components to enable them to communicate with
each other. The connections can be triggered by signals that are emitted
when the values of other components or the UI state change.
\list
\li \l {Creating Animations}
You can use a timeline and keyframe based editor in the
\uicontrol Timeline view to animate the properties of UI
components. Animating properties enables their values to
move through intermediate values at specified keyframes
instead of immediately changing to the target value.
\li \l {Adding Connections}
You can create connections between the UI components and

View File

@@ -202,7 +202,7 @@
decreased from the backend, it moves the needle animation from one
end of the timeline to the other.
For more information, see \l{Simulating Data Input}.
For more information, see \l{Simulating Complex Experiences}.
\section2 Programmatic Animation

View File

@@ -27,10 +27,11 @@
\page qtquick-annotations.html
\if defined(qtdesignstudio)
\previouspage qtquick-positioning.html
\nextpage qtquick-prototyping.html
\else
\previouspage qtquick-fonts.html
\nextpage qtquick-ui-forms.html
\endif
\nextpage qtquick-placeholder-data.html
\title Annotating Designs

View File

@@ -90,10 +90,10 @@
instead of duplicating them, so the components do not need to be
processed as completely new component types. This reduces loading
and compilation time as well as the size of the binary.
\li Any content that is data-driven should be
\l {Using UI Files}{exported as a public property} of the
relevant component. For example, a speedometer should have an \c int
or \c real property for speed to which the UI is bound.
\li Any content that is data-driven should be exported as a public
property (alias property) of the relevant component. For example,
a speedometer should have an \c int or \c real property for speed
to which the UI is bound.
\li Separate UI from the application logic. Designers should work with
the \l{UI Files}{UI files} (.ui.qml), while developers should work
on the corresponding implementation files (.qml) to define their

View File

@@ -24,8 +24,8 @@
****************************************************************************/
/*!
\previouspage qtquick-editing-easing-curves.html
\page qmldesigner-connections.html
\previouspage qtquick-adding-dynamics.html
\nextpage quick-signals.html
\title Adding Connections

View File

@@ -188,7 +188,7 @@
or the entire UI. The changes you make to the UI are instantly
visible to you in the preview.
\li \key Alt+P (\key Opt+P on \macos)
\li \l{Previewing}
\li \l{Validating with Target Hardware}
\row
\li Preview size
\li Displays the size of the preview dialog as a percentage. You can

View File

@@ -25,13 +25,8 @@
/*!
\page creator-exporting-qml.html
\if defined(qtdesignstudio)
\previouspage studio-importing-3d.html
\nextpage quick-uis.html
\else
\previouspage quick-converting-ui-projects.html
\nextpage creator-using-qt-designer.html
\endif
\nextpage qtquick-motion-design.html
\title Exporting Components

View File

@@ -24,9 +24,14 @@
****************************************************************************/
/*!
\previouspage qtquick-positioning.html
\page qtquick-fonts.html
\if defined{qtdesignstudio}
\previouspage studio-importing-2d.html
\nextpage studio-importing-3d.html
\else
\previouspage qtquick-positioning.html
\nextpage qtquick-annotations.html
\endif
\title Using Custom Fonts

View File

@@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Copyright (C) 2021 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Creator documentation.
@@ -26,11 +26,12 @@
/*!
\page quick-converting-ui-projects.html
\if defined(qtdesignstudio)
\previouspage studio-importing-3d.html
\previouspage creator-vcs-git.html
\nextpage creator-editor-external.html
\else
\previouspage creator-qml-modules-with-plugins.html
\previouspage qtquick-iso-icon-browser.html
\nextpage creator-using-qt-designer.html
\endif
\nextpage creator-exporting-qml.html
\title Converting UI Projects to Applications
@@ -66,18 +67,19 @@
Then you can use the \l QQuickView class in the main C++ source file to
show the main QML file when the application starts.
The \e {Qt Quick Designer Components} module is delivered with the
standalone \QDS installation. If you use Qt Quick Studio Components
or Effects from the module in a project that you want to edit in \QC,
The \e {Qt Quick Designer Components} module is installed when you
install \QDS. If you use Qt Quick Studio Components or Effects
from the module in a project that you want to edit in Qt Creator,
you have to build the module and install it to your Qt to be able to
build your project.
build your project. For more information, see
\l{Adding Qt Quick Designer Components to Qt Installations}.
The \l{Qt Quick Timeline} module is delivered with the standalone \QDS
installation package and with Qt 5.14, and later. If you install \QDS
using the Qt Installation Tool or use \QC, remember to also select the
Qt Quick Timeline module for installation. If your Qt is older than 5.14,
you must build the Qt Quick Timeline module and install it to your Qt to
be able to build your project.
The \l{Qt Quick Timeline} module is installed when you install \QDS.
If you only install Qt Creator and Qt, remember to also select the
Qt Quick Timeline module for installation. If your Qt is older than
5.14, you must build the Qt Quick Timeline module and install it to
your Qt to be able to build your project. For more information, see
\l{Adding Qt Quick Timeline Module to Qt Installations}.
\section1 Converting Projects

View File

@@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Copyright (C) 2021 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Design Studio documentation.
@@ -24,17 +24,13 @@
****************************************************************************/
/*!
\if defined(qtdesignstudio)
\previouspage studio-3d-camera.html
\else
\previouspage creator-building-running.html
\endif
\page creator-live-preview.html
\previouspage quick-states.html
\nextpage creator-live-preview-desktop.html
\title Previewing
\title Validating with Target Hardware
You can use the QML live preview to preview a QML file or the entire
You can use the live preview feature to preview a UI file or the entire
UI 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.

View File

@@ -33,11 +33,10 @@
\page creator-qml-modules-with-plugins.html
\if defined(qtdesignstudio)
\previouspage studio-simulink.html
\nextpage studio-debugging.html
\else
\previouspage qtquick-iso-icon-browser.html
\nextpage quick-converting-ui-projects.html
\previouspage qtquick-placeholder-data.html
\endif
\nextpage qtquick-adding-dynamics.html
\title Using QML Modules with Plugins

View File

@@ -25,6 +25,7 @@
/*!
\page qtquick-motion-design.html
\previouspage creator-exporting-qml.html
\nextpage quick-animation-overview.html
\title Motion Design
@@ -39,6 +40,14 @@
Learn more about which animation techniques are supported by \QDS
and the use cases they are most suitable for.
\li \l {Creating Animations}
You can use a timeline and keyframe based editor in the
\uicontrol Timeline view to animate the properties of UI
components. Animating properties enables their values to
move through intermediate values at specified keyframes
instead of immediately changing to the target value.
\li Production Quality (TODO)
After the wireframing and prototyping phases, you can use the

View File

@@ -25,12 +25,12 @@
/*!
\page qtquick-placeholder-data.html
\if defined(qtdesignstudio)
\previouspage studio-simulation-overview.html
\if defined(qtdesignstudio)
\nextpage studio-javascript.html
\else
\previouspage qtquick-annotations.html
\nextpage creator-quick-ui-forms.html
\nextpage creator-qml-modules-with-plugins.html
\endif
\title Loading Placeholder Data

View File

@@ -0,0 +1,109 @@
/****************************************************************************
**
** Copyright (C) 2021 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Design Studio documentation.
**
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU Free Documentation License Usage
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of
** this file. Please review the following information to ensure
** the GNU Free Documentation License version 1.3 requirements
** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
**
****************************************************************************/
/*!
\page qtquick-prototyping.html
\if defined(qtdesignstudio)
\previouspage qtquick-annotations.html
\else
\previouspage creator-quick-ui-forms.html
\endif
\nextpage qtquick-creating-ui-logic.html
\title Prototyping
\table
\row
\li \image studio-3d-scenes.png
\li After your UI wireframe has been approved, you can turn it
into an interactive prototype to ensure that you and the
developers share a common vision about the UI appearance
and functionality. You can create the UI logic to simulate
complex experiences and add dynamic behavior. You can then
validate your design on desktop, embedded, and mobile device
platforms. In the prototyping phase, you can also import
assets from 2D and 3D content creation tools to bring your
prototype closer to the final UI.
\endtable
\list
\li \l {Creating UI Logic}
You can turn your wireframe into an interactive prototype by
adding the logic that enables your components to apply actions
or react to mock data from backend systems to simulate complex
experiences.
\li \l{Simulating Complex Experiences}
You can connect UIs to different forms of data from various
sources, such as QML-based data models, JavaScript files, and
backend services.
\if defined(qtdesignstudio)
You can also connect your UI to Simulink to load live data from
a Simulink simulation.
\endif
\li \l {Dynamic Behaviors}
You can create connections between components to enable them to
communicate with each other. The connections can be triggered by
changes in component property values or in UI states.
\if defined(qtdesignstudio)
\li \l {Validating with Target Hardware}
You can use the live preview feature to preview a UI file or the
entire UI 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.
\li \l {Asset Creation with Other Tools}
Describes how to export designs containing 2D and 3D assets into
files that you can import to projects in \QDS, how to import them,
and how to export them from \QDS back to the metadata format.
\else
\li \l {Exporting 3D Assets}
You can export assets from 3D graphics applications into several
widely-used formats, such as .blend, .dae, .fbx, .glb, .gltf, .obj,
.uia, or .uip.
\li \l {Importing 3D Assets}
You can import exported assets into \QC. For a list of formats
supported by each \l{Qt Quick 3D} version, see the module
documentation.
\li \l {Exporting Components}
You can export components contained in \l{UI Files}{UI files}
(.ui.qml) to JSON metadata format and PNG assets.
\endif
\endlist
*/

View File

@@ -26,10 +26,10 @@
/*!
\page quick-states.html
\if defined(qtdesignstudio)
\previouspage quick-property-bindings.html
\previouspage quick-dynamic-properties.html
\nextpage creator-live-preview.html
\else
\previouspage qtbridge-figma-using.html
\previouspage quick-connections-backend.html
\nextpage exporting-3d-assets.html
\endif

View File

@@ -33,10 +33,11 @@
\page creator-quick-ui-forms.html
\if defined(qtdesignstudio)
\previouspage qtquick-annotations.html
\nextpage creator-telemetry.html
\else
\previouspage qtquick-placeholder-data.html
\previouspage qtquick-annotations.html
\nextpage qtquick-prototyping.html
\endif
\nextpage qtquick-adding-dynamics.html
\title UI Files

View File

@@ -216,7 +216,8 @@
100. When all our progress bar instances have been animated, we'll continue
by specifying easing curves for them.
For more information about previewing UIs, see \l {Previewing}.
For more information about previewing UIs, see
\l {Validating with Target Hardware}.
\section1 Specifying Easing Curves

View File

@@ -24,7 +24,7 @@
****************************************************************************/
/*!
\previouspage studio-getting-started.html
\previouspage studio-exporting-and-importing.html
\page qtbridge-overview.html
\nextpage qtbridge-ai.html

View File

@@ -43,15 +43,13 @@
it mainly from the keyboard.
\list
\li \l{Supported Platforms}
You can install and run \QC on several operating systems to design
UIs for multiple desktop, embedded, and mobile device platforms.
\li \l{UI Files}
Some of the wizards create projects that contain UI files
(.ui.qml). You should always edit UI files in \l{Form Editor}
and \l Properties, to avoid breaking the code.
\li \l{Coding}
You can use the code editor in the \uicontrol {Text Editor} view or
@@ -59,12 +57,6 @@
the QML language as code, not just as plain text. This enables it
to provide you with useful features, such as semantic highlighting,
checking code syntax, code completion, and refactoring actions.
\li \l{Simulating Data Input}
\QDS enables you to connect UIs to different forms of data from various
sources, such as QML-based data models, JavaScript files, and backend
services. You can also connect your UI to Simulink to load live data from a
Simulink simulation.
\li \l{Debugging and Profiling}
\QDS comes with a JavaScript debugger. In the Debug mode, you

View File

@@ -24,11 +24,11 @@
****************************************************************************/
/*!
\previouspage studio-getting-started.html
\previouspage qt-design-viewer.html
\page studio-exporting-and-importing.html
\nextpage qtbridge-overview.html
\title Exporting and Importing
\title Asset Creation with Other Tools
Typically, you as a designer would design a UI using imaging and design
tools, such as Adobe Photoshop, Sketch, Figma, Blender, or Maya, and then
@@ -66,8 +66,8 @@
\li Animate your design in \l {Transition Editor} or \l Timeline
and \l {Curve Editor}.
\li Create interactions in \l States and \l {Connection View}.
\li \l{Previewing}{Preview} your design in real time, on the desktop
or on a mobile or an embedded device.
\li \l{Validating with Target Hardware}{Preview} your design in
real time, on the desktop or on a mobile or an embedded device.
\li Optionally, export your components back into the metadata format
that you can import back into the design tool by using \QB. You
can continue to iterate your design this way until it is ready.

View File

@@ -43,8 +43,10 @@
Contains answers to some frequently asked questions about \QDS.
\li \l{Supported Platforms}
You can install and run \QC on several operating systems to design
UIs for multiple desktop, embedded, and mobile device platforms.
\endlist
*/

View File

@@ -26,7 +26,7 @@
/*!
\previouspage studio-importing-designs.html
\page studio-importing-2d.html
\nextpage studio-importing-3d.html
\nextpage qtquick-fonts.html
\title Importing 2D Assets

View File

@@ -60,7 +60,7 @@
Because the projects do not contain any C++ code, you do not need
to build them. To test how well your designs work, you can preview the
UIs on the desktop or embedded Linux devices. For more
information, see \l{Previewing}.
information, see \l{Validating with Target Hardware}.
\image studio-project-wizards.png "A list of project wizards"

View File

@@ -111,22 +111,18 @@
\li \l{Scalable Layouts}
\li \l{Annotating Designs}
\endlist
\li \l{Prototyping} (NEW)
\li \l{Prototyping}
\list
\li Creating UI Logic
\li \l{Simulating Data Input}{Simulating Complex Experiences}
\li \l{Creating UI Logic}
\li \l{Simulating Complex Experiences}
\list
\li \l{Loading Placeholder Data}
\li \l{Simulating Application Logic}
\li \l{Simulating Dynamic Systems}
\li \l{Using QML Modules with Plugins}
\endlist
\li \l{Adding Dynamics}{Dynamic Behaviors}
\li \l{Dynamic Behaviors}
\list
\li \l{Creating Animations}
\list
\li \l{Editing Easing Curves}
\endlist
\li \l{Adding Connections}
\list
\li\l{Connecting Components to Signals}
@@ -135,13 +131,13 @@
\endlist
\li \l{Adding States}
\endlist
\li \l{Previewing}{Validating with Target Hardware}
\li \l{Validating with Target Hardware}
\list
\li \l{Previewing on Desktop}
\li \l{Previewing on Devices}
\li \l{Previewing in Browsers}
\endlist
\li \l {Exporting and Importing}{Asset Creation with Other Tools}
\li \l {Asset Creation with Other Tools}
\list
\li \l{Exporting from Design Tools}
\li \l{Exporting 2D Assets} (NEW)
@@ -178,12 +174,13 @@
\li \l{Importing 3D Assets}
\endlist
\li \l{Exporting Components}
\li \l{To and from Qt Creator} (designer-developer workflow)
\endlist
\endlist
\li \l{Motion Design}
\list
\li \l{Introduction to Animation Techniques}
\li \l{Creating Animations}
\li \l{Editing Easing Curves}
\li \l{Production Quality} (NEW)
\list
\li \l{Detailed Motion Design} (NEW)

View File

@@ -61,7 +61,7 @@
\row
\li \l{Wireframing}
\li \l{Prototyping}
\li \l{Exporting and Importing}
\li \l{Asset Creation with Other Tools}
\li \l{Implementing Applications}
\endtable
*/

View File

@@ -63,19 +63,21 @@
\li \l{Scalable Layouts}
\li \l{Annotating Designs}
\endlist
\li \b {\l{Prototyping}} (NEW)
\li \b {\l{Prototyping}}
\list
\li Creating UI Logic
\li \l{Simulating Data Input}{Simulating Complex Experiences}
\li \l{Adding Dynamics}{Dynamic Behaviors}
\li \l{Previewing}{Validating with Target Hardware}
\li \l{Exporting and Importing}{Asset Creation with Other Tools}
\li \l{Creating UI Logic}
\li \l{Simulating Complex Experiences}
\li \l{Dynamic Behaviors}
\li \l{Validating with Target Hardware}
\li \l{Asset Creation with Other Tools}
\endlist
\li \b {\l{Motion Design}}
\list
\li \l{Introduction to Animation Techniques}
\li \l{Creating Animations}
\li \l{Editing Easing Curves}
\li \l{Production Quality} (NEW)
\li \l{Importing for Content Creation Tools}
\li \l{Importing from Content Creation Tools}
\li \l{Optimizing for Target Hardware} (NEW)
\endlist
\row
@@ -112,7 +114,7 @@
\row
\li {4,1} \note To report bugs and suggestions to the
\l{https://bugreports.qt.io/}{Qt Project Bug Tracker},
select \uicontrol {Help > Report Bug} in QDS.
select \uicontrol {Help > Report Bug} in \QDS.
To copy and paste detailed information about your system to the
bug report, select \uicontrol Help >
\uicontrol {System Information}.

View File

@@ -29,7 +29,7 @@
/*!
\page exporting-3d-assets.html
\if defined(qtdesignstudio)
\previouspage
\previouspage figmaqtbridge.html
\else
\previouspage quick-states.html
\endif
@@ -37,6 +37,17 @@
\title Exporting 3D Assets
\if defined(qtcreator)
\table
\row
\li \inlineimage blender-logo.png
\li \inlineimage maya-logo.png
\row
\li \l{Exporting from Blender}{Blender}
\li \l{Exporting from Maya}{Maya}
\endtable
\endif
You can import files you created using 3D graphics applications and exported
to several widely-used formats, such as .blend, .dae, .fbx, .glb, .gltf,
.obj, .uia, or .uip. For a list of formats supported by each \l{Qt Quick 3D}

View File

@@ -28,7 +28,12 @@
/*!
\page exporting-from-qt3ds.html
\previouspage exporting-from-maya.html
\if defined(qtdesignstudio)
\nextpage studio-importing-designs.html
\else
\nextpage studio-importing-3d.html
\endif
\title Exporting from Qt 3D Studio
Use the following guidelines to achieve the best results when converting

View File

@@ -26,12 +26,11 @@
/*!
\page studio-importing-3d.html
\if defined(qtdesignstudio)
\previouspage studio-importing-2d.html
\nextpage creator-exporting-qml.html
\previouspage qtquick-fonts.html
\else
\previouspage exporting-from-maya.html
\nextpage studio-3d-view.html
\endif
\nextpage creator-exporting-qml.html
\title Importing 3D Assets

View File

@@ -41,5 +41,14 @@ add_qtc_library(3rd_cplusplus OBJECT
Type.cpp Type.h
TypeVisitor.cpp TypeVisitor.h
cppassert.h
SKIP_PCH
PROPERTIES POSITION_INDEPENDENT_CODE ON
)
if(TARGET 3rd_cplusplus)
qtc_enable_release_for_debug_configuration()
if (BUILD_WITH_PCH)
target_precompile_headers(3rd_cplusplus PRIVATE
"${QtCreator_SOURCE_DIR}/src/shared/qtcreator_gui_pch.h")
endif()
endif()

View File

@@ -40,4 +40,13 @@ add_qtc_library(CPlusPlus
pp-engine.h pp-scanner.cpp
pp-scanner.h
pp.h
SKIP_PCH
)
if(TARGET CPlusPlus)
qtc_enable_release_for_debug_configuration()
if (BUILD_WITH_PCH)
target_precompile_headers(CPlusPlus PRIVATE
"${QtCreator_SOURCE_DIR}/src/shared/qtcreator_gui_pch.h")
endif()
endif()

View File

@@ -1254,7 +1254,7 @@ void MainWindow::contact()
QMessageBox dlg(QMessageBox::Information, tr("Contact"),
tr("<p>Qt Creator developers can be reached at the Qt Creator mailing list:</p>"
"%1"
"<p>or the #qt-creator channel on FreeNode IRC:</p>"
"<p>or the #qt-creator channel on Libera.Chat IRC:</p>"
"%2"
"<p>Our bug tracker is located at %3.</p>"
"<p>Please use %4 for bigger chunks of text.</p>")
@@ -1263,8 +1263,8 @@ void MainWindow::contact()
"mailto:qt-creator@qt-project.org"
"</a></p>")
.arg("<p>&nbsp;&nbsp;&nbsp;&nbsp;"
"<a href=\"https://irc.libera.chat\">"
"irc://irc.libera.chat/qt-creator"
"<a href=\"https://web.libera.chat/#qt-creator\">"
"https://web.libera.chat/#qt-creator"
"</a></p>")
.arg("<a href=\"https://bugreports.qt.io/projects/QTCREATORBUG\">"
"https://bugreports.qt.io"

View File

@@ -332,8 +332,9 @@ void ItemLibraryWidget::handleAddImport(int index)
+ import.toImportString());
}
m_model->changeImports({import}, {});
QmlDesignerPlugin::instance()->currentDesignDocument()->updateSubcomponentManagerImport(import);
auto document = QmlDesignerPlugin::instance()->currentDesignDocument();
document->documentModel()->changeImports({import}, {});
document->updateSubcomponentManagerImport(import);
m_stackedWidget->setCurrentIndex(0); // switch to the Components view after import is added
updateSearch();

View File

@@ -1189,7 +1189,9 @@ void BaseQtVersion::ensureMkSpecParsed() const
ProFileCacheManager::instance()->incRefCount();
QMakeParser parser(ProFileCacheManager::instance()->cache(), &vfs, &msgHandler);
ProFileEvaluator evaluator(&option, &parser, &vfs, &msgHandler);
evaluator.loadNamedSpec(mkspecPath().toString(), false);
// FIXME: toString() would be better, but the pro parser Q_ASSERTs on anything
// non-local.
evaluator.loadNamedSpec(mkspecPath().path(), false);
parseMkSpec(&evaluator);

View File

@@ -258,6 +258,7 @@ void ResourceEditorPlugin::extensionsInitialized()
QTC_ASSERT(pn, continue);
const Utils::FilePath path = file->filePath();
auto topLevel = std::make_unique<ResourceTopLevelNode>(path, pn->filePath());
topLevel->setEnabled(file->isEnabled());
topLevel->setIsGenerated(file->isGenerated());
pn->replaceSubtree(file, std::move(topLevel));
}

View File

@@ -57,6 +57,7 @@ void MainWindow::test()
qDebug() << "Async: " << cmd << args;
process.setStdOutCallback([this](const QString &s) { append(s); });
process.setStdErrCallback([this](const QString &s) { append(s); });
process.run({cmd, args});
process.setCommand({cmd, args});
process.runBlocking();
qDebug() << process;
}