X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fviews%2Ftrace%2Fview.cpp;h=ce78100f83383da5df9393ef28222cf02e577795;hp=972b379d9dad1682318da2be20aa021999c2f109;hb=2601ce965fc455d23f5a964b84ddd74eb93705c4;hpb=28ceff251c776bcf99eafae691e70a521af15957 diff --git a/pv/views/trace/view.cpp b/pv/views/trace/view.cpp index 972b379d..ce78100f 100644 --- a/pv/views/trace/view.cpp +++ b/pv/views/trace/view.cpp @@ -73,7 +73,6 @@ using pv::util::Timestamp; using std::back_inserter; using std::copy_if; using std::count_if; -using std::dynamic_pointer_cast; using std::inserter; using std::max; using std::make_pair; @@ -213,9 +212,6 @@ View::View(Session &session, bool is_main_view, QWidget *parent) : connect(splitter_, SIGNAL(splitterMoved(int, int)), this, SLOT(on_splitter_moved())); - connect(this, SIGNAL(hover_point_changed()), - this, SLOT(on_hover_point_changed())); - connect(&lazy_event_handler_, SIGNAL(timeout()), this, SLOT(process_sticky_events())); lazy_event_handler_.setSingleShot(true); @@ -360,6 +356,9 @@ void View::restore_settings(QSettings &settings) settings_restored_ = true; suppress_zoom_to_fit_after_acq_ = true; + + // Update the ruler so that it uses the new scale + calculate_tick_spacing(); } vector< shared_ptr > View::time_items() const @@ -1006,11 +1005,11 @@ bool View::eventFilter(QObject *object, QEvent *event) else hover_point_ = QPoint(-1, -1); - hover_point_changed(); + update_hover_point(); } else if (type == QEvent::Leave) { hover_point_ = QPoint(-1, -1); - hover_point_changed(); + update_hover_point(); } else if (type == QEvent::Show) { // This is somewhat of a hack, unfortunately. We cannot use @@ -1048,6 +1047,16 @@ void View::resizeEvent(QResizeEvent* event) update_layout(); } +void View::update_hover_point() +{ + const vector> trace_tree_items( + list_by_type()); + for (shared_ptr r : trace_tree_items) + r->hover_point_changed(hover_point_); + + hover_point_changed(hover_point_); +} + void View::row_item_appearance_changed(bool label, bool content) { if (label) @@ -1316,7 +1325,7 @@ void View::capture_state_updated(int state) // Activate "always zoom to fit" if the setting is enabled and we're // the main view of this session (other trace views may be used for // zooming and we don't want to mess them up) - bool state = settings.value(GlobalSettings::Key_View_AlwaysZoomToFit).toBool(); + bool state = settings.value(GlobalSettings::Key_View_ZoomToFitDuringAcq).toBool(); if (is_main_view_ && state) { always_zoom_to_fit_ = true; always_zoom_to_fit_changed(always_zoom_to_fit_); @@ -1389,14 +1398,6 @@ void View::process_sticky_events() sticky_events_ = 0; } -void View::on_hover_point_changed() -{ - const vector> trace_tree_items( - list_by_type()); - for (shared_ptr r : trace_tree_items) - r->hover_point_changed(); -} - } // namespace trace } // namespace views } // namespace pv