File indexing completed on 2024-04-21 04:51:33
0001 /* 0002 SPDX-FileCopyrightText: 2017 Nicolas Carion 0003 SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0004 */ 0005 0006 #pragma once 0007 0008 #include "assets/assetlist/view/assetlistwidget.hpp" 0009 #include "kdenlivesettings.h" 0010 0011 class EffectFilter; 0012 class EffectTreeModel; 0013 class EffectListWidgetProxy; 0014 class KActionCategory; 0015 class QMenu; 0016 0017 /** @class EffectListWidget 0018 @brief This class is a widget that display the list of available effects 0019 */ 0020 class EffectListWidget : public AssetListWidget 0021 { 0022 Q_OBJECT 0023 0024 public: 0025 EffectListWidget(QWidget *parent = Q_NULLPTR); 0026 ~EffectListWidget() override; 0027 bool isEffect() const override { return true; } 0028 void setFilterType(const QString &type) override; 0029 bool isAudio(const QString &assetId) const override; 0030 /** @brief Return mime type used for drag and drop. It will be kdenlive/effect*/ 0031 QString getMimeType(const QString &assetId) const override; 0032 void reloadEffectMenu(QMenu *effectsMenu, KActionCategory *effectActions); 0033 void reloadCustomEffectIx(const QModelIndex &index) override; 0034 void reloadTemplates() override; 0035 void editCustomAsset(const QModelIndex &index) override; 0036 void exportCustomEffect(const QModelIndex &index) override; 0037 0038 public Q_SLOTS: 0039 void reloadCustomEffect(const QString &path) override; 0040 0041 Q_SIGNALS: 0042 void reloadFavorites(); 0043 };