X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=pv%2Fviews%2Ftrace%2Fdecodetrace.cpp;h=e6b977ae01952ea1d22f377e8898b060c6fc3c1c;hb=92fdf33184a29c139a532e954cdd573649ad522d;hp=f4ab55ffa3ee1cbca8246873057ce67b4b8e264b;hpb=5b6ae10391736ab2f81de851686dee15bbcbf9f9;p=pulseview.git diff --git a/pv/views/trace/decodetrace.cpp b/pv/views/trace/decodetrace.cpp index f4ab55ff..e6b977ae 100644 --- a/pv/views/trace/decodetrace.cpp +++ b/pv/views/trace/decodetrace.cpp @@ -56,14 +56,11 @@ extern "C" { using std::all_of; using std::make_pair; using std::max; -using std::map; using std::min; using std::out_of_range; using std::pair; using std::shared_ptr; -using std::make_shared; using std::tie; -using std::unordered_set; using std::vector; using pv::data::decode::Annotation; @@ -149,6 +146,8 @@ DecodeTrace::DecodeTrace(pv::Session &session, connect(decode_signal_.get(), SIGNAL(new_annotations()), this, SLOT(on_new_annotations())); + connect(decode_signal_.get(), SIGNAL(decode_finished()), + this, SLOT(on_decode_finished())); connect(decode_signal_.get(), SIGNAL(channels_updated()), this, SLOT(on_channels_updated())); @@ -717,6 +716,12 @@ void DecodeTrace::hover_point_changed() assert(view); QPoint hp = view->hover_point(); + + if (hp.x() == 0) { + QToolTip::hideText(); + return; + } + QString ann = get_annotation_at_point(hp); assert(view); @@ -883,6 +888,12 @@ void DecodeTrace::on_delayed_trace_update() owner_->row_item_appearance_changed(false, true); } +void DecodeTrace::on_decode_finished() +{ + if (owner_) + owner_->row_item_appearance_changed(false, true); +} + void DecodeTrace::delete_pressed() { on_delete();