#ifndef KEYFRAMEVIEW_H #define KEYFRAMEVIEW_H #include #include struct Clip; class Effect; class EffectRow; class TimelineHeader; class KeyframeView : public QWidget { Q_OBJECT public: KeyframeView(QWidget* parent = 0); void delete_selected_keyframes(); TimelineHeader* header; long visible_in; long visible_out; private: long adjust_row_keyframe(EffectRow* row, long time); QVector selected_rows; QVector selected_keyframes; QVector rowY; long frame_diff; QVector rows; void mousePressEvent(QMouseEvent* event); void mouseMoveEvent(QMouseEvent* event); void mouseReleaseEvent(QMouseEvent *event); void paintEvent(QPaintEvent *event); void draw_keyframe(QPainter& p, int x, int y, bool darker); bool mousedown; bool dragging; bool keys_selected; bool select_rect; bool keyframeIsSelected(EffectRow* row, int keyframe); long drag_frame_start; long last_frame_diff; int rect_select_x; int rect_select_y; int rect_select_w; int rect_select_h; }; #endif // KEYFRAMEVIEW_H