#include <QEvent>
#include <QTimer>
#include <QShortcut>
+#include <QMap>
+#include <QString>
+#include <QImage>
#include <KXmlGuiWindow>
#include <KTextEdit>
static EffectsList audioEffects;
static EffectsList customEffects;
static EffectsList transitions;
+
+ /** @brief Cache for luma files thumbnails. */
+ static QMap <QString,QImage> m_lumacache;
+
protected:
/** @brief Closes the window.
QStringList m_pluginFileNames;
QByteArray m_timelineState;
void loadTranscoders();
- void loadStabilize();
+ void loadClipActions();
QPixmap createSchemePreviewIcon(const KSharedConfigPtr &config);
/** @brief Checks that the Kdenlive mime type is correctly installed.
StopmotionWidget *m_stopmotion;
QTime m_timer;
-
+ /** @brief The last selected clip in timeline. */
+ ClipItem *m_mainClip;
/** @brief Update statusbar stylesheet (in case of color theme change). */
void setStatusBarStyleSheet(const QPalette &p);
void slotSelectAddTimelineTransition();
void slotAddVideoEffect(QAction *result);
void slotAddTransition(QAction *result);
- void slotAddProjectClip(KUrl url, const QString &comment = QString());
+ void slotAddProjectClip(KUrl url, stringMap data = stringMap());
void slotAddProjectClipList(KUrl::List urls);
void slotShowClipProperties(DocClipBase *clip);
void slotShowClipProperties(QList <DocClipBase *>cliplist, QMap<QString, QString> commonproperties);
void slotClipInProjectTree();
//void slotClipToProjectTree();
void slotSplitAudio();
+ void slotSetAudioAlignReference();
+ void slotAlignAudio();
void slotUpdateClipType(QAction *action);
void slotShowTimeline(bool show);
void slotMaximizeCurrent(bool show);
void slotTranscode(KUrl::List urls = KUrl::List());
- void slotStabilize();
+ void slotStartClipAction();
void slotTranscodeClip();
/** @brief Archive project: creates a copy of the project file with all clips in a new folder. */
void slotArchiveProject();
void slotDownloadResources();
void slotChangePalette();
+ /** @brief Save current timeline clip as mlt playlist. */
+ void slotSaveTimelineClip();
+ /** @brief Process keyframe data sent from a clip to effect / transition stack. */
+ void slotProcessImportKeyframes(GRAPHICSRECTITEM type, const QString& data);
+ /** @brief Move playhead to mouse curser position if defined key is pressed */
+ void slotAlignPlayheadToMousePos();
signals:
Q_SCRIPTABLE void abortRenderJob(const QString &url);