//while(correct_canvas->is_inline())correct_canvas=correct_canvas->parent();
Layer::LooseHandle loose_layer(x);
- add_connection(x,
+ add_connection(loose_layer,
sigc::connection::connection(
x->signal_added_to_group().connect(
sigc::bind(
*correct_canvas,
&Canvas::add_group_pair),
loose_layer))));
- add_connection(x,
+ add_connection(loose_layer,
sigc::connection::connection(
x->signal_removed_from_group().connect(
sigc::bind(
}
void
-Canvas::add_connection(etl::handle<Layer> layer, sigc::connection connection)
+Canvas::add_connection(Layer::LooseHandle layer, sigc::connection connection)
{
connections_[layer].push_back(connection);
}
void
-Canvas::disconnect_connections(etl::handle<Layer> layer)
+Canvas::disconnect_connections(Layer::LooseHandle layer)
{
std::vector<sigc::connection>::iterator iter;
for(iter=connections_[layer].begin();iter!=connections_[layer].end();++iter)
std::map<String,std::set<etl::handle<Layer> > > group_db_;
//! Layer Connection database
- std::map<etl::handle<Layer>,std::vector<sigc::connection> > connections_;
+ std::map<etl::loose_handle<Layer>,std::vector<sigc::connection> > connections_;
/*
-- ** -- S I G N A L S -------------------------------------------------------
private:
void add_group_pair(String group, etl::handle<Layer> layer);
void remove_group_pair(String group, etl::handle<Layer> layer);
- void add_connection(etl::handle<Layer> layer, sigc::connection connection);
- void disconnect_connections(etl::handle<Layer> layer);
+ void add_connection(etl::loose_handle<Layer> layer, sigc::connection connection);
+ void disconnect_connections(etl::loose_handle<Layer> layer);
protected:
virtual void on_changed();