]> sigrok.org Git - pulseview.git/blobdiff - pv/view/viewport.cpp
Split signal painting into 3 layers
[pulseview.git] / pv / view / viewport.cpp
index 06fab904e75168fab06a9499574446959c93e9a3..8cf97ff58020594b2e6c82290589a70112b260e0 100644 (file)
@@ -72,9 +72,15 @@ void Viewport::paintEvent(QPaintEvent*)
        BOOST_FOREACH(const shared_ptr<Trace> t, traces)
        {
                assert(t);
-               t->paint(p, 0, width());
+               t->paint_back(p, 0, width());
        }
 
+       BOOST_FOREACH(const shared_ptr<Trace> t, traces)
+               t->paint_mid(p, 0, width());
+
+       BOOST_FOREACH(const shared_ptr<Trace> t, traces)
+               t->paint_fore(p, 0, width());
+
        if (_view.cursors_shown())
                _view.cursors().draw_viewport_foreground(p, rect());