Mercurial > hg > dmlib
view edtimeline.h @ 426:cbf65b81e5b3
Renamed TODO.txt to TODO.jss, as this is only pertinent to JSS parts. And
somewhat outdated.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Sat, 03 Nov 2012 09:20:42 +0200 |
parents | d34922e6a244 |
children | a4666c9e1336 |
line wrap: on
line source
#ifndef EDTIMELINE_H #define EDTIMELINE_H #include <QWidget> #include <QCheckBox> #include <QVBoxLayout> #include <QLabel> #include <QLineEdit> #include "edtlobj.h" #include "dmengine.h" class QEDTimelineTrackDisplay : public QWidget { Q_OBJECT public: DMTimelineTrack *track; QEDTimelineTrackDisplay(QWidget *parent = 0); void setTrack(DMTimelineTrack *mtrack); float getTimeScale(float value); float getTimeFromCoord(float value); void setTime(const int mtime); void setOffset(const int moffs); void setScale(const float mscale); QSize minimumSizeHint() const; QSize sizeHint() const; protected: void mousePressEvent(QMouseEvent *event); void mouseMoveEvent(QMouseEvent *event); void mouseReleaseEvent(QMouseEvent *event); void paintEvent(QPaintEvent *event); private: bool dragging; QPoint dragPoint; int dragOffs; // milliseconds float scale; int time, offs; }; class QEDTimelineTrackView : public QWidget { Q_OBJECT private: QLineEdit *infoName; QLabel *infoData; QCheckBox *enabledCheck; public: QEDTimelineTrackDisplay *track; QEDTimelineTrackView(QWidget *parent = 0); void setTrack(DMTimelineTrack *mtrack); void update(); private slots: void slotTrackEnabledChanged(bool); void slotTrackNameChanged(const QString & text); signals: void trackChanged(); }; class QEDTimelineView : public QWidget { Q_OBJECT private: QVBoxLayout *layout; EDTimelineObject *tl; QList<QEDTimelineTrackView *> tracks; public: QEDTimelineView(QWidget *parent = 0); void setTimeline(EDTimelineObject *mtl); void setTime(const int mtime); void setOffset(const int moffs); void setScale(const float mscale); private slots: void slotTimelineChanged(); signals: void timelineChanged(); }; #endif