window.signal_close.connect(sigc::bind(sigc::mem_fun(this, &Engineer::exit), 0));
root = new GLtk::Root(ui_res, window);
- mouse.signal_button_press.connect(sigc::mem_fun(this, &Engineer::button_press));
- mouse.signal_axis_motion.connect(sigc::mem_fun(this, &Engineer::axis_motion));
+ mouse.signal_button_press.connect(sigc::bind_return(sigc::mem_fun(this, &Engineer::button_press), false));
+ mouse.signal_axis_motion.connect(sigc::bind_return(sigc::mem_fun(this, &Engineer::axis_motion), false));
root->set_visible(true);
main_panel = new MainPanel(*this);
camera.apply();
GL::MatrixStack::Push push_mat(GL::MatrixStack::modelview());
- float rot = picking_track->get_endpoint_direction(picking_entry);
- Vector pos = picking_track->get_endpoint_position(picking_entry);
+ Snap sn = picking_track->get_snap_node(picking_entry);
- GL::MatrixStack::modelview() *= GL::Matrix::translation(pos.x, pos.y, pos.z+0.03);
- GL::MatrixStack::modelview() *= GL::Matrix::rotation(rot+M_PI, 0, 0, 1);
+ GL::MatrixStack::modelview() *= GL::Matrix::translation(sn.position.x, sn.position.y, sn.position.z+0.03);
+ GL::MatrixStack::modelview() *= GL::Matrix::rotation(sn.rotation+M_PI, 0, 0, 1);
arrow_mesh.draw();
}