X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fview%2Fview.cpp;h=4e0fed063fca8c4d42e67c5bcb6cb58c23cee390;hb=ccdd3ef548ce34f25c6c168598556a350831aa37;hp=e319b4fc82a8bb378a5dd345d038cef7e5d0228d;hpb=1d8dca913d07df3a53184e40246eb2e333520e31;p=pulseview.git diff --git a/pv/view/view.cpp b/pv/view/view.cpp index e319b4f..4e0fed0 100644 --- a/pv/view/view.cpp +++ b/pv/view/view.cpp @@ -27,6 +27,7 @@ #include #include "header.h" +#include "ruler.h" #include "view.h" #include "viewport.h" @@ -52,6 +53,7 @@ View::View(SigSession &session, QWidget *parent) : QAbstractScrollArea(parent), _session(session), _viewport(new Viewport(*this)), + _ruler(new Ruler(*this)), _header(new Header(*this)), _data_length(0), _scale(1e-6), @@ -65,7 +67,7 @@ View::View(SigSession &session, QWidget *parent) : connect(&_session, SIGNAL(data_updated()), this, SLOT(data_updated())); - setViewportMargins(LabelMarginWidth, 0, 0, 0); + setViewportMargins(LabelMarginWidth, RulerHeight, 0, 0); setViewport(_viewport); } @@ -98,7 +100,9 @@ void View::set_scale_offset(double scale, double offset) { _scale = scale; _offset = offset; + update_scroll(); + _ruler->update(); _viewport->update(); } @@ -134,6 +138,8 @@ void View::zoom(double steps, int offset) _scale *= pow(3.0/2.0, -steps); _scale = max(min(_scale, MaxScale), MinScale); _offset = cursor_offset - _scale * offset; + + _ruler->update(); _viewport->update(); update_scroll(); } @@ -156,7 +162,9 @@ bool View::viewportEvent(QEvent *e) void View::resizeEvent(QResizeEvent *e) { - _header->setGeometry(0, RulerHeight, + _ruler->setGeometry(_viewport->x(), 0, + _viewport->width(), _viewport->y()); + _header->setGeometry(0, _viewport->y(), _viewport->x(), _viewport->height()); update_scroll(); } @@ -164,6 +172,7 @@ void View::resizeEvent(QResizeEvent *e) void View::h_scroll_value_changed(int value) { _offset = _scale * value; + _ruler->update(); _viewport->update(); }