Merge remote-tracking branch 'origin/4.12'

Conflicts:
	src/plugins/baremetal/debugservers/uvsc/uvtargetdevicemodel.cpp

Change-Id: I4a90920e52dbbe9eb46aef3437ee3c5a6e7b31c6
This commit is contained in:
Eike Ziller
2020-03-16 08:30:33 +01:00
181 changed files with 1729 additions and 856 deletions

View File

@@ -35,10 +35,15 @@ Editing
* Added `Go to Last Edit`
* Added option for default line terminator style (QTCREATORBUG-3590)
* Improved behavior when splitting would hide text cursor
* Fixed that wizards ignored default file encoding
* Fixed that only restricted number of sizes were allowed for font size (QTCREATORBUG-22536)
* Fixed completion after undo (QTCREATORBUG-15038)
### C++
* Fixed issue with Clang and precompiled headers (QTCREATORBUG-22897)
### Language Client
* Added support for Markdown in tooltips
@@ -49,6 +54,7 @@ Editing
### QML
* Updated to Qt 5.15 parser (QTCREATORBUG-23591)
* Improved support for multiple imports into same namespace (QTCREATORBUG-15684)
* Added scanning of `app.qmltypes` and `lib.qmltypes` for type information
@@ -165,7 +171,7 @@ Version Control Systems
* Added option to start interactive rebase from log view (QTCREATORBUG-11200)
* Added information about upstream status to `Git Branches` view
* Added option to `grep` and `pickaxe` git log (QTCREATORBUG-22512)
* Made references in VCS output view clickable (QTCREATORBUG-16477)
* Made references in VCS output view clickable and added context menu (QTCREATORBUG-16477)
Test Integration
----------------
@@ -181,6 +187,9 @@ Platforms
### Windows
* Improved behavior with regard to MSVC tool chain matching and compatibility of MSVC 2017 and
MSVC 2019 (QTCREATORBUG-23653)
### macOS
* Fixed parsing of Apple Clang specific linker message (QTCREATORBUG-19766)
@@ -191,9 +200,11 @@ Platforms
* Added auto-detection of Java JDK (QTCREATORBUG-23407)
* Added option to automatically download and install required Android tools (QTCREATORBUG-23285)
* Added option to register multiple NDKs (QTCREATORBUG-23286)
* Added automatic selection of correct NDK for Qt version (QTCREATORBUG-23583)
* Added support for Android 11 with API level 30
* Improved examples browser to only show items tagged with `android` (QTBUG-80716)
* Improved manifest editor (QTCREATORBUG-23283)
* Fixed several issues with AVD manager (QTCREATORBUG-23284, QTCREATORBUG-23448)
### iOS
@@ -213,12 +224,14 @@ Platforms
Credits for these changes go to:
--------------------------------
Aleksei German
Alessandro Portale
Alexandru Croitor
Andre Hartmann
Andrey Sobol
André Pönitz
Assam Boudjelthia
BogDan Vatra
Camila San
Christian Kandeler
Christian Stenger
@@ -227,13 +240,16 @@ David Schulz
Denis Shienkov
Dmitry Kovalev
Eike Ziller
Fawzi Mohamed
Federico Guerinoni
Filippo Cucchetto
Halfdan Ingvarsson
Hannes Domani
Henning Gruendl
Igor Sidorov
Jaroslaw Kobus
Jochen Becher
Kai Köhne
Knud Dollereder
Leander Schulten
Leena Miettinen
@@ -260,6 +276,7 @@ Tim Jenssen
Tobias Hunger
Topi Reinio
Ulf Hermann
Vikas Pachdha
Ville Voutilainen
Volodymyr Samokhatko
zarelaky

View File

@@ -3,8 +3,11 @@ description = "$IDE_DISPLAY_NAME Manual"
url = http://doc.qt.io/$IDE_ID
headerdirs =
sourcedirs = ../src
sourcedirs = ../src \
../../qtdesignstudio/src/qtquick3d-editor
imagedirs = ../images \
../../qtdesignstudio/images \
../../../src/libs/qmleditorwidgets/images \
../../../src/libs/utils/images \
../../../src/plugins/android/images \
@@ -16,6 +19,7 @@ imagedirs = ../images \
../../../src/plugins/help/images \
../../../src/plugins/projectexplorer/images \
../../../src/plugins/qmldesigner/components/componentcore/images \
../../../src/plugins/qmldesigner/components/edit3d/images \
../../../src/plugins/qmldesigner/components/formeditor \
../../../src/plugins/qmldesigner/components/navigator \
../../../src/plugins/qmldesigner/components/timelineeditor/images \
@@ -35,12 +39,15 @@ depends += qtwidgets \
qtcmake \
qtcore \
qtqml \
qtqmlmodels \
qtquick \
qmake \
qtdesigner \
qtdoc \
qtgraphicaleffects \
qtgui \
qthelp \
qtquick3d \
qtquickcontrols \
qtquickextras \
qtquicktimeline \

Binary file not shown.

After

Width:  |  Height:  |  Size: 209 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.8 KiB

After

Width:  |  Height:  |  Size: 9.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View File

@@ -32,21 +32,42 @@
\title Managing Workspaces
In the Design and Debug modes, you can arrange a set of \QC
views as a \e workspace on the screen. For a list of views,
select \uicontrol Window > \uicontrol Views.
views as a \e workspace on the screen.
In \QMLD, you can select the \uicontrol {Restore last workspace on startup}
check box to save the current workspace as a \e default workspace when you
exit \QC and to restore it the next time you start \QC.
To detach views:
To manage workspaces, select \uicontrol Window > \uicontrol Workspaces >
\uicontrol Manage.
\list
\li Double-click the title bar of the view.
\li Start dragging the view to another position.
\li Select the \inlineimage icons/detach-group-icon.png
(\uicontrol {Detach Group}) button.
\endlist
You can move detached views or groups of views anywhere on the screen.
To attach views, drag them over the dock area markers until the dock area
where you want to attach the view is highlighted, and then drop them into
the dock area.
\image qtcreator-workspace-attaching-views.png "Attaching views"
To close groups of views, select the \uicontrol {Close Group} button.
To open closed views, select \uicontrol Window > \uicontrol Views.
\section1 Saving Workspaces
The changes you make to a workspace are saved when you exit \QC.
In \QMLD, you can select \uicontrol Window > \uicontrol Workspaces >
\uicontrol Manage > \uicontrol {Restore last workspace on startup}
to restore the current workspace the next time you start \QC.
\image qtcreator-workspace-manager.png "Workspace Manager"
To save a workspace under a new name, select \uicontrol Clone.
To delete the selected workspace, select \uicontrol Delete.
To revert the changes you made to a preset workspace, select
\uicontrol Reset.
To switch between workspaces, select \uicontrol {Switch To}.
@@ -61,4 +82,5 @@
switch to it.
\endlist
To delete the selected workspace, select \uicontrol Delete.
*/

View File

@@ -25,7 +25,7 @@
/*!
\contentspage {Qt Creator}
\contentspage index.html
\page qtcreator-toc.html
\title All Topics
@@ -91,25 +91,55 @@
\list
\li \l {Creating Qt Quick Projects}
\li \l {Editing QML Files in Design Mode}
\li \l {Creating Components}
\li \l {Creating UIs}
\list
\li \l {Creating Buttons}
\li \l {Creating Scalable Buttons and Borders}
\li \l {Creating Components}
\list
\li \l{Creating Buttons}
\li \l{Creating Scalable Buttons and Borders}
\endlist
\li \l{Managing Item Hierarchy}
\li \l{Specifying Item Properties}
\li \l{Using Custom Fonts}
\li \l{Annotating Designs}
\li \l{Qt Quick UI Forms}
\endlist
\li \l {Adding Dynamics}
\list
\li \l{Creating Animations}
\li \l{Adding Connections}
\list
\li \l{Connecting Objects to Signals}
\li \l{Specifying Dynamic Properties}
\li \l{Adding Bindings Between Properties}
\li \l{Managing C++ Backend Objects}
\endlist
\li \l {Adding States}
\li \l {Editing PathView Properties}
\endlist
\li \l {Managing Item Hierarchy}
\li \l {Specifying Item Properties}
\li \l {Creating Animations}
\li \l {Adding Connections}
\list
\li \l{Connecting Objects to Signals}
\li \l{Specifying Dynamic Properties}
\li \l{Adding Bindings Between Properties}
\li \l{Managing C++ Backend Objects}
\endlist
\li \l {Adding States}
\li \l {Editing PathView Properties}
\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{Editing 3D Assets in Design Mode}
\li \l{Working in the 3D Editor}
\li \l{Adding 3D Views}
\li \l{Using 3D Components}
\list
\li \l{Setting Node Properties}
\li \l{Adding Models}
\li \l{Using Materials and Shaders}
\li \l{Attaching Textures to Materials}
\li \l{Using Lights}
\li \l{Using Scene Camera}
\li \l{Setting Scene Environment}
\endlist
\endlist
\li \l {Browsing ISO 7000 Icons}
\li \l {Qt Quick UI Forms}
\li \l {Using QML Modules with Plugins}
\li \l {Converting UI Projects to Applications}
\endlist

View File

@@ -33,40 +33,13 @@
\contentspage index.html
\page creator-visual-editor.html
\if defined(qtdesignstudio)
\previouspage quick-converting-ui-projects.html
\nextpage quick-components.html
\else
\previouspage creator-design-mode.html
\nextpage quick-projects.html
\endif
\title Developing Qt Quick Applications
\if defined(qtdesignstudio)
When you install \QDS, everything you'll need to design UIs
using \l{Qt Quick} and to preview them on the desktop or on Android or
embedded Linux devices is automatically installed and configured correctly
for you.
\endif
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. You can specify values for the \e properties of a
component to change its appearance and behavior. All QML types have a
set of predefined properties, some of which control things that are
visible to users, while others are used behind the scene.
While it is useful to learn the basics of Qt Quick, you can also rely on
\QDS to write the code for you when you drag-and-drop the ready-made
components to the working area and change them to your liking by modifying
their properties in the Design mode. You can always check up details in
the extensive Qt Quick documentation by pressing \key F1.
\list
\if defined(qtcreator)
\li \l {Creating Qt Quick Projects}
You can use wizards to create Qt Quick projects.
@@ -76,87 +49,41 @@
You can use the \uicontrol {Form Editor} or the
\uicontrol {Text Editor} in the Design mode to
develop Qt Quick applications.
\endif
\li \l {Creating Components}
\li \l {Creating UIs}
In addition to your imported artwork, you can use the Design
mode to customize ready-made components or design any custom form
and shape directly as QML types. You can import visual assets in
various formats, such as PNG, JPG, and SVG for use in the
components.
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.
\li \l {Managing Item Hierarchy}
\li \l {Adding Dynamics}
You can manage the items in the current QML file and their
relationships in the \uicontrol Navigator.
You can animate the properties of UI components and create
connections between them to enable them to communicate with
each other.
\li \l {Specifying Item Properties}
\li \l {Editing 3D Scenes}
You can specify values for the properties of a component to change
its appearance and behavior. All QML types have a set of predefined
properties. Some properties, such as position, size, and visibility,
are common to all QML types, whereas others are specific to the QML
type. You can specify properties for your components in the
\uicontrol Properties view.
You can use the 3D editor in the Design mode to edit files you
created using 3D graphics applications and stored in one of the
supported formats. You cannot create 3D models or other assets
in the editor, but you can import the assets you need and work
with them to create scenes and states, as well as the
transitions between them.
\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
the application to enable them to communicate with each other. For
example, how does the appearance of a button change on a mouse click
and which action does the application need to perform in response to
it.
You can also create connections between UI components by
binding their properties together. This way, when the value of a
property changes in a parent component, it can be automatically
changed in all the child components, for example.
\li \l {Adding States}
Qt Quick allows you to declare various UI states that describe
how component properties change from a base state. Therefore,
states can be a useful way of organizing your UI
logic. You can associate transitions with items to define
how their properties will animate when they change due to a state
change.
\endlist
\section1 Related Topics
\list
\if defined(qtdesignstudio)
\li \l {Using Custom Fonts}
You can load custom fonts to \QDS and use them in your designs.
\endif
\li \l {Editing PathView Properties}
You can use a graphical spline editor to specify \l{PathView} paths.
A path view lays out data provided by data models on a \l{Path}.
\li \l {Browsing ISO 7000 Icons}
You can add ISO 7000 icons from a library delivered with \QC to
UIs and change their color.
\li \l{Qt Quick UI Forms}
Some of the wizards create Qt Quick projects that contain UI forms
(.ui.qml files). The forms use a purely declarative subset of the
QML language and you can edit them in the Design mode.
\if defined(qtcreator)
\li \l {Using QML Modules with Plugins}
QML modules may use plugins to expose components defined in C++ to
@@ -171,7 +98,6 @@
interfaces. To use them for application development, you have to
convert them to Qt Quick Application projects that contain .pro,
.cpp, and .qrc files.
\endif
\endlist

View File

@@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Creator documentation.
@@ -26,8 +26,8 @@
/*!
\contentspage index.html
\page qtquick-iso-icon-browser.html
\previouspage qmldesigner-pathview-editor.html
\nextpage creator-quick-ui-forms.html
\previouspage studio-3d-scene-environment.html
\nextpage creator-qml-modules-with-plugins.html
\title Browsing ISO 7000 Icons

View File

@@ -24,7 +24,7 @@
****************************************************************************/
/*!
\contentspage {Qt Creator}
\contentspage index.html
\previouspage creator-live-preview-devices.html
\page qt-design-viewer.html
\if defined(qtdesignstudio)

View File

@@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Design Studio documentation.
@@ -24,9 +24,9 @@
****************************************************************************/
/*!
\contentspage {Qt Design Studio Manual}
\page studio-adding-dynamics.html
\previouspage studio-fonts.html
\contentspage index.html
\page qtquick-adding-dynamics.html
\previouspage qtquick-fonts.html
\nextpage studio-timeline.html
\title Adding Dynamics

View File

@@ -0,0 +1,76 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Creator 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.
**
****************************************************************************/
/*!
\contentspage {Qt Creator Manual}
\page qtquick-annotations.html
\previouspage qtquick-fonts.html
\nextpage creator-quick-ui-forms.html
\title Annotating Designs
You can submit your designs to review or further development as QML files.
You can annotate your designs to provide reviewers or developers with
additional information about them. An annotation consist of an annotation
name and one or several comments. The comments have a title, author, and
comment text.
\image qtquick-annotations.png "Annotations displayed in the Form Editor tab"
Annotations are saved in the end of QML files when you save the file. They
do not affect the QML performance in any way.
To view annotations, select the annotation icon.
To edit annotations, select \uicontrol {Edit Annotation} in the context
menu of the annotation icon.
\section1 Adding Annotations
To add annotations:
\list 1
\li Select the component to annotate in the \uicontrol Navigator
or in the \uicontrol {Form Editor}.
\li In the \uicontrol Properties view, select
\uicontrol {Add Annotation}.
\image qtquick-annotation-editor.png "Annotation Editor"
\li The \uicontrol {Selected Item} field displays the ID of the
component. Enter a name for the annotation in the
\uicontrol {Custom ID} field.
\li In the \uicontrol Title field, enter the text to display in
the tab for this comment.
\li In the \uicontrol Author field, enter the author's name.
\li In the \uicontrol Text field, enter the comment text.
\li Select \uicontrol OK.
\endlist
To add more comments about the component, select the \inlineimage plus.png
(\uicontrol {Add Comment}) button.
To remove the active comment, select the \inlineimage minus.png
(\uicontrol {Remove Comment}) button. To remove the annotation, right-click
the annotation icon, and then select \uicontrol {Remove Annotation}.
*/

View File

@@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Creator documentation.
@@ -24,8 +24,8 @@
****************************************************************************/
/*!
\contentspage {Qt Creator Manual}
\previouspage qmldesigner-connections.html
\contentspage index.html
\previouspage quick-signals.html
\page quick-dynamic-properties.html
\nextpage quick-property-bindings.html

View File

@@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Creator documentation.
@@ -25,7 +25,7 @@
/*!
\contentspage index.html
\previouspage quick-states.html
\previouspage studio-timeline.html
\page qmldesigner-connections.html
\nextpage quick-signals.html

View File

@@ -37,7 +37,7 @@
\nextpage {Tutorials}
\else
\previouspage quick-projects.html
\nextpage quick-components.html
\nextpage quick-uis.html
\endif
\title Editing QML Files in Design Mode

View File

@@ -25,10 +25,10 @@
/*!
\contentspage {Qt Design Studio}
\contentspage index.html
\previouspage qtquick-properties.html
\page studio-fonts.html
\nextpage studio-adding-dynamics.html
\page qtquick-fonts.html
\nextpage qtquick-annotations.html
\title Using Custom Fonts

View File

@@ -28,7 +28,7 @@
\page quick-converting-ui-projects.html
\if defined(qtdesignstudio)
\previouspage studio-importing-designs.html
\nextpage studio-prototyping.html
\nextpage quick-uis.html
\else
\previouspage creator-qml-modules-with-plugins.html
\nextpage creator-using-qt-designer.html

View File

@@ -24,7 +24,7 @@
****************************************************************************/
/*!
\contentspage {Qt Creator}
\contentspage index.html
\previouspage creator-live-preview.html
\page creator-live-preview-desktop.html
\nextpage creator-live-preview-devices.html

View File

@@ -24,7 +24,7 @@
****************************************************************************/
/*!
\contentspage {Qt Creator}
\contentspage index.html
\previouspage creator-live-preview-desktop.html
\page creator-live-preview-devices.html
\nextpage qt-design-viewer.html

View File

@@ -24,7 +24,7 @@
****************************************************************************/
/*!
\contentspage {Qt Creator}
\contentspage index.html
\if defined(qtdesignstudio)
\previouspage studio-3d-camera.html
\else

View File

@@ -27,11 +27,7 @@
\contentspage index.html
\page qmldesigner-pathview-editor.html
\previouspage quick-states.html
\if defined(qtdesignstudio)
\nextpage studio-3d.html
\else
\nextpage qtquick-iso-icon-browser.html
\endif
\title Editing PathView Properties

View File

@@ -24,14 +24,10 @@
****************************************************************************/
/*!
\contentspage {Qt Creator Manual}
\contentspage index.html
\page qtquick-properties.html
\previouspage qtquick-navigator.html
\if defined(qtdesignstudio)
\nextpage studio-fonts.html
\else
\nextpage studio-timeline.html
\endif
\nextpage qtquick-fonts.html
\title Specifying Item Properties

View File

@@ -25,11 +25,7 @@
/*!
\contentspage {Qt Design Studio Manual}
\if defined(qtdesignstudio)
\previouspage studio-adding-dynamics.html
\else
\previouspage qtquick-properties.html
\endif
\previouspage qtquick-adding-dynamics.html
\page studio-timeline.html
\nextpage qmldesigner-connections.html

View File

@@ -33,11 +33,10 @@
\contentspage index.html
\page creator-quick-ui-forms.html
\previouspage qtquick-annotations.html
\if defined(qtdesignstudio)
\previouspage qmldesigner-pathview-editor.html
\nextpage creator-live-preview.html
\else
\previouspage qtquick-iso-icon-browser.html
\nextpage creator-qml-modules-with-plugins.html
\endif

View File

@@ -24,17 +24,23 @@
****************************************************************************/
/*!
\contentspage {Qt Design Studio Manual}
\contentspage index.html
\page quick-uis.html
\if defined(qtdesignstudio)
\previouspage quick-converting-ui-projects.html
\page studio-prototyping.html
\else
\previouspage creator-using-qt-quick-designer.html
\endif
\nextpage quick-components.html
\title Creating UIs
\if defined(qtdesignstudio)
When you install \QDS, everything you'll need to design UIs
using \l{Qt Quick} and to preview them on the desktop or on Android or
embedded Linux devices is automatically installed and configured correctly
for you.
\endif
Qt Quick enables you to build UIs around the behavior of
\e components and how they connect with one another. You
@@ -45,7 +51,7 @@
visible to users, while others are used behind the scene.
While it is useful to learn the basics of Qt Quick, you can also rely on
\QDS to write the code for you when you drag-and-drop the ready-made
\QMLD to write the code for you when you drag-and-drop the ready-made
components to the working area and change them to your liking by modifying
their properties in the Design mode. You can always check up details in
the extensive Qt Quick documentation by pressing \key F1.
@@ -76,13 +82,21 @@
\li \l {Using Custom Fonts}
You can load custom fonts to \QDS and use them in your designs.
You can load custom fonts to \QMLD and use them in your designs.
\li \l {Annotating Designs}
You can annotate your designs to provide reviewers or developers
with additional information about them.
\if defined(qtdesignstudio)
\endlist
\section1 Related Topics
\list
\li \l{Qt Quick UI Forms}
\endif
\li \l{Qt Quick UI Forms}
Some of the wizards create Qt Quick projects that contain UI forms
(.ui.qml files). The forms use a purely declarative subset of the

View File

@@ -25,7 +25,7 @@
/*!
\contentspage {Qt Design Studio}
\contentspage index.html
\previouspage psqtbridge.html
\page qtbridge-ps-setup.html
\nextpage qtbridge-ps-using.html

View File

@@ -25,7 +25,7 @@
/*!
\contentspage {Qt Design Studio}
\contentspage index.html
\previouspage sketchqtbridge.html
\page qtbridge-sketch-setup.html
\nextpage qtbridge-sketch-using.html

View File

@@ -24,7 +24,7 @@
****************************************************************************/
/*!
\contentspage {Qt Design Studio}
\contentspage index.html
\previouspage qt-design-viewer.html
\page studio-advanced.html
\nextpage studio-platforms.html

View File

@@ -0,0 +1,109 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Bridge 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.
**
****************************************************************************/
/*!
\contentspage index.html
\previouspage studio-importing-designs.html
\page studio-importing-2d.html
\nextpage studio-importing-3d.html
\title Importing 2D Assets
\image studio-imported-assets.png "Artwork imported into Qt Design Studio"
You can import assets that you exported with \QB to a \QDS project as image
and QML files and edit them in the Design mode. If you make changes to your
design in the design tool, you can merge the changes into existing QML files
without overwriting the changes you have made in \QDS.
\note Attempting to import assets exported on another system might fail.
The following instructions use an empty project as an example. For more
information about the options you have, see
\l {Creating Projects}.
To import designs to \QDS projects:
\list 1
\li Select \uicontrol File > \uicontrol {New File or Project} >
\uicontrol General > \uicontrol Choose, and follow the
instructions of the wizard to create an empty project.
\li In \uicontrol Projects, double-click \e Screen01.ui.qml to move to
the Design mode.
\li Select \uicontrol Library > \uicontrol Assets >
\uicontrol {Add New Assets}.
\li Select the folder where you exported the assets.
\li Select \uicontrol {Exported Assets (*.metadata)} in the dropdown
menu to filter \e .metadata files.
\li Select a \e .metadata file to import, and then select
\uicontrol Open.
\li Select \uicontrol Details next to the
\uicontrol {Metadata Import Paths} field to display the path where
the metadata is imported from.
\image studio-import-metadata.png "Asset Import dialog"
\li Select \uicontrol Details next to the
\uicontrol {QML/Asset Export Paths} field to display the paths to
copy the assets to.
\li In the \uicontrol QML field, you can change the folder to copy the
QML files to.
\li In the \uicontrol Assets field, you can change the folder to copy
the image files to.
\li Deselect the \uicontrol {Import assets} check box if you only want
to create QML files.
\li Deselect the \uicontrol {Generate QML} check box if you only
want to import assets.
\li Select the \uicontrol {Merge QML} check box if you have imported the
assets before and want to merge the changes into existing QML files
instead of overwriting the existing files.
\li Select \uicontrol Import to import the QML files and assets. This
might take a little while for complex projects.
\endlist
The imported assets are displayed in the \uicontrol Assets tab in the
\uicontrol Library as PNG images. The components that you specified in
the design tool are displayed in the \uicontrol {My QML Components} tab,
as well as in the \uicontrol Project tab of the \uicontrol Navigator as
separate QML files.
\note The layer that was the bottom layer in the design tool becames the top
layer in the \uicontrol Navigator to reflect the QML code model. You
can view the QML code in the \uicontrol {Text Editor} tab.
If asset importer conflicts, warnings, and errors are displayed in the
\uicontrol {Asset Import} dialog while importing, fix the issues in
design tool and export the assets again.
\section1 \QB Videos
For more information about importing assets from Adobe Photoshop, watch a
video tutorial and webinar about using \QB:
\list
\li \l{https://resources.qt.io/development-topic-ui-design/qtdesignstudio-clustertutorial-partone}
{Building an Instrument Cluster for Your Car HMI, Part 1}
\li \l{https://www.youtube.com/watch?v=ZzbucmQPU44}
{From Photoshop to Prototype with Qt Design Studio}
\endlist
*/

View File

@@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Bridge documentation.
@@ -24,7 +24,7 @@
****************************************************************************/
/*!
\contentspage {Qt Design Studio}
\contentspage index.html
\previouspage creator-vcs-git.html
\page studio-importing-designs.html
\nextpage studio-importing-2d.html
@@ -47,131 +47,3 @@
You can then edit them in the Design mode.
\endlist
*/
/*!
\contentspage {Qt Design Studio}
\previouspage studio-importing-designs.html
\page studio-importing-2d.html
\nextpage studio-importing-3d.html
\title Importing 2D Assets
\image studio-imported-assets.png "Artwork imported into Qt Design Studio"
You can import assets that you exported with \QB to a \QDS project as image
and QML files and edit them in the Design mode. If you make changes to your
design in the design tool, you can merge the changes into existing QML files
without overwriting the changes you have made in \QDS.
\note Attempting to import assets exported on another system might fail.
The following instructions use an empty project as an example. For more
information about the options you have, see
\l {Creating Projects}.
To import designs to \QDS projects:
\list 1
\li Select \uicontrol File > \uicontrol {New File or Project} >
\uicontrol General > \uicontrol Choose, and follow the
instructions of the wizard to create an empty project.
\li In \uicontrol Projects, double-click \e Screen01.ui.qml to move to
the Design mode.
\li Select \uicontrol Library > \uicontrol Assets >
\uicontrol {Add New Assets}.
\li Select the folder where you exported the assets.
\li Select \uicontrol {Exported Assets (*.metadata)} in the dropdown
menu to filter \e .metadata files.
\li Select a \e .metadata file to import, and then select
\uicontrol Open.
\li Select \uicontrol Details next to the
\uicontrol {Metadata Import Paths} field to display the path where
the metadata is imported from.
\image studio-import-metadata.png "Asset Import dialog"
\li Select \uicontrol Details next to the
\uicontrol {QML/Asset Export Paths} field to display the paths to
copy the assets to.
\li In the \uicontrol QML field, you can change the folder to copy the
QML files to.
\li In the \uicontrol Assets field, you can change the folder to copy
the image files to.
\li Deselect the \uicontrol {Import assets} check box if you only want
to create QML files.
\li Deselect the \uicontrol {Generate QML} check box if you only
want to import assets.
\li Select the \uicontrol {Merge QML} check box if you have imported the
assets before and want to merge the changes into existing QML files
instead of overwriting the existing files.
\li Select \uicontrol Import to import the QML files and assets. This
might take a little while for complex projects.
\endlist
The imported assets are displayed in the \uicontrol Assets tab in the
\uicontrol Library as PNG images. The components that you specified in
the design tool are displayed in the \uicontrol {My QML Components} tab,
as well as in the \uicontrol Project tab of the \uicontrol Navigator as
separate QML files.
\note The layer that was the bottom layer in the design tool becames the top
layer in the \uicontrol Navigator to reflect the QML code model. You
can view the QML code in the \uicontrol {Text Editor} tab.
If asset importer conflicts, warnings, and errors are displayed in the
\uicontrol {Asset Import} dialog while importing, fix the issues in
design tool and export the assets again.
\section1 \QB Videos
For more information about importing assets from Adobe Photoshop, watch a
video tutorial and webinar about using \QB:
\list
\li \l{https://resources.qt.io/development-topic-ui-design/qtdesignstudio-clustertutorial-partone}
{Building an Instrument Cluster for Your Car HMI, Part 1}
\li \l{https://www.youtube.com/watch?v=ZzbucmQPU44}
{From Photoshop to Prototype with Qt Design Studio}
\endlist
*/
/*!
\contentspage {Qt Design Studio}
\previouspage studio-importing-2d.html
\page studio-importing-3d.html
\nextpage quick-converting-ui-projects.html
\title Importing 3D Assets
You can import files you created using 3D graphics applications and stored
in 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}
version, see the module documentation.
For more information about exporting 3D graphics from Maya, see
\l{Exporting from Maya}.
During the import, you can optimize the files for \QDS. You can remove
components from meshes to reduce the cache size, find and fix issues in
the files, optimize graphs and meshes, and so on. The available options
depend on whether you are importing files that you created with Qt 3D Studio
or with other 3D graphics tools. See the tooltips in the options dialog
for more information about a particular option.
\image studio-import-3d.png
To import 3D assets to \QDS projects:
\list 1
\li In the Design mode, select \uicontrol Library > \uicontrol Assets
> \uicontrol {Add New Assets}.
\li Select \uicontrol {3D Assets} in the dropdown menu to filter 3D
graphics files.
\li Select a file to import, and then select \uicontrol Open.
\li In the \uicontrol {3D Scene Options} tab, select options for
importing the file.
\li Select \uicontrol Import to import the 3D graphics file.
\li When the import is done, select \uicontrol Close.
\endlist
You can open the imported files in the Design mode for editing in the
\l{Editing 3D Scenes}{3D editor}.
*/

View File

@@ -24,7 +24,7 @@
****************************************************************************/
/*!
\contentspage {Qt Design Studio}
\contentspage index.html
\previouspage creator-editor-options-text.html
\page studio-javascript.html
\nextpage studio-debugging.html

View File

@@ -24,7 +24,7 @@
****************************************************************************/
/*!
\contentspage {Qt Design Studio}
\contentspage index.html
\previouspage studio-advanced.html
\page studio-platforms.html
\nextpage creator-keyboard-shortcuts.html

View File

@@ -24,7 +24,7 @@
****************************************************************************/
/*!
\contentspage {Qt Design Studio}
\contentspage index.html
\page qtdesignstudio-toc.html
\title All Topics
@@ -76,6 +76,7 @@
\li \l{Managing Item Hierarchy}
\li \l{Specifying Item Properties}
\li \l{Using Custom Fonts}
\li \l{Annotating Designs}
\li \l{Qt Quick UI Forms}
\endlist
\li \l {Adding Dynamics}
@@ -90,7 +91,7 @@
\li \l{Adding States}
\li \l{Editing PathView Properties}
\endlist
\li \b {\l{Editing 3D Scenes}}
\li \l{Editing 3D Scenes}
\list
\li \l{Editing 3D Assets in Design Mode}
\li \l{Working in the 3D Editor}

View File

@@ -62,6 +62,7 @@
\li \l{Managing Item Hierarchy}
\li \l{Specifying Item Properties}
\li \l{Using Custom Fonts}
\li \l{Annotating Designs}
\endlist
\li \b {\l{Adding Dynamics}}
\list

View File

@@ -27,9 +27,13 @@
****************************************************************************/
/*!
\contentspage {Qt Design Studio}
\contentspage index.html
\page exporting-3d-assets.html
\if defined(qtdesignstudio)
\previouspage qtbridge-sketch-using.html
\else
\previouspage studio-3d.html
\endif
\nextpage exporting-from-blender.html
\title Exporting 3D Assets

View File

@@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Design Studio.
@@ -26,10 +26,14 @@
****************************************************************************/
/*!
\contentspage {Qt Design Studio Manual}
\contentspage index.html
\page exporting-from-maya.html
\previouspage qtbridge-sketch-using.html
\previouspage exporting-from-blender.html
\if defined (qtdesignstudio)
\nextpage creator-quick-tour.html
\else
\nextpage studio-importing-3d.html
\endif
\title Exporting from Maya

View File

@@ -24,9 +24,13 @@
****************************************************************************/
/*!
\contentspage {Qt Design Studio}
\previouspage studio-3d.html
\contentspage index.html
\page studio-3d-design-mode.html
\if defined (qtdesignstudio)
\previouspage studio-3d.html
\else
\previouspage studio-importing-3d.html
\endif
\nextpage studio-3d-editor.html
\title Editing 3D Assets in Design Mode

View File

@@ -24,7 +24,7 @@
****************************************************************************/
/*!
\contentspage {Qt Design Studio}
\contentspage index.html
\previouspage studio-3d-design-mode.html
\page studio-3d-editor.html
\nextpage studio-3d-view.html

View File

@@ -0,0 +1,72 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Bridge 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.
**
****************************************************************************/
/*!
\contentspage index.html
\page studio-importing-3d.html
\if defined(qtdesignstudio)
\previouspage studio-importing-2d.html
\nextpage quick-converting-ui-projects.html
\else
\previouspage exporting-from-maya.html
\nextpage studio-3d-design-mode.html
\endif
\title Importing 3D Assets
You can import files you created using 3D graphics applications and stored
in 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}
version, see the module documentation.
For more information about exporting 3D graphics from Maya, see
\l{Exporting from Maya}.
During the import, you can optimize the files for \QDS. You can remove
components from meshes to reduce the cache size, find and fix issues in
the files, optimize graphs and meshes, and so on. The available options
depend on whether you are importing files that you created with Qt 3D Studio
or with other 3D graphics tools. See the tooltips in the options dialog
for more information about a particular option.
\image studio-import-3d.png
To import 3D assets to \QDS projects:
\list 1
\li In the Design mode, select \uicontrol Library > \uicontrol Assets
> \uicontrol {Add New Assets}.
\li Select \uicontrol {3D Assets} in the dropdown menu to filter 3D
graphics files.
\li Select a file to import, and then select \uicontrol Open.
\li In the \uicontrol {3D Scene Options} tab, select options for
importing the file.
\li Select \uicontrol Import to import the 3D graphics file.
\li When the import is done, select \uicontrol Close.
\endlist
You can open the imported files in the Design mode for editing in the
\l{Editing 3D Scenes}{3D editor}.
*/

View File

@@ -24,7 +24,7 @@
****************************************************************************/
/*!
\contentspage {Qt Design Studio}
\contentspage index.html
\previouspage studio-3d-components.html
\page studio-3d-node.html
\nextpage studio-3d-model.html

View File

@@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Design Studio.
@@ -29,7 +29,11 @@
\contentspage {Qt Design Studio Manual}
\page studio-3d-scene-environment.html
\previouspage studio-3d-camera.html
\if defined (qtdesignstudio)
\nextpage creator-live-preview.html
\else
\nextpage qtquick-iso-icon-browser.html
\endif
\title Setting Scene Environment

View File

@@ -24,7 +24,7 @@
****************************************************************************/
/*!
\contentspage {Qt Design Studio}
\contentspage index.html
\previouspage studio-3d-editor.html
\page studio-3d-view.html
\nextpage studio-3d-components.html

View File

@@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Design Studio documentation.
@@ -24,10 +24,15 @@
****************************************************************************/
/*!
\contentspage {Qt Design Studio Manual}
\contentspage index.html
\page studio-3d.html
\previouspage qmldesigner-pathview-editor.html
\if defined(qtdesignstudio)
\nextpage studio-3d-design-mode.html
\else
\nextpage exporting-3d-assets.html
\endif
\title Editing 3D Scenes
@@ -45,6 +50,20 @@
The following topics contain information about working with Qt Quick 3D:
\list
\if defined (qtcreator)
\li \l {Exporting 3D Assets}
You can import files you created using 3D graphics applications and
stored in several widely-used formats, such as .blend, .dae, .fbx,
.glb, .gltf, .obj, .uia, or .uip.
\li \l{Importing 3D Assets}
You can import 3D assets that you created using 3D graphics
applications and stored in one of the supported file formats.
You can then edit them in the Design mode.
\endif
\li \l {Editing 3D Assets in Design Mode}
\QDS opens QML files that contain 3D scenes in the Design mode and

View File

@@ -24,11 +24,12 @@
****************************************************************************/
import QtQuick 2.0
import QtQuick3D 1.15
IconGizmo {
id: cameraGizmo
property var frustumModel: null
property Model frustumModel: null
iconSource: "qrc:///qtquickplugin/mockfiles/images/editor_camera.png"

View File

@@ -134,7 +134,7 @@ Item {
function fitToView()
{
if (editView) {
var targetNode = selectedNodes.length > 0
var targetNode = selectionBoxes.length > 0
? selectionBoxes[0].model : null;
cameraControl.focusObject(targetNode, editView.camera.eulerRotation, true);
}
@@ -301,16 +301,20 @@ Item {
}
// No free gizmos available, create a new one
var component = Qt.createComponent("LightGizmo.qml");
if (component.status === Component.Ready) {
var gizmo = component.createObject(overlayView,
{"view3D": overlayView, "targetNode": obj,
"selectedNodes": selectedNodes, "scene": scene,
"activeScene": activeScene});
var gizmoComponent = Qt.createComponent("LightGizmo.qml");
var modelComponent = Qt.createComponent("LightModel.qml");
if (gizmoComponent.status === Component.Ready && modelComponent.status === Component.Ready) {
var geometryName = _generalHelper.generateUniqueName("LightGeometry");
var model = modelComponent.createObject(overlayScene, {"geometryName": geometryName});
var gizmo = gizmoComponent.createObject(overlayView,
{"view3D": overlayView, "targetNode": obj,
"selectedNodes": selectedNodes, "scene": scene,
"activeScene": activeScene});
lightGizmos[lightGizmos.length] = gizmo;
gizmo.clicked.connect(handleObjectClicked);
gizmo.selectedNodes = Qt.binding(function() {return selectedNodes;});
gizmo.activeScene = Qt.binding(function() {return activeScene;});
gizmo.connectModel(model);
}
}

View File

@@ -29,14 +29,40 @@ import QtQuick3D 1.15
IconGizmo {
id: lightGizmo
property Model lightModel: null
iconSource: targetNode
? targetNode instanceof DirectionalLight
? "qrc:///qtquickplugin/mockfiles/images/directional_light_gradient.png"
: targetNode instanceof AreaLight
? "qrc:///qtquickplugin/mockfiles/images/area_light_gradient.png"
: "qrc:///qtquickplugin/mockfiles/images/point_light_gradient.png"
: targetNode instanceof PointLight
? "qrc:///qtquickplugin/mockfiles/images/point_light_gradient.png"
: "qrc:///qtquickplugin/mockfiles/images/spot_light_gradient.png"
: "qrc:///qtquickplugin/mockfiles/images/point_light_gradient.png"
// ColorOverlay doesn't work correctly with hidden windows so commenting it out for now
//overlayColor: targetNode ? targetNode.color : "transparent"
function connectModel(model)
{
lightModel = model;
model.selected = selected;
model.selected = Qt.binding(function() {return selected;});
model.scene = scene;
model.scene = Qt.binding(function() {return scene;});
model.targetNode = targetNode;
model.targetNode = Qt.binding(function() {return targetNode;});
model.visible = visible;
model.visible = Qt.binding(function() {return visible;});
}
onActiveSceneChanged: {
if (lightModel && activeScene == scene)
lightModel.updateGeometry();
}
}

View File

@@ -0,0 +1,62 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Creator.
**
** 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 General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 as published by the Free Software
** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
****************************************************************************/
import QtQuick 2.0
import QtQuick3D 1.15
import LightGeometry 1.0
Model {
id: lightModel
property string geometryName
property alias geometryName: lightGeometry.name // Name must be unique for each geometry
property Node targetNode: null
property Node scene: null
property bool selected: false
function updateGeometry()
{
lightGeometry.update();
}
position: targetNode ? targetNode.scenePosition : Qt.vector3d(0, 0, 0)
rotation: targetNode ? targetNode.sceneRotation : Qt.quaternion(1, 0, 0, 0)
scale: Qt.vector3d(50, 50, 50)
geometry: lightGeometry
materials: [
DefaultMaterial {
id: defaultMaterial
emissiveColor: lightModel.selected ? "#FF0000" : "#555555"
lighting: DefaultMaterial.NoLighting
cullMode: Material.NoCulling
}
]
LightGeometry {
id: lightGeometry
light: lightModel.scene && lightModel.targetNode ? lightModel.targetNode : null
}
}

View File

@@ -35,20 +35,13 @@ Rectangle {
id: root
color: toggleBackground && toggled ? "#aa000000" : mouseArea.containsMouse ? "#44000000" : "#00000000"
width: img.width + txt.width + 5
height: img.height
Image {
id: img
anchors.verticalCenter: parent.verticalCenter
source: "qrc:///qtquickplugin/mockfiles/images/" + root.states[toggled ? 1 : 0].iconId + ".png"
}
width: txt.width + 5
height: 16
Text {
id: txt
color: "#b5b5b5"
anchors.verticalCenter: parent.verticalCenter
anchors.left: img.right
text: root.states[toggled ? 1 : 0].text
}

View File

@@ -41,8 +41,8 @@ Rectangle {
property var _buttonGroupArray: []
id: root
width: img.width + 5
height: img.height + 5
width: 16
height: 16
color: root.selected ? "#aa000000" : (mouseArea.containsMouse ? "#44000000" : "#00000000")
radius: 3
@@ -65,13 +65,6 @@ Rectangle {
delay: 1000
}
Image {
id: img
anchors.centerIn: parent
source: root.selected ? "qrc:///qtquickplugin/mockfiles/images/" + root.tool + "_selected.png"
: "qrc:///qtquickplugin/mockfiles/images/" + root.tool + "_active.png"
}
Shortcut {
sequence: root.currentShortcut
onActivated: mouseArea.onClicked(null)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 266 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 386 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 266 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 386 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 433 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 561 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 404 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 779 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 438 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 904 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 353 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 657 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 355 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 661 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 348 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 525 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 294 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 303 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 191 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 272 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 451 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 869 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 478 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 906 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 242 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 338 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 277 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 364 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@@ -35,6 +35,7 @@
#include <QtQuick3D/private/qquick3dperspectivecamera_p.h>
#include <QtQuick3D/private/qquick3dutils_p.h>
#include <QtCore/qmath.h>
#include <QtCore/qtimer.h>
#include <limits>
@@ -70,31 +71,31 @@ void CameraGeometry::setCamera(QQuick3DCamera *camera)
m_camera = camera;
if (auto perspectiveCamera = qobject_cast<QQuick3DPerspectiveCamera *>(m_camera)) {
QObject::connect(perspectiveCamera, &QQuick3DPerspectiveCamera::clipNearChanged,
this, &CameraGeometry::update);
this, &CameraGeometry::handleCameraPropertyChange);
QObject::connect(perspectiveCamera, &QQuick3DPerspectiveCamera::clipFarChanged,
this, &CameraGeometry::update);
this, &CameraGeometry::handleCameraPropertyChange);
QObject::connect(perspectiveCamera, &QQuick3DPerspectiveCamera::fieldOfViewChanged,
this, &CameraGeometry::update);
this, &CameraGeometry::handleCameraPropertyChange);
QObject::connect(perspectiveCamera, &QQuick3DPerspectiveCamera::fieldOfViewOrientationChanged,
this, &CameraGeometry::update);
this, &CameraGeometry::handleCameraPropertyChange);
if (auto frustumCamera = qobject_cast<QQuick3DFrustumCamera *>(m_camera)) {
QObject::connect(frustumCamera, &QQuick3DFrustumCamera::topChanged,
this, &CameraGeometry::update);
this, &CameraGeometry::handleCameraPropertyChange);
QObject::connect(frustumCamera, &QQuick3DFrustumCamera::bottomChanged,
this, &CameraGeometry::update);
this, &CameraGeometry::handleCameraPropertyChange);
QObject::connect(frustumCamera, &QQuick3DFrustumCamera::rightChanged,
this, &CameraGeometry::update);
this, &CameraGeometry::handleCameraPropertyChange);
QObject::connect(frustumCamera, &QQuick3DFrustumCamera::leftChanged,
this, &CameraGeometry::update);
this, &CameraGeometry::handleCameraPropertyChange);
}
} else if (auto orthoCamera = qobject_cast<QQuick3DOrthographicCamera *>(m_camera)) {
QObject::connect(orthoCamera, &QQuick3DOrthographicCamera::clipNearChanged,
this, &CameraGeometry::update);
this, &CameraGeometry::handleCameraPropertyChange);
QObject::connect(orthoCamera, &QQuick3DOrthographicCamera::clipFarChanged,
this, &CameraGeometry::update);
this, &CameraGeometry::handleCameraPropertyChange);
} else if (auto customCamera = qobject_cast<QQuick3DCustomCamera *>(m_camera)) {
QObject::connect(customCamera, &QQuick3DCustomCamera::projectionChanged,
this, &CameraGeometry::update);
this, &CameraGeometry::handleCameraPropertyChange);
}
emit cameraChanged();
update();
@@ -110,48 +111,28 @@ void CameraGeometry::setViewPortRect(const QRectF &rect)
update();
}
void CameraGeometry::handleCameraPropertyChange()
{
m_cameraUpdatePending = true;
update();
}
QSSGRenderGraphObject *CameraGeometry::updateSpatialNode(QSSGRenderGraphObject *node)
{
if (!m_camera)
return node;
// If camera properties have been updated, we need to defer updating the frustum geometry
// to the next frame to ensure camera's spatial node has been properly updated.
if (m_cameraUpdatePending) {
QTimer::singleShot(0, this, &CameraGeometry::update);
m_cameraUpdatePending = false;
return node;
}
if (!m_camera->cameraNode()) {
#if QT_VERSION <= QT_VERSION_CHECK(5, 14, 1)
// 5.14.1 doesn't yet have function to force camera node creation, so we must do it
// the hard way
auto camera = new QSSGRenderCamera();
bool changed = false;
if (auto perspCamera = qobject_cast<QQuick3DPerspectiveCamera *>(m_camera)) {
changed |= qUpdateIfNeeded(camera->clipNear, perspCamera->clipNear());
changed |= qUpdateIfNeeded(camera->clipFar, perspCamera->clipFar());
changed |= qUpdateIfNeeded(camera->fov, qDegreesToRadians(perspCamera->fieldOfView()));
changed |= qUpdateIfNeeded(camera->fovHorizontal, perspCamera->fieldOfViewOrientation()
== QQuick3DCamera::FieldOfViewOrientation::Horizontal);
changed |= qUpdateIfNeeded(camera->enableFrustumClipping, perspCamera->frustumCullingEnabled());
if (auto frustCamera = qobject_cast<QQuick3DFrustumCamera *>(m_camera)) {
camera->flags.setFlag(QSSGRenderNode::Flag::CameraFrustumProjection, true);
changed |= qUpdateIfNeeded(camera->top, frustCamera->top());
changed |= qUpdateIfNeeded(camera->bottom, frustCamera->bottom());
changed |= qUpdateIfNeeded(camera->right, frustCamera->right());
changed |= qUpdateIfNeeded(camera->left, frustCamera->left());
}
} else if (auto orthoCamera = qobject_cast<QQuick3DOrthographicCamera *>(m_camera)) {
camera->flags.setFlag(QSSGRenderNode::Flag::Orthographic, true);
changed |= qUpdateIfNeeded(camera->clipNear, orthoCamera->clipNear());
changed |= qUpdateIfNeeded(camera->clipFar, orthoCamera->clipFar());
changed |= qUpdateIfNeeded(camera->enableFrustumClipping, orthoCamera->frustumCullingEnabled());
} else if (auto customCamera = qobject_cast<QQuick3DCustomCamera *>(m_camera)) {
camera->flags.setFlag(QSSGRenderNode::Flag::CameraCustomProjection, true);
changed |= qUpdateIfNeeded(camera->projection, customCamera->projection());
changed |= qUpdateIfNeeded(camera->enableFrustumClipping, customCamera->frustumCullingEnabled());
}
if (changed)
camera->flags.setFlag(QSSGRenderNode::Flag::CameraDirty);
m_camera->setCameraNode(camera);
#else
// Doing explicit viewport mapping forces cameraNode creation
m_camera->mapToViewport({}, m_viewPortRect.width(), m_viewPortRect.height());
#endif
}
node = QQuick3DGeometry::updateSpatialNode(node);
@@ -183,7 +164,7 @@ void CameraGeometry::fillVertexData(QByteArray &vertexData, QByteArray &indexDat
{
const int vertexSize = int(sizeof(float)) * 8 * 3; // 8 vertices, 3 floats/vert
vertexData.resize(vertexSize);
const int indexSize = int(sizeof(quint16)) * 12 * 2; // 16 lines, 2 vert/line
const int indexSize = int(sizeof(quint16)) * 12 * 2; // 12 lines, 2 vert/line
indexData.resize(indexSize);
auto dataPtr = reinterpret_cast<float *>(vertexData.data());

View File

@@ -49,6 +49,7 @@ public:
public Q_SLOTS:
void setCamera(QQuick3DCamera *camera);
void setViewPortRect(const QRectF &rect);
void handleCameraPropertyChange();
Q_SIGNALS:
void cameraChanged();
@@ -62,6 +63,7 @@ private:
QVector3D &minBounds, QVector3D &maxBounds);
QQuick3DCamera *m_camera = nullptr;
QRectF m_viewPortRect;
bool m_cameraUpdatePending = false;
};
}

View File

@@ -1,6 +1,7 @@
HEADERS += $$PWD/generalhelper.h \
$$PWD/mousearea3d.h \
$$PWD/camerageometry.h \
$$PWD/lightgeometry.h \
$$PWD/gridgeometry.h \
$$PWD/selectionboxgeometry.h \
$$PWD/linegeometry.h
@@ -8,6 +9,7 @@ HEADERS += $$PWD/generalhelper.h \
SOURCES += $$PWD/generalhelper.cpp \
$$PWD/mousearea3d.cpp \
$$PWD/camerageometry.cpp \
$$PWD/lightgeometry.cpp \
$$PWD/gridgeometry.cpp \
$$PWD/selectionboxgeometry.cpp \
$$PWD/linegeometry.cpp

View File

@@ -0,0 +1,233 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Creator.
**
** 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 General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 as published by the Free Software
** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
****************************************************************************/
#ifdef QUICK3D_MODULE
#include "lightgeometry.h"
#include <QtQuick3DRuntimeRender/private/qssgrendergeometry_p.h>
#include <QtQuick3DRuntimeRender/private/qssgrenderlight_p.h>
#include <QtQuick3D/private/qquick3darealight_p.h>
#include <QtQuick3D/private/qquick3ddirectionallight_p.h>
#include <QtQuick3D/private/qquick3dpointlight_p.h>
#include <QtQuick3D/private/qquick3dspotlight_p.h>
#include <QtCore/qmath.h>
#include <limits>
namespace QmlDesigner {
namespace Internal {
LightGeometry::LightGeometry()
: QQuick3DGeometry()
{
}
LightGeometry::~LightGeometry()
{
}
QQuick3DAbstractLight *QmlDesigner::Internal::LightGeometry::light() const
{
return m_light;
}
void QmlDesigner::Internal::LightGeometry::setLight(QQuick3DAbstractLight *light)
{
if (m_light == light)
return;
m_light = light;
emit lightChanged();
update();
}
QSSGRenderGraphObject *LightGeometry::updateSpatialNode(QSSGRenderGraphObject *node)
{
if (!m_light)
return node;
node = QQuick3DGeometry::updateSpatialNode(node);
QSSGRenderGeometry *geometry = static_cast<QSSGRenderGeometry *>(node);
geometry->clear();
QByteArray vertexData;
QByteArray indexData;
QVector3D minBounds;
QVector3D maxBounds;
fillVertexData(vertexData, indexData, minBounds, maxBounds);
geometry->addAttribute(QSSGRenderGeometry::Attribute::PositionSemantic, 0,
QSSGRenderGeometry::Attribute::ComponentType::F32Type);
geometry->addAttribute(QSSGRenderGeometry::Attribute::IndexSemantic, 0,
QSSGRenderGeometry::Attribute::ComponentType::U16Type);
geometry->setStride(12);
geometry->setVertexData(vertexData);
geometry->setIndexData(indexData);
geometry->setPrimitiveType(QSSGRenderGeometry::Lines);
geometry->setBounds(minBounds, maxBounds);
return node;
}
void LightGeometry::fillVertexData(QByteArray &vertexData, QByteArray &indexData,
QVector3D &minBounds, QVector3D &maxBounds)
{
int vertexSize = 0;
int indexSize = 0;
const int dirSegments = 12;
const int pointLightDensity = 5;
if (qobject_cast<QQuick3DAreaLight *>(m_light)) {
// Area light model is a rectangle with perpendicular lines on corners
vertexSize = int(sizeof(float)) * 3 * 8;
indexSize = int(sizeof(quint16)) * 8 * 2;
} else if (qobject_cast<QQuick3DDirectionalLight *>(m_light)) {
// Directional light model is a circle with perpendicular lines on circumference vertices
vertexSize = int(sizeof(float)) * 3 * dirSegments * 2;
indexSize = int(sizeof(quint16)) * dirSegments * 2 * 2;
} else if (qobject_cast<QQuick3DPointLight *>(m_light)) {
// Point light model is a set of lines radiating from central point.
// We reserve more than we need so we don't have to calculate the actual need here,
// and resize later when we know the exact count.
vertexSize = int(sizeof(float)) * 3 * pointLightDensity * pointLightDensity * 4;
indexSize = int(sizeof(quint16)) * pointLightDensity * pointLightDensity * 4;
} else if (qobject_cast<QQuick3DSpotLight *>(m_light)) {
// TODO: Spot light model, for now use area light model
vertexSize = int(sizeof(float)) * 3 * dirSegments * 2;
indexSize = int(sizeof(quint16)) * dirSegments * 2 * 2;
}
vertexData.resize(vertexSize);
indexData.resize(indexSize);
auto dataPtr = reinterpret_cast<float *>(vertexData.data());
auto indexPtr = reinterpret_cast<quint16 *>(indexData.data());
if (qobject_cast<QQuick3DAreaLight *>(m_light)) {
*dataPtr++ = -1.f; *dataPtr++ = 1.f; *dataPtr++ = 0.f;
*dataPtr++ = -1.f; *dataPtr++ = -1.f; *dataPtr++ = 0.f;
*dataPtr++ = 1.f; *dataPtr++ = -1.f; *dataPtr++ = 0.f;
*dataPtr++ = 1.f; *dataPtr++ = 1.f; *dataPtr++ = 0.f;
*dataPtr++ = -1.f; *dataPtr++ = 1.f; *dataPtr++ = -1.f;
*dataPtr++ = -1.f; *dataPtr++ = -1.f; *dataPtr++ = -1.f;
*dataPtr++ = 1.f; *dataPtr++ = -1.f; *dataPtr++ = -1.f;
*dataPtr++ = 1.f; *dataPtr++ = 1.f; *dataPtr++ = -1.f;
*indexPtr++ = 0; *indexPtr++ = 1;
*indexPtr++ = 1; *indexPtr++ = 2;
*indexPtr++ = 2; *indexPtr++ = 3;
*indexPtr++ = 3; *indexPtr++ = 0;
*indexPtr++ = 0; *indexPtr++ = 4;
*indexPtr++ = 1; *indexPtr++ = 5;
*indexPtr++ = 2; *indexPtr++ = 6;
*indexPtr++ = 3; *indexPtr++ = 7;
} else if (qobject_cast<QQuick3DDirectionalLight *>(m_light)) {
const double segment = M_PI * 2. / double(dirSegments);
for (quint16 i = 0; i < dirSegments; ++i) {
float x = float(qCos(i * segment));
float y = float(qSin(i * segment));
*dataPtr++ = x; *dataPtr++ = y; *dataPtr++ = 0.f;
*dataPtr++ = x; *dataPtr++ = y; *dataPtr++ = -1.f;
const quint16 base = i * 2;
*indexPtr++ = base; *indexPtr++ = base + 1;
*indexPtr++ = base; *indexPtr++ = base + 2;
}
// Adjust the final index to complete the circle
*(--indexPtr) = 0;
} else if (qobject_cast<QQuick3DPointLight *>(m_light)) {
const double innerRad = .3;
vertexSize = 0;
indexSize = 0;
int vertexIndex = 0;
for (quint16 i = 0; i < pointLightDensity; ++i) {
double latAngle = (((.9 / (pointLightDensity - 1)) * i) + .05) * M_PI;
quint16 longPoints = pointLightDensity * 2 * qSin(latAngle);
latAngle -= M_PI_2;
const double longSegment = M_PI * 2. / double(longPoints);
for (quint16 j = 0; j < longPoints; ++j) {
double longAngle = longSegment * j;
float q = float(qCos(latAngle));
float x = float(qCos(longAngle) * q);
float y = float(qSin(latAngle));
float z = float(qSin(longAngle) * q);
*dataPtr++ = x * innerRad; *dataPtr++ = y * innerRad; *dataPtr++ = z * innerRad;
*dataPtr++ = x; *dataPtr++ = y; *dataPtr++ = z;
*indexPtr++ = vertexIndex; *indexPtr++ = vertexIndex + 1;
vertexIndex += 2;
vertexSize += 6 * sizeof(float);
indexSize += 2 * sizeof(quint16);
}
}
vertexData.resize(vertexSize);
indexData.resize(indexSize);
} else if (qobject_cast<QQuick3DSpotLight *>(m_light)) {
// TODO: Spot light model, for now use area light model
*dataPtr++ = -1.f; *dataPtr++ = 1.f; *dataPtr++ = 0.f;
*dataPtr++ = -1.f; *dataPtr++ = -1.f; *dataPtr++ = 0.f;
*dataPtr++ = 1.f; *dataPtr++ = -1.f; *dataPtr++ = 0.f;
*dataPtr++ = 1.f; *dataPtr++ = 1.f; *dataPtr++ = 0.f;
*dataPtr++ = -1.f; *dataPtr++ = 1.f; *dataPtr++ = -1.f;
*dataPtr++ = -1.f; *dataPtr++ = -1.f; *dataPtr++ = -1.f;
*dataPtr++ = 1.f; *dataPtr++ = -1.f; *dataPtr++ = -1.f;
*dataPtr++ = 1.f; *dataPtr++ = 1.f; *dataPtr++ = -1.f;
*indexPtr++ = 0; *indexPtr++ = 1;
*indexPtr++ = 1; *indexPtr++ = 2;
*indexPtr++ = 2; *indexPtr++ = 3;
*indexPtr++ = 3; *indexPtr++ = 0;
*indexPtr++ = 0; *indexPtr++ = 4;
*indexPtr++ = 1; *indexPtr++ = 5;
*indexPtr++ = 2; *indexPtr++ = 6;
*indexPtr++ = 3; *indexPtr++ = 7;
}
static const float floatMin = std::numeric_limits<float>::lowest();
static const float floatMax = std::numeric_limits<float>::max();
auto vertexPtr = reinterpret_cast<QVector3D *>(vertexData.data());
minBounds = QVector3D(floatMax, floatMax, floatMax);
maxBounds = QVector3D(floatMin, floatMin, floatMin);
for (int i = 0; i < vertexSize / 12; ++i) {
minBounds[0] = qMin((*vertexPtr)[0], minBounds[0]);
minBounds[1] = qMin((*vertexPtr)[1], minBounds[1]);
minBounds[2] = qMin((*vertexPtr)[2], minBounds[2]);
maxBounds[0] = qMax((*vertexPtr)[0], maxBounds[0]);
maxBounds[1] = qMax((*vertexPtr)[1], maxBounds[1]);
maxBounds[2] = qMax((*vertexPtr)[2], maxBounds[2]);
++vertexPtr;
}
}
}
}
#endif // QUICK3D_MODULE

View File

@@ -0,0 +1,67 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Creator.
**
** 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 General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 as published by the Free Software
** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
****************************************************************************/
#pragma once
#ifdef QUICK3D_MODULE
#include <QtQuick3D/private/qquick3dgeometry_p.h>
#include <QtQuick3D/private/qquick3dabstractlight_p.h>
namespace QmlDesigner {
namespace Internal {
class LightGeometry : public QQuick3DGeometry
{
Q_OBJECT
Q_PROPERTY(QQuick3DAbstractLight *light READ light WRITE setLight NOTIFY lightChanged)
public:
LightGeometry();
~LightGeometry() override;
QQuick3DAbstractLight *light() const;
public Q_SLOTS:
void setLight(QQuick3DAbstractLight *light);
Q_SIGNALS:
void lightChanged();
protected:
QSSGRenderGraphObject *updateSpatialNode(QSSGRenderGraphObject *node) override;
private:
void fillVertexData(QByteArray &vertexData, QByteArray &indexData,
QVector3D &minBounds, QVector3D &maxBounds);
QQuick3DAbstractLight *m_light = nullptr;
};
}
}
QML_DECLARE_TYPE(QmlDesigner::Internal::LightGeometry)
#endif // QUICK3D_MODULE

View File

@@ -67,6 +67,7 @@
#include "../editor3d/generalhelper.h"
#include "../editor3d/mousearea3d.h"
#include "../editor3d/camerageometry.h"
#include "../editor3d/lightgeometry.h"
#include "../editor3d/gridgeometry.h"
#include "../editor3d/selectionboxgeometry.h"
#include "../editor3d/linegeometry.h"
@@ -104,6 +105,7 @@ void Qt5InformationNodeInstanceServer::createEditView3D()
qmlRegisterRevision<QQuick3DNode, 1>("MouseArea3D", 1, 0);
qmlRegisterType<QmlDesigner::Internal::MouseArea3D>("MouseArea3D", 1, 0, "MouseArea3D");
qmlRegisterType<QmlDesigner::Internal::CameraGeometry>("CameraGeometry", 1, 0, "CameraGeometry");
qmlRegisterType<QmlDesigner::Internal::LightGeometry>("LightGeometry", 1, 0, "LightGeometry");
qmlRegisterType<QmlDesigner::Internal::GridGeometry>("GridGeometry", 1, 0, "GridGeometry");
qmlRegisterType<QmlDesigner::Internal::SelectionBoxGeometry>("SelectionBoxGeometry", 1, 0, "SelectionBoxGeometry");
qmlRegisterType<QmlDesigner::Internal::LineGeometry>("LineGeometry", 1, 0, "LineGeometry");

View File

@@ -14,6 +14,7 @@
<file>mockfiles/MoveGizmo.qml</file>
<file>mockfiles/CameraFrustum.qml</file>
<file>mockfiles/CameraGizmo.qml</file>
<file>mockfiles/LightModel.qml</file>
<file>mockfiles/LightGizmo.qml</file>
<file>mockfiles/IconGizmo.qml</file>
<file>mockfiles/Overlay2D.qml</file>
@@ -40,49 +41,13 @@
<file>mockfiles/meshes/axishelper.mesh</file>
<file>mockfiles/images/editor_camera.png</file>
<file>mockfiles/images/editor_camera@2x.png</file>
<file>mockfiles/images/light-pick-icon.png</file>
<file>mockfiles/images/light-pick-icon@2x.png</file>
<file>mockfiles/images/item_selection_active.png</file>
<file>mockfiles/images/item_selection_active@2x.png</file>
<file>mockfiles/images/item_selection_selected.png</file>
<file>mockfiles/images/item_selection_selected@2x.png</file>
<file>mockfiles/images/group_selection_selected.png</file>
<file>mockfiles/images/group_selection_selected@2x.png</file>
<file>mockfiles/images/group_selection_active.png</file>
<file>mockfiles/images/group_selection_active@2x.png</file>
<file>mockfiles/images/move_active.png</file>
<file>mockfiles/images/move_active@2x.png</file>
<file>mockfiles/images/move_selected.png</file>
<file>mockfiles/images/move_selected@2x.png</file>
<file>mockfiles/images/rotate_active.png</file>
<file>mockfiles/images/rotate_active@2x.png</file>
<file>mockfiles/images/rotate_selected.png</file>
<file>mockfiles/images/rotate_selected@2x.png</file>
<file>mockfiles/images/scale_active.png</file>
<file>mockfiles/images/scale_active@2x.png</file>
<file>mockfiles/images/scale_selected.png</file>
<file>mockfiles/images/scale_selected@2x.png</file>
<file>mockfiles/images/directional_light_gradient.png</file>
<file>mockfiles/images/directional_light_gradient@2x.png</file>
<file>mockfiles/images/point_light_gradient.png</file>
<file>mockfiles/images/point_light_gradient@2x.png</file>
<file>mockfiles/images/area_light_gradient.png</file>
<file>mockfiles/images/area_light_gradient@2x.png</file>
<file>mockfiles/images/fit_active.png</file>
<file>mockfiles/images/fit_active@2x.png</file>
<file>mockfiles/images/fit_selected.png</file>
<file>mockfiles/images/fit_selected@2x.png</file>
<file>mockfiles/images/local.png</file>
<file>mockfiles/images/local@2x.png</file>
<file>mockfiles/images/global.png</file>
<file>mockfiles/images/global@2x.png</file>
<file>mockfiles/images/ortho.png</file>
<file>mockfiles/images/ortho@2x.png</file>
<file>mockfiles/images/persp.png</file>
<file>mockfiles/images/persp@2x.png</file>
<file>mockfiles/images/edit_light_off.png</file>
<file>mockfiles/images/edit_light_off@2x.png</file>
<file>mockfiles/images/edit_light_on.png</file>
<file>mockfiles/images/edit_light_on@2x.png</file>
<file>mockfiles/images/spot_light_gradient.png</file>
<file>mockfiles/images/spot_light_gradient@2x.png</file>
</qresource>
</RCC>

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