class QFrame;
class Monitor;
+class GeometryWidget;
class EffectStackEdit : public QScrollArea
{
void setFrameSize(QPoint p);
/** @brief Tells the parameters to update their timecode format according to KdenliveSettings. */
void updateTimecodeFormat();
+ /** @brief Returns true if this effect wants to keep track of current position in clip. */
+ bool effectNeedsSyncPosition() const;
private:
/** @brief Deletes all parameter widgets. */
QPoint m_frameSize;
KeyframeEdit *m_keyframeEditor;
Monitor *m_monitor;
+ GeometryWidget *m_geometryWidget;
public slots:
/** @brief Called when an effect is selected, builds the UIĀ for this effect. */
- void transferParamDesc(const QDomElement d, int pos, int in, int out, bool isEffect = true);
+ void transferParamDesc(const QDomElement &d, ItemInfo info, bool isEffect = true);
/** @brief Called whenever(?) some parameter is changed in the gui.
*
/** @brief Pass position changes of the timeline cursor to the effects to keep their local timelines in sync. */
void slotSyncEffectsPos(int pos);
+
+private slots:
+ void slotStartFilterJobAction();
signals:
- void parameterChanged(const QDomElement, const QDomElement);
+ void parameterChanged(const QDomElement &, const QDomElement &);
void seekTimeline(int);
void displayMessage(const QString&, int);
void checkMonitorPosition(int);
void syncEffectsPos(int pos);
- void showComment(const QString&);
+ void showComments(bool show);
+ void effectStateChanged(bool enabled);
+ /** @brief Start an MLT filter job on this clip. */
+ void startFilterJob(const QString &filterName, const QString &filterParams, const QString &finalFilterName, const QString &consumer, const QString &consumerParams, const QString &properties);
};
#endif