designer.get_layout()->add_route(*route);
designer.edit_route(*route);
- const set<Route *> &routes = designer.get_layout()->get_routes();
+ const map<string, Route *> &routes = designer.get_layout()->get_routes();
int selected = -1;
unsigned n = 0;
- for(set<Route *>::const_iterator i=routes.begin(); (selected<0 && i!=routes.end()); ++i, ++n)
- if(*i==route)
+ for(map<string, Route *>::const_iterator i=routes.begin(); (selected<0 && i!=routes.end()); ++i, ++n)
+ if(i->second==route)
selected = n;
drp_routes->set_selected_index(selected);
}
else
{
- const set<Route *> &routes = designer.get_layout()->get_routes();
- set<Route *>::const_iterator i = routes.begin();
+ const map<string, Route *> &routes = designer.get_layout()->get_routes();
+ map<string, Route *>::const_iterator i = routes.begin();
advance(i, index);
- designer.edit_route(**i);
+ designer.edit_route(*i->second);
}
}
void Toolbar::update_routes()
{
drp_routes->clear();
- const set<Route *> &routes = designer.get_layout()->get_routes();
+ const map<string, Route *> &routes = designer.get_layout()->get_routes();
int selected = -1;
unsigned n = 0;
- for(set<Route *>::const_iterator i=routes.begin(); i!=routes.end(); ++i, ++n)
+ for(map<string, Route *>::const_iterator i=routes.begin(); i!=routes.end(); ++i, ++n)
{
- drp_routes->append((*i)->get_name());
- if(*i==designer.get_current_route())
+ drp_routes->append(i->second->get_name());
+ if(i->second==designer.get_current_route())
selected = n;
}
drp_routes->append("(new route)");