1 /* === S Y N F I G ========================================================= */ 2 /*! \file docks/dock_timetrack.h 3 ** \brief Template Header 4 ** 5 ** $Id$ 6 ** 7 ** \legal 8 ** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley 9 ** Copyright (c) 2009, 2010 Carlos López 10 ** 11 ** This package is free software; you can redistribute it and/or 12 ** modify it under the terms of the GNU General Public License as 13 ** published by the Free Software Foundation; either version 2 of 14 ** the License, or (at your option) any later version. 15 ** 16 ** This package is distributed in the hope that it will be useful, 17 ** but WITHOUT ANY WARRANTY; without even the implied warranty of 18 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 19 ** General Public License for more details. 20 ** \endlegal 21 */ 22 /* ========================================================================= */ 23 24 /* === S T A R T =========================================================== */ 25 26 #ifndef __SYNFIG_STUDIO_DOCK_TIMETRACK_H 27 #define __SYNFIG_STUDIO_DOCK_TIMETRACK_H 28 29 /* === H E A D E R S ======================================================= */ 30 31 #include "docks/dockable.h" 32 #include <gtkmm/treeview.h> 33 #include <gtkmm/scrollbar.h> 34 #include "instance.h" 35 #include "docks/dock_canvasspecific.h" 36 37 /* === M A C R O S ========================================================= */ 38 39 /* === T Y P E D E F S ===================================================== */ 40 41 /* === C L A S S E S & S T R U C T S ======================================= */ 42 43 namespace studio { 44 class Widget_Timeslider; 45 class Widget_Keyframe_List; 46 47 class Dock_Timetrack : public Dock_CanvasSpecific 48 { 49 Gtk::HScrollbar* hscrollbar_; 50 Gtk::VScrollbar* vscrollbar_; 51 Widget_Timeslider* widget_timeslider_; 52 Widget_Keyframe_List* widget_kf_list_; 53 Gtk::Table* table_; 54 Gtk::TreeView *mimic_tree_view; 55 56 protected: 57 virtual void init_canvas_view_vfunc(etl::loose_handle<CanvasView> canvas_view); 58 virtual void changed_canvas_view_vfunc(etl::loose_handle<CanvasView> canvas_view); 59 60 void refresh_selected_param(); 61 //animation render description change signal handler 62 void refresh_rend_desc(); 63 64 public: 65 66 67 Dock_Timetrack(); 68 ~Dock_Timetrack(); 69 70 private: 71 //! Signal handler for studio::LayerTree::signal_param_tree_header_height_changed 72 /* \see studio::LayerTree::signal_param_tree_header_height_changed */ 73 void on_update_header_height( int header_height); 74 }; // END of Dock_Timetrack 75 76 }; // END of namespace studio 77 78 /* === E N D =============================================================== */ 79 80 #endif 81