]> git.tdb.fi Git - r2c2.git/blobdiff - source/designer/designer.cpp
Return null from Route::find if a route can't be found
[r2c2.git] / source / designer / designer.cpp
index 024e9fe7fdc3869fa3148ed61e28f23dc7798514..92c2f25564b177918a80129fdd1a9b6a26778f88 100644 (file)
@@ -137,9 +137,9 @@ Designer::Designer(int argc, char **argv):
 
        overlay = new Overlay3D(window, camera, ui_res.get_default_font());
 
-       const list<Track3D *> &tracks = layout_3d->get_tracks();
-       for(list<Track3D *>::const_iterator i=tracks.begin(); i!=tracks.end(); ++i)
-               update_track_icon(**i);
+       const Layout3D::TrackMap &tracks = layout_3d->get_tracks();
+       for(Layout3D::TrackMap::const_iterator i=tracks.begin(); i!=tracks.end(); ++i)
+               update_track_icon(*i->second);
 }
 
 Designer::~Designer()
@@ -362,6 +362,8 @@ void Designer::key_press(unsigned key, unsigned mod, wchar_t)
                set_sensor_id();
        else if(key==Msp::Input::KEY_A)
                add_selection_to_route();
+       else if(key==Msp::Input::KEY_C)
+               manipulator.connect();
 }
 
 void Designer::button_press(int x, int y, unsigned btn, unsigned mod)
@@ -587,12 +589,12 @@ void Designer::view_all()
        Point minp;
        Point maxp;
 
-       const list<Track3D *> &tracks = layout_3d->get_tracks();
-       for(list<Track3D *>::const_iterator i=tracks.begin(); i!=tracks.end(); ++i)
+       const Layout3D::TrackMap &tracks = layout_3d->get_tracks();
+       for(Layout3D::TrackMap::const_iterator i=tracks.begin(); i!=tracks.end(); ++i)
        {
                Point tmin;
                Point tmax;
-               (*i)->get_bounds(0, tmin, tmax);
+               i->second->get_bounds(0, tmin, tmax);
                minp.x = min(minp.x, tmin.x);
                minp.y = min(minp.y, tmin.y);
                maxp.x = max(maxp.x, tmax.x);