// Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only

/*!
    \page quick-components-view.html
    \previouspage studio-material-editor.html
    \nextpage quick-assets.html
    \sa {Using Components}

    \ingroup studio-views

    \title Components

    \brief Select preset components and your own components to use in your application.

    The \uicontrol Component view lists the available components.

    \image qtquick-components-tab.png "Components view"

    \uicontrol Components displays modules that have been
    added to your project. In many modules the components have been further
    organized into different categories. The modules contain visual components,
    such as basic shapes, UI controls, and 3D components, and add functionality
    to the project. All components have a type.

    The UI controls can be styled to have the look and feel of a particular
    operating system, such as \macOS, Windows, Android, or iOS.

    Some modules have no visible components. For example, the
    \uicontrol {Qt.Multimedia} module adds support for audio and video
    files to your UI.

    \section2 Component types

    You can add the following types of components to your project:

    \list
        \li \l Shapes
        \li \l Text
        \li \l Images
        \li \l {UI controls}
        \li \l {User interaction methods}
        \li \l {Lists and other data models}
        \li \l {2D effects}
        \li \l {Logic Helpers}
        \li \l Animations
        \li \l{3D Views}
        \li \l{Node}
        \li \l{Group}
        \li \l{Instanced rendering}
        \li \l{Skeletal animation}
        \li \l{3D models}
        \li \l{Materials and shaders}
        \li \l{Textures}
        \li \l{3D materials}
        \li \l{3D effects}
        \li \l{Custom shaders}
        \li \l{Lights}
        \li \l{Cameras}
        \li \l{Scene Environments}
        \li \l{Morph Target}
        \li \l{Repeater3D}
        \li \l{Particles}
    \endlist

    For more information about creating your own components, see
    \l{Creating custom components}.

    \section2 Adding and removing modules

    When you \l{Creating projects}{create projects}, modules typically needed in
    them are added by default. For example, an empty application project
    contains basic components and UI controls, while a 3D application project
    contains additional 3D components.

    To view the list of available modules, select \imageplus
    . Most commonly used modules are placed at the top of the list in
    alphabetical order. You can search for components and modules by entering
    search criteria in the \uicontrol Search field.

    Select the module to add it to \uicontrol Components.

    \image qtquick-components-tab-add.png "Select Modules to Add"

    This adds an \e {import statement} to the component code that you
    can see in the \l {Code} view. For example, if you add the
    \uicontrol QtQuick.Controls module, the following import statement
    is added to the code: \c {import QtQuick.Controls}.

    Since the added components and modules are packaged with your UI into the
    final application package, it is recommended that you select
    \uicontrol {Remove Module} to remove the ones you don't use in the project.

*/
