X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=pv%2Fview%2Fview.cpp;h=67d4f404d1162577f9afe524ea46f547d31b402c;hb=b485408f20c39ae8d05372a5faffe15653c74705;hp=5e89397aec8e5e71c7732bd7e27faedadb20f40d;hpb=f84000171de7e569590a2f766ae36290b73442da;p=pulseview.git diff --git a/pv/view/view.cpp b/pv/view/view.cpp index 5e89397a..67d4f404 100644 --- a/pv/view/view.cpp +++ b/pv/view/view.cpp @@ -36,7 +36,7 @@ #include #include -#include +#include #include "decodetrace.hpp" #include "header.hpp" @@ -48,6 +48,7 @@ #include "viewport.hpp" #include "pv/session.hpp" +#include "pv/devices/device.hpp" #include "pv/data/logic.hpp" #include "pv/data/logicsegment.hpp" #include "pv/util.hpp" @@ -204,6 +205,13 @@ int View::owner_visual_v_offset() const return -verticalScrollBar()->sliderPosition(); } +void View::set_v_offset(int offset) +{ + verticalScrollBar()->setSliderPosition(offset); + header_->update(); + viewport_->update(); +} + unsigned int View::depth() const { return 0; @@ -290,7 +298,7 @@ void View::set_scale_offset(double scale, double offset) set< shared_ptr > View::get_visible_data() const { shared_lock lock(session().signals_mutex()); - const vector< shared_ptr > &sigs(session().signals()); + const unordered_set< shared_ptr > &sigs(session().signals()); // Make a set of all the visible data objects set< shared_ptr > visible_data; @@ -316,7 +324,7 @@ pair View::get_time_extents() const const double start_time = s->start_time(); left_time = min(left_time, start_time); right_time = max(right_time, start_time + - d->get_max_sample_count() / samplerate); + d->max_sample_count() / samplerate); } } @@ -668,7 +676,7 @@ void View::signals_changed() // Populate the traces clear_child_items(); - shared_ptr device = session_.device(); + shared_ptr device = session_.device()->device(); assert(device); // Collect a set of signals @@ -676,7 +684,7 @@ void View::signals_changed() signal_map; shared_lock lock(session_.signals_mutex()); - const vector< shared_ptr > &sigs(session_.signals()); + const unordered_set< shared_ptr > &sigs(session_.signals()); for (const shared_ptr &sig : sigs) signal_map[sig->channel()] = sig;