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

/*!
    \page qtquick-connection-view.html
    \previouspage qtquick-properties-view.html
    \nextpage qtquick-states-view.html
    \sa {Working with Connections}

    \ingroup studio-views

    \title Connections

    \brief Add functionality to the UI by creating connections between components,
    signals, and component properties.

    The \uicontrol {Connections} view is a collection of views that enable you
    to create connections between components and the application, to bind
    component properties together, and to add custom properties for components.

    \image qmldesigner-connections.webp "The Connections view"

    The \l{glossary-component}{components} of the application UI and the
    application logic need to communicate with each other. For example, a
    button needs to know that the user has clicked it. The button may then
    change color to indicate its state or perform an action. Further, the
    application needs to know whether the user clicked the button because
    it may need to relay this clicking event to other applications. For
    this purpose, a button typically contains a \l{Mouse Area} component,
    which can receive different pointer events and emit \e signals in
    response to them.

    Another way to connect components is to bind their \l{Properties}
    {properties} together. A component's property can be assigned a static
    value which stays constant until it is explicitly changed. To make the
    UI more dynamic, you can use \e {property bindings}. This means that
    you can specify relationships between component properties so that when
    the value of a property changes, the values of any properties that are
    bound to it are updated accordingly.

    Each preset component has a set of \l{Specifying Component Properties}
    {preset properties} that you can specify values for. You can add
    custom properties that would not otherwise exist for a particular
    \l{Component Types}{component type}.
*/
