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

/*!
    \page qtquick-curve-editor.html
    \previouspage qtquick-timeline-view.html
    \nextpage qtquick-text-editor.html

    \ingroup studio-views

    \title Curves

    \brief View and modify the animation curve.

    The \uicontrol {Curves} view shows the interpolated values of an animated
    property over the animation range.

    \image studio-curve-editor.webp "Curves"

    When you edit an animation curve, you implicitly edit the
    \l{Editing Easing Curves}{easing curves} that the underlying system uses
    to define an animation. The animation curve is an extension to visualize
    both the value of a keyframe and the interpolation between keyframes
    simultaneously.

    You can use the toolbar buttons to add \uicontrol Linear, \uicontrol Step,
    or \uicontrol Spline interpolation between keyframes.

    To apply interpolation between keyframes:
    \list 1
        \li Select the keyframes. To select multiple keyframes, press and hold
        \key Ctrl, and then select them.
        \li Select \inlineimage icons/easing-curve-linear-icon.png (\uicontrol Linear),
        \inlineimage icons/easing-curve-step-icon.png (\uicontrol Step) or
        \inlineimage icons/easing-curve-spline.png (\uicontrol Spline) depending on
        which interpolation method you want to use.
    \endlist

    When you set interpolation to \uicontrol Spline, handles appear in
    \uicontrol {Curves} that you can use to modify the curve. Select
    \inlineimage icons/easing-curve-unify.png (\uicontrol Unify) to lock the handle on the
    left of a keyframe to the one
    on the right of it so that moving the left handle also moves the right
    handle.

    If the component that contains the animated property has been locked
    in \l Navigator, you can select \inlineimage icons/lockon.png
    to unlock it. You can also lock individual easing curves for editing.

    To lock an animation curve, hover the mouse over the property in the list,
    and then select \inlineimage icons/lockoff.png
    .

    To pin an animation curve, hover the mouse over the property in the list,
    and then select \inlineimage icons/pin.png
    .

    \section1 Editing Animation Curves

    To edit animation curves:

    \list 1
        \li In the \l Timeline view, animate at least one property value by
            \l{Managing Keyframes}{inserting keyframes} for it.
        \li Select \uicontrol View > \uicontrol Views >
            \uicontrol {Curves} to open the animation curve editor.
        \li Right-click in \uicontrol {Curves}, and select
            \uicontrol {Insert Keyframe} to add a keyframe.
        \li Select properties in the list to display the easing curves attached to them.
            To select multiple properties, press and hold \key Ctrl, and then select them.
    \endlist

    Your changes are automatically saved when you close the view.

    \section1 Deleting Keyframes in Curves

    To delete the selected keyframe, select \uicontrol {Delete Selected Keyframes}
    in the context menu.
*/
