From a65911454827699eaf3f085c10f0f8e8c40c7d44 Mon Sep 17 00:00:00 2001 From: dreamsourcelabTAI Date: Fri, 23 Dec 2022 18:39:57 +0800 Subject: [PATCH] fix: Can not auto refresh on DSO mode, and got an error scale on ANALOG mode --- DSView/pv/sigsession.cpp | 6 ++++++ DSView/pv/view/view.cpp | 3 ++- DSView/pv/view/viewport.cpp | 3 --- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/DSView/pv/sigsession.cpp b/DSView/pv/sigsession.cpp index e7292ffc..61da699c 100644 --- a/DSView/pv/sigsession.cpp +++ b/DSView/pv/sigsession.cpp @@ -470,6 +470,9 @@ namespace pv else _is_instant = instant; + set_cur_snap_samplerate(_device_agent.get_sample_rate()); + set_cur_samplelimits(_device_agent.get_sample_limit()); + _callback->trigger_message(DSV_MSG_START_COLLECT_WORK_PREV); if (exec_capture()) @@ -662,6 +665,9 @@ namespace pv if (_data_updated) { + if (_device_agent.get_work_mode() != LOGIC) + data_updated(); + _data_updated = false; _noData_cnt = 0; data_auto_unlock(); diff --git a/DSView/pv/view/view.cpp b/DSView/pv/view/view.cpp index b880f874..1989f827 100644 --- a/DSView/pv/view/view.cpp +++ b/DSView/pv/view/view.cpp @@ -216,10 +216,11 @@ void View::capture_init() show_trig_cursor(true); else if (!_session->is_repeating()) show_trig_cursor(false); - + _maxscale = _session->cur_sampletime() / (get_view_width() * MaxViewRate); if (mode == ANALOG) set_scale_offset(_maxscale, 0); + status_clear(); _trig_time_setted = false; _trig_hoff = 0; diff --git a/DSView/pv/view/viewport.cpp b/DSView/pv/view/viewport.cpp index c2f46d53..105f6309 100644 --- a/DSView/pv/view/viewport.cpp +++ b/DSView/pv/view/viewport.cpp @@ -147,9 +147,6 @@ void Viewport::paintEvent(QPaintEvent *event) void Viewport::doPaint(bool bForce) { using pv::view::Signal; - - // if (_view.session().is_stopped_status()) - // dsv_info("paint"); QStyleOption o; o.initFrom(this);