Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qsvgcsseasing_p.h
Go to the documentation of this file.
1// Copyright (C) 2025 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3// Qt-Security score:significant reason:default
4
5
6#ifndef QSVGCSSEASING_P_H
7#define QSVGCSSEASING_P_H
8
9//
10// W A R N I N G
11// -------------
12//
13// This file is not part of the Qt API. It exists purely as an
14// implementation detail. This header file may change from version to
15// version without notice, or even be removed.
16//
17// We mean it.
18//
19
20#include <QtSvg/private/qtsvgglobal_p.h>
21#include <QtSvg/private/qsvgeasinginterface_p.h>
22#include <QtSvg/private/qsvgcssvalues_p.h>
23#include <QtCore/qeasingcurve.h>
24#include <QtCore/qpoint.h>
25
27
28class Q_SVG_EXPORT QSvgCssEasing : public QSvgEasingInterface
29{
30public:
31 explicit QSvgCssEasing(QSvgCssValues::EasingFunction easingFunction);
32 ~QSvgCssEasing() override;
33
34 QSvgCssValues::EasingFunction easingFunction() const;
35
36private:
37 QSvgCssValues::EasingFunction m_easingFunction;
38};
39
40class Q_SVG_EXPORT QSvgCssCubicBezierEasing : public QSvgCssEasing
41{
42public:
43 explicit QSvgCssCubicBezierEasing(QSvgCssValues::EasingFunction easingFunction, QPointF c1, QPointF c2);
44 ~QSvgCssCubicBezierEasing() override;
45
46 virtual qreal progress(qreal t) const override;
47 QPointF c1() const;
48 QPointF c2() const;
49
50private:
51 QEasingCurve m_easingCurve;
52 QPointF m_c1, m_c2;
53};
54
55class Q_SVG_EXPORT QSvgCssStepsEasing : public QSvgCssEasing
56{
57public:
58 explicit QSvgCssStepsEasing(quint32 stops, QSvgCssValues::StepPosition position);
59 ~QSvgCssStepsEasing() override;
60
61 virtual qreal progress(qreal t) const override;
62 quint32 stops() const;
63 QSvgCssValues::StepPosition stepPosition();
64
65private:
66 quint32 m_stops;
67 QSvgCssValues::StepPosition m_stepPosition;
68};
69
70using QSvgCssEasingPtr = std::unique_ptr<QSvgCssEasing>;
71
72QT_END_NAMESPACE
73
74#endif // QSVGCSSEASING_P_H
Combined button and popup list for selecting options.