]> git.sesse.net Git - kdenlive/blobdiff - src/mainwindow.h
Minor improvements to keyframe widget, allow resetting keyframes
[kdenlive] / src / mainwindow.h
index 21e3b03935d6485b78114ce868a6451efe8fd089..9efa6e4c741c8d1c26164ce2295559cec8ac8722 100644 (file)
@@ -28,6 +28,9 @@
 #include <QEvent>
 #include <QTimer>
 #include <QShortcut>
+#include <QMap>
+#include <QString>
+#include <QImage>
 
 #include <KXmlGuiWindow>
 #include <KTextEdit>
@@ -109,6 +112,10 @@ public:
     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.
@@ -298,7 +305,7 @@ private:
     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.
@@ -311,6 +318,10 @@ private:
 
     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);
 
 public slots:
     /** @brief Prepares opening @param url.
@@ -415,11 +426,12 @@ private slots:
     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 slotActivateEffectStackView(ClipItem* item = NULL, int ix = -1, bool raise = true);
+    void slotTimelineClipSelected(ClipItem* item, bool raise = true);
+    void slotTrackSelected(int index, TrackInfo info, bool raise = true);
     void slotActivateTransitionView(Transition *);
     void slotChangeTool(QAction * action);
     void slotChangeEdit(QAction * action);
@@ -481,11 +493,13 @@ private slots:
     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();
@@ -548,6 +562,12 @@ private slots:
     void slotElapsedTime();
     /** @brief Open the online services search dialog. */
     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, int maximum);
 
 signals:
     Q_SCRIPTABLE void abortRenderJob(const QString &url);