#include <QGraphicsScene>
#include <QGraphicsLineItem>
#include <QDomElement>
+
#define FRAME_SIZE 90
+#include "customtrackscene.h"
#include "ui_timeline_ui.h"
class ClipItem;
class CustomTrackView;
class KdenliveDoc;
class CustomRuler;
+class DocClipBase;
class TrackView : public QWidget {
Q_OBJECT
void refresh() ;
int outPoint() const;
int inPoint() const;
- int currentZoom() const;
int fitZoom() const;
public slots:
- void slotDeleteClip(int clipId);
+ void slotDeleteClip(const QString &clipId);
void slotChangeZoom(int factor);
void setDuration(int dur);
+ void slotSetZone(QPoint p);
private:
Ui::TimeLine_UI *view;
double m_scale;
int m_projectTracks;
QString m_editMode;
- QGraphicsScene *m_scene;
- uint m_currentZoom;
+ CustomTrackScene *m_scene;
KdenliveDoc *m_doc;
QVBoxLayout *m_tracksLayout;
QScrollArea *m_scrollArea;
QFrame *m_scrollBox;
QVBoxLayout *m_tracksAreaLayout;
+ QString m_documentErrors;
void parseDocument(QDomDocument doc);
- int slotAddAudioTrack(int ix, QDomElement xml);
- int slotAddVideoTrack(int ix, QDomElement xml);
+ int slotAddProjectTrack(int ix, QDomElement xml, bool locked);
+ DocClipBase *getMissingProducer(const QString id) const;
private slots:
void setCursorPos(int pos);
void moveCursorPos(int pos);
- void slotClipItemSelected(ClipItem*);
- void slotTransitionItemSelected(Transition*);
+ void slotTransitionItemSelected(Transition*, bool update);
void slotRebuildTrackHeaders();
+ void slotChangeTrackLock(int ix, bool lock);
signals:
void mousePosition(int);
void cursorMoved();
- void clipItemSelected(ClipItem*);
- void transitionItemSelected(Transition*);
+ void transitionItemSelected(Transition*, bool);
+ void zoneMoved(int, int);
+ void insertTrack(int);
+ void deleteTrack(int);
+ void changeTrack(int);
};
#endif