26 #ifndef __SYNFIG_STUDIO_CHILDRENTREE_H 
   27 #define __SYNFIG_STUDIO_CHILDRENTREE_H 
   31 #include <gtkmm/treeview.h> 
   32 #include <gtkmm/treestore.h> 
   33 #include <gtkmm/tooltip.h> 
   34 #include <gtkmm/table.h> 
   35 #include <gtkmm/box.h> 
   36 #include <gtkmm/adjustment.h> 
   37 #include <gtkmm/scale.h> 
   38 #include <gtkmm/button.h> 
   43 #include <synfig/valuenodes/valuenode_animated.h> 
   55 class CellRenderer_TimeTrack;
 
   56 class CellRenderer_ValueBase;
 
   82     Gtk::TreeView tree_view;
 
   86     Glib::RefPtr<ChildrenTreeStore> children_tree_store_;
 
   90     Gtk::TreeView::Column* column_time_track;
 
   94     sigc::signal<void,synfigapp::ValueDesc,synfig::ValueBase> signal_edited_value_;
 
   96     sigc::signal<bool, int, Gtk::TreeRow, ColumnID> signal_user_click_;
 
   98     sigc::signal<void,synfigapp::ValueDesc,std::set<synfig::Waypoint,std::less<synfig::UniqueID> >,
int> signal_waypoint_clicked_childrentree_;
 
  100     Gtk::Button *button_raise;
 
  101     Gtk::Button *button_lower;
 
  102     Gtk::Button *button_duplicate;
 
  103     Gtk::Button *button_delete;
 
  119     void on_edited_value(
const Glib::ustring&path_string,synfig::ValueBase value);
 
  121     void on_waypoint_clicked_childrentree(
const etl::handle<synfig::Node>& node,
const synfig::Time&,
const synfig::Time&, 
const synfig::Time&,
int button);
 
  123     bool on_tree_view_query_tooltip(
int x, 
int y, 
bool keyboard_tooltip, 
const Glib::RefPtr<Gtk::Tooltip>& tooltip);
 
  125     bool on_tree_event(GdkEvent *event);
 
  127     void on_selection_changed();
 
  129     void on_dirty_preview();
 
  132     void on_raise_pressed();
 
  134     void on_lower_pressed();
 
  136     void on_duplicate_pressed();
 
  138     void on_delete_pressed();
 
  150     Glib::RefPtr<Gtk::TreeSelection> 
get_selection() { 
return tree_view.get_selection(); }
 
  151     Glib::SignalProxy1< bool,GdkEvent* >  
signal_event () { 
return tree_view.signal_event(); }
 
  156     void set_model(Glib::RefPtr<ChildrenTreeStore> children_tree_store_);
 
  163     sigc::signal<void,synfigapp::ValueDesc,synfig::ValueBase>& 
signal_edited_value() { 
return signal_edited_value_; }
 
  165     sigc::signal<bool,int, Gtk::TreeRow, ColumnID>& 
signal_user_click() { 
return signal_user_click_; }
 
  169     etl::handle<synfigapp::SelectionManager> 
get_selection_manager() { 
return children_tree_store_->canvas_interface()->get_selection_manager(); }