File indexing completed on 2024-12-22 04:36:18

0001 /*
0002 SPDX-FileCopyrightText: 2018 Jean-Baptiste Mardelle <jb@kdenlive.org>
0003 This file is part of Kdenlive. See www.kdenlive.org.
0004 
0005 SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0006 */
0007 
0008 #pragma once
0009 
0010 #include "assets/keyframes/model/keyframemonitorhelper.hpp"
0011 
0012 #include <QObject>
0013 #include <QPersistentModelIndex>
0014 #include <QVariant>
0015 
0016 #include <memory>
0017 
0018 class Monitor;
0019 class AssetParameterModel;
0020 
0021 class CornersHelper : public KeyframeMonitorHelper
0022 {
0023     Q_OBJECT
0024 
0025 public:
0026     /** @brief Construct a keyframe list bound to the given effect
0027        @param init_value is the value taken by the param at time 0.
0028        @param model is the asset this parameter belong to
0029        @param index is the index of this parameter in its model
0030      */
0031     explicit CornersHelper(Monitor *monitor, std::shared_ptr<AssetParameterModel> model, QPersistentModelIndex index, QObject *parent = nullptr);
0032     /** @brief Send data update to the monitor
0033      */
0034     void refreshParams(int pos) override;
0035 
0036 private Q_SLOTS:
0037     void slotUpdateFromMonitorData(const QVariantList &v) override;
0038 };