X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Flibr2c2%2Fsignal.cpp;h=c4a83b9a3cee6719c4afe5f65c406b572edb47c3;hb=f23c8d8cbc4e72b45e3a719b2cf974ce35d054e9;hp=a858e0dc92b99293eb142f8172f7902d563acb22;hpb=dda1e6c8716b6ac70d63a3f6ff95474a8b8b7336;p=r2c2.git diff --git a/source/libr2c2/signal.cpp b/source/libr2c2/signal.cpp index a858e0d..c4a83b9 100644 --- a/source/libr2c2/signal.cpp +++ b/source/libr2c2/signal.cpp @@ -24,14 +24,14 @@ Signal::Signal(Layout &l, const SignalType &t): check_allocated_blocks(false), passing(false) { - layout.add_signal(*this); + layout.add(*this); layout.signal_block_reserved.connect(sigc::mem_fun(this, &Signal::block_reserved)); } Signal::~Signal() { - layout.remove_signal(*this); + layout.remove(*this); } Signal *Signal::clone(Layout *to_layout) const @@ -55,11 +55,12 @@ void Signal::set_position(const Vector &p) position = p; update_location(); + signal_moved.emit(); } void Signal::update_location() { - const set &tracks = layout.get_tracks(); + const set &tracks = layout.get_all(); float limit = layout.get_catalogue().get_gauge()*2; float dist = -1; for(set::const_iterator i=tracks.begin(); i!=tracks.end(); ++i) @@ -103,6 +104,7 @@ void Signal::set_rotation(const Angle &r) rotation = r; update_location(); + signal_moved.emit(); } unsigned Signal::get_n_snap_nodes() const