void Dock_Layers::changed_canvas_view_vfunc(etl::loose_handle<CanvasView> canvas_view) { if(canvas_view) { Gtk::Widget* tree_view(canvas_view->get_ext_widget(get_name())); add(*tree_view); tree_view->show(); action_group_new_layers->set_sensitive(true); if(layer_action_manager) { layer_action_manager->set_layer_tree(dynamic_cast<LayerTree*>(canvas_view->get_ext_widget(get_name()+"_cmp"))); layer_action_manager->set_canvas_interface(canvas_view->canvas_interface()); layer_action_manager->refresh(); } } else { action_group_new_layers->set_sensitive(false); if(layer_action_manager) { layer_action_manager->clear(); layer_action_manager->set_canvas_interface(0); layer_action_manager->set_layer_tree(0); } clear_previous(); } }
void Dock_Keyframes::changed_canvas_view_vfunc(etl::loose_handle<CanvasView> canvas_view) { if(canvas_view) { Gtk::Widget* tree_view(canvas_view->get_ext_widget(get_name())); add(*tree_view); tree_view->show(); keyframe_action_manager->set_keyframe_tree(dynamic_cast<KeyframeTree*>(canvas_view->get_ext_widget(get_name()))); keyframe_action_manager->set_canvas_interface(canvas_view->canvas_interface()); keyframe_action_manager->refresh(); } else { if(keyframe_action_manager) { keyframe_action_manager->clear(); keyframe_action_manager->set_keyframe_tree(0); keyframe_action_manager->set_canvas_interface(0); } clear_previous(); } }
void Dock_Keyframes::init_canvas_view_vfunc(etl::loose_handle<CanvasView> canvas_view) { Glib::RefPtr<KeyframeTreeStore> keyframe_tree_store; keyframe_tree_store=KeyframeTreeStore::create(canvas_view->canvas_interface()); KeyframeTree* keyframe_tree(new KeyframeTree()); keyframe_tree->set_model(keyframe_tree_store); keyframe_tree->set_editable(true); canvas_view->set_tree_model(get_name(),keyframe_tree_store); canvas_view->set_ext_widget(get_name(),keyframe_tree); // keyframe actions status are connected to animation duration canvas_view->canvas_interface()->signal_rend_desc_changed().connect( sigc::mem_fun(*this,&studio::Dock_Keyframes::refresh_rend_desc) ); }
void Dock_MetaData::init_canvas_view_vfunc(etl::loose_handle<CanvasView> canvas_view) { Glib::RefPtr<MetaDataTreeStore> metadata_tree_store; metadata_tree_store=MetaDataTreeStore::create(canvas_view->canvas_interface()); MetaDataTree* metadata_tree(new MetaDataTree()); metadata_tree->set_model(metadata_tree_store); metadata_tree->set_editable(true); canvas_view->set_tree_model(get_name(),metadata_tree_store); canvas_view->set_ext_widget(get_name(),metadata_tree); }
void Dock_Layers::init_canvas_view_vfunc(etl::loose_handle<CanvasView> canvas_view) { Glib::RefPtr<LayerTreeStore> layer_tree_store; layer_tree_store=LayerTreeStore::create(canvas_view->canvas_interface()); canvas_view->set_tree_model(get_name(),layer_tree_store); //! layer_tree is registred thrue CanvasView::set_ext_widget //! and will be deleted during CanvasView::~CanvasView() //! \see CanvasView::set_ext_widget //! \see CanvasView::~CanvasView LayerTree* layer_tree(new LayerTree()); layer_tree->set_time_adjustment(canvas_view->time_adjustment()); layer_tree->signal_edited_value().connect( sigc::hide_return( sigc::bind(sigc::mem_fun(*canvas_view->canvas_interface(), &synfigapp::CanvasInterface::change_value), false) ) ); // (a) should be before (b), (b) should be before (c) canvas_view->set_ext_widget(get_name()+"_cmp",layer_tree); // (a) canvas_view->set_ext_widget(get_name(),&layer_tree->get_layer_tree_view()); canvas_view->set_ext_widget("params",&layer_tree->get_param_tree_view()); layer_tree->set_model(layer_tree_store); // (b) canvas_view->set_tree_model("params",layer_tree->get_param_tree_view().get_model()); // (c) /* canvas_view->layermenu.items().push_back(Gtk::Menu_Helpers::StockMenuElem(Gtk::StockID("gtk-delete"),Gtk::AccelKey("Delete"), sigc::mem_fun(*layer_tree, &LayerTree::on_delete_pressed)) ); */ // Hide the time bar if(canvas_view->get_canvas()->rend_desc().get_time_start()==canvas_view->get_canvas()->rend_desc().get_time_end()) canvas_view->hide_timebar(); layer_tree_store->rebuild(); present(); }
void Dock_LayerGroups::init_canvas_view_vfunc(etl::loose_handle<CanvasView> canvas_view) { Glib::RefPtr<LayerGroupTreeStore> layer_group_tree_store; layer_group_tree_store=LayerGroupTreeStore::create(canvas_view->canvas_interface()); LayerGroupTree* layer_group_tree(new LayerGroupTree()); layer_group_tree->set_model(layer_group_tree_store); layer_group_tree->signal_popup_layer_menu().connect(sigc::mem_fun(*canvas_view,&CanvasView::popup_layer_menu)); canvas_view->set_tree_model(get_name(),layer_group_tree_store); canvas_view->set_ext_widget(get_name(),layer_group_tree); }
void Dock_Children::init_canvas_view_vfunc(etl::loose_handle<CanvasView> canvas_view) { Glib::RefPtr<ChildrenTreeStore> children_tree_store; children_tree_store=ChildrenTreeStore::create(canvas_view->canvas_interface()); ChildrenTree* children_tree(new ChildrenTree()); children_tree->set_model(children_tree_store); children_tree->set_time_adjustment(canvas_view->time_adjustment()); canvas_view->set_tree_model(get_name(),children_tree_store); canvas_view->set_ext_widget(get_name(),children_tree); }
void Dock_LayerGroups::changed_canvas_view_vfunc(etl::loose_handle<CanvasView> canvas_view) { if(canvas_view) { Gtk::Widget* tree_view(canvas_view->get_ext_widget(get_name())); add(*tree_view); tree_view->show(); group_action_manager->set_group_tree(dynamic_cast<LayerGroupTree*>(tree_view)); group_action_manager->set_canvas_interface(canvas_view->canvas_interface()); group_action_manager->refresh(); } else { clear_previous(); group_action_manager->clear(); group_action_manager->set_canvas_interface(0); group_action_manager->set_group_tree(0); } }