X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fviews%2Ftrace%2Fview.cpp;h=269768669a5a44b8c94ac30c8ee7cbc9d2a2252f;hb=00c518d66a61f28609b0eeddd0ce375d0002da94;hp=ce78100f83383da5df9393ef28222cf02e577795;hpb=bca3faab89f727096f39a937aa5479f8eadc7740;p=pulseview.git diff --git a/pv/views/trace/view.cpp b/pv/views/trace/view.cpp index ce78100..2697686 100644 --- a/pv/views/trace/view.cpp +++ b/pv/views/trace/view.cpp @@ -253,6 +253,9 @@ void View::add_signal(const shared_ptr signal) { ViewBase::add_signalbase(signal->base()); signals_.insert(signal); + + connect(signal->base().get(), SIGNAL(name_changed(const QString&)), + this, SLOT(on_signal_name_changed())); } #ifdef ENABLE_DECODE @@ -266,6 +269,9 @@ void View::add_decode_signal(shared_ptr signal) shared_ptr d( new DecodeTrace(session_, signal, decode_traces_.size())); decode_traces_.push_back(d); + + connect(signal.get(), SIGNAL(name_changed(const QString&)), + this, SLOT(on_signal_name_changed())); } void View::remove_decode_signal(shared_ptr signal) @@ -1087,6 +1093,12 @@ void View::extents_changed(bool horz, bool vert) lazy_event_handler_.start(); } +void View::on_signal_name_changed() +{ + if (!header_was_shrunk()) + expand_header_to_fit(); +} + void View::on_splitter_moved() { // Setting the maximum width of the header widget doesn't work as @@ -1363,6 +1375,16 @@ void View::capture_state_updated(int state) } } +void View::on_segment_changed(int segment) +{ + current_segment_ = segment - 1; + + for (shared_ptr signal : signals_) + signal->set_current_segment(current_segment_); + + viewport_->update(); +} + void View::perform_delayed_view_update() { if (always_zoom_to_fit_) {