X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Ftrackview.h;h=755b8e11173c17c89da22afdb3ba519e651ee7c7;hb=56aee6aedeeed3efd10ada8fe3c229eddc01ef05;hp=e3fecfccd9c4d78d4291bcc1831afbead21229e0;hpb=6e543bf4b51f79c045bda52214eca369ca037eac;p=kdenlive diff --git a/src/trackview.h b/src/trackview.h index e3fecfcc..755b8e11 100644 --- a/src/trackview.h +++ b/src/trackview.h @@ -40,7 +40,6 @@ #include "definitions.h" class ClipItem; -class Transition; class CustomTrackView; class KdenliveDoc; class CustomRuler; @@ -51,7 +50,7 @@ class TrackView : public QWidget, public Ui::TimeLine_UI Q_OBJECT public: - explicit TrackView(KdenliveDoc *doc, bool *ok, QWidget *parent = 0); + explicit TrackView(KdenliveDoc *doc, const QList & actions, bool *ok, QWidget *parent = 0); virtual ~ TrackView(); void setEditMode(const QString & editMode); const QString & editMode() const; @@ -76,15 +75,20 @@ public: * Parses all tracks to check if there is audio data. */ bool checkProjectAudio() const; + void checkTrackHeight(); + void updateProfile(); + void updatePalette(); + protected: - virtual void keyPressEvent(QKeyEvent * event); + void keyPressEvent(QKeyEvent * event); public slots: void slotDeleteClip(const QString &clipId); void slotChangeZoom(int horizontal, int vertical = -1); void setDuration(int dur); - void slotSetZone(QPoint p, bool updateDocumentProperties = true); - + void slotSetZone(const QPoint &p, bool updateDocumentProperties = true); + /** @brief Save a snapshot image of current timeline view */ + void slotSaveTimelinePreview(const QString &path); private: CustomRuler *m_ruler; CustomTrackView *m_trackview; @@ -93,15 +97,26 @@ private: int m_projectTracks; QString m_editMode; CustomTrackScene *m_scene; + /** @brief A list of producer ids to be replaced when opening a corrupted document*/ + QMap m_replacementProducerIds; KdenliveDoc *m_doc; int m_verticalZoom; QString m_documentErrors; - void parseDocument(QDomDocument doc); - int slotAddProjectTrack(int ix, QDomElement xml, bool locked); - DocClipBase *getMissingProducer(const QString id) const; + QList m_trackActions; + + void parseDocument(const QDomDocument &doc); + int slotAddProjectTrack(int ix, QDomElement xml, bool locked, const QDomNodeList &producers); + DocClipBase *getMissingProducer(const QString &id) const; void adjustTrackHeaders(); + /** @brief Add effects from the xml. Returns true if some effect was upgraded, false if everything went fine.*/ void slotAddProjectEffects(QDomNodeList effects, QDomElement parentNode, ClipItem *clip, int trackIndex); + + /** @brief Returns a kdenlive effect xml description from an effect tag / id */ + QDomElement getEffectByTag(const QString &effecttag, const QString &effectid); + + /** @brief Adjust kdenlive effect xml parameters to the MLT value*/ + void adjustparameterValue(QDomNodeList clipeffectparams, const QString ¶mname, const QString ¶mvalue); private slots: void setCursorPos(int pos); @@ -117,7 +132,7 @@ private slots: /** @brief Changes the name of a track. * @param ix Number of the track * @param name New name */ - void slotRenameTrack(int ix, QString name); + void slotRenameTrack(int ix, const QString &name); void slotRepaintTracks(); /** @brief Adjusts the margins of the header area. @@ -134,12 +149,10 @@ signals: void mousePosition(int); void cursorMoved(); void zoneMoved(int, int); - void insertTrack(int); - void deleteTrack(int); void configTrack(int); void updateTracksInfo(); void setZoom(int); - void showTrackEffects(int, TrackInfo); + void showTrackEffects(int, const TrackInfo&); }; #endif