X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-studio%2Ftrunk%2Fsrc%2Fgtkmm%2Fwidget_keyframe_list.h;h=1e41770bfb271d1353e8024923ce725a53860e2b;hb=9459638ad6797b8139f1e9f0715c96076dbf0890;hp=3b83722ee8d45ae5b5f6568ee2081911baf7015b;hpb=eb5f135abc7ac06543500f32362ab56d75370be5;p=synfig.git diff --git a/synfig-studio/trunk/src/gtkmm/widget_keyframe_list.h b/synfig-studio/trunk/src/gtkmm/widget_keyframe_list.h index 3b83722..1e41770 100644 --- a/synfig-studio/trunk/src/gtkmm/widget_keyframe_list.h +++ b/synfig-studio/trunk/src/gtkmm/widget_keyframe_list.h @@ -30,8 +30,10 @@ #include #include +#include #include #include +#include /* === M A C R O S ========================================================= */ @@ -44,15 +46,27 @@ namespace studio { class Widget_Keyframe_List : public Gtk::DrawingArea { + //! Tooltips class. It is deprecated since gtkmm 2.12 + //! replace with Tooltip class or use the own tooltip widget's members + Gtk::Tooltips tooltips; + + //! The canvas interface being watched + etl::loose_handle canvas_interface_; + //! Time adjustment window Gtk::Adjustment adj_default; Gtk::Adjustment *adj_timescale; //!The list of keyframes to be drawn on the widget and moved with mouse - synfig::KeyframeList kf_list_; + synfig::KeyframeList default_kf_list_; + mutable synfig::KeyframeList* kf_list_; //! The frames per second of the canvas - synfig::Time fps; + float fps; + + //! Time radius to click a keyframe + synfig::Time time_ratio; + //!True if it is editable. Keyframes can be moved. bool editable_; @@ -64,6 +78,8 @@ class Widget_Keyframe_List : public Gtk::DrawingArea //!Holds the selected keyframe of the keyframe list synfig::Keyframe selected_kf; + synfig::Keyframe selected_none; + bool selected_; //!The time of the selected keyframe synfig::Time selected_kf_time; @@ -84,10 +100,10 @@ public: ~Widget_Keyframe_List(); //!Loads a new keyframe list on the widget. - void set_kf_list(const synfig::KeyframeList& x); + void set_kf_list(synfig::KeyframeList* x); //!Member for private data. - const synfig::KeyframeList& get_kf_list()const { return kf_list_; } + synfig::KeyframeList* get_kf_list()const { return kf_list_; } //!Member for private data void set_editable(bool x=true) { editable_=x; } @@ -105,8 +121,16 @@ public: //! Set the time adjustment and proper connects its change signals void set_time_adjustment(Gtk::Adjustment *x); + //! Set the fps + void set_fps(float x); + + //! Set the canvas interface + void set_canvas_interface(etl::loose_handle h); + //! Performs the keyframe movement. Returns true if it was sucessful - bool perform_move_kf(); + //! @return true: if success otherwise false + //! |delta=false: permorm normal move. true: perform delta movement + bool perform_move_kf(bool delta); @@ -120,6 +144,7 @@ public: }; // END of namespace studio + /* === E N D =============================================================== */ #endif