Olive
grapheditor.h
1 #ifndef GRAPHEDITOR_H
2 #define GRAPHEDITOR_H
3 
4 #include <QDockWidget>
5 
6 class GraphView;
7 class TimelineHeader;
8 class QPushButton;
9 class EffectRow;
10 class QHBoxLayout;
11 class LabelSlider;
12 class QLabel;
13 class KeyframeNavigator;
14 
15 class GraphEditor : public QDockWidget {
16  Q_OBJECT
17 public:
18  GraphEditor(QWidget* parent = 0);
19  void update_panel();
20  void set_row(EffectRow* r);
21  bool view_is_focused();
22  bool view_is_under_mouse();
23  void delete_selected_keys();
24  void select_all();
25 private:
26  GraphView* view;
27  TimelineHeader* header;
28  QHBoxLayout* value_layout;
29  QVector<LabelSlider*> slider_proxies;
30  QVector<QPushButton*> slider_proxy_buttons;
31  QVector<LabelSlider*> slider_proxy_sources;
32  QLabel* current_row_desc;
33  EffectRow* row;
34  KeyframeNavigator* keyframe_nav;
35  QPushButton* linear_button;
36  QPushButton* bezier_button;
37  QPushButton* hold_button;
38 private slots:
39  void set_key_button_enabled(bool e, int type);
40  void passthrough_slider_value();
41  void set_keyframe_type();
42  void set_field_visibility(bool b);
43 };
44 
45 #endif // GRAPHEDITOR_H
Definition: keyframenavigator.h:9
Definition: timelineheader.h:11
Definition: effectrow.h:17
Definition: graphview.h:12
Definition: grapheditor.h:15
The LabelSlider class.
Definition: labelslider.h:20