void Widget_CompSelect::new_instance(etl::handle<studio::Instance> instance) { if(studio::App::shutdown_in_progress) return; assert(instance); etl::loose_handle<studio::Instance> loose_instance(instance); instance->synfigapp::Instance::signal_filename_changed().connect(sigc::mem_fun(*this,&Widget_CompSelect::refresh)); instance->synfigapp::Instance::signal_filename_changed().connect( sigc::bind<etl::loose_handle<studio::Instance> >( sigc::mem_fun(*this,&Widget_CompSelect::set_selected_instance), loose_instance ) ); { std::string name=basename(instance->get_file_name()); instances.push_back(loose_instance); append(name); } }
Instance::Instance(etl::handle<synfig::Canvas> canvas, etl::handle< synfig::FileContainerTemporary > container): CVSInfo(canvas->get_file_name()), canvas_(canvas), file_system_(new FileSystemGroup(FileSystemNative::instance())), container_(container) { file_system_->register_system("#", container_); assert(canvas->is_root()); unset_selection_manager(); instance_map_[canvas]=this; } // END of synfigapp::Instance::Instance()