]> sigrok.org Git - pulseview.git/blobdiff - pv/view/header.cpp
View: Create trace groups from channel groups
[pulseview.git] / pv / view / header.cpp
index 2264bc2c945f96b41ea88d387af4c5221d3a8cb9..c94e2d613d2ef7c25f9b5319a93d133c9e30f866 100644 (file)
@@ -84,15 +84,6 @@ void Header::clear_selection()
        update();
 }
 
-void Header::signals_updated()
-{
-       for (shared_ptr<RowItem> r : _view) {
-               assert(r);
-               connect(r.get(), SIGNAL(appearance_changed()),
-                       this, SLOT(on_trace_changed()));
-       }
-}
-
 void Header::show_popup(const shared_ptr<RowItem> &item)
 {
        using pv::widgets::Popup;
@@ -190,7 +181,9 @@ void Header::mouseLeftReleaseEvent(QMouseEvent *event)
        for (auto &r : _view)
                r->drag_release();
 
-       if (!_dragging)
+       if (_dragging)
+               _view.restack_all_row_items();
+       else
        {
                if (!ctrl_pressed) {
                        for (shared_ptr<RowItem> r : _view)
@@ -252,6 +245,9 @@ void Header::mouseMoveEvent(QMouseEvent *event)
                        r->select();
                }
 
+       item_owner->restack_items();
+       for (const auto &r : *item_owner)
+               r->animate_to_layout_v_offset();
        signals_moved();
 
        update();
@@ -297,11 +293,5 @@ void Header::on_signals_moved()
        update();
 }
 
-void Header::on_trace_changed()
-{
-       update();
-       geometry_updated();
-}
-
 } // namespace view
 } // namespace pv