X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=sigview.h;h=34eeb95993e8f27eb1878db4b449595daed6684f;hb=438440ea9d4631a18b5fa95b0aefec9894c39c9b;hp=2c7ba1ddae34a97990fdf0b189be6d621676a939;hpb=3b18c57d8f224791481e0b768065bd4d11a3d79e;p=pulseview.git diff --git a/sigview.h b/sigview.h index 2c7ba1d..34eeb95 100644 --- a/sigview.h +++ b/sigview.h @@ -24,6 +24,8 @@ #include #include +class QPainter; +class QPaintEvent; class SigSession; class SigView : public QGLWidget @@ -32,6 +34,14 @@ class SigView : public QGLWidget private: static const int SignalHeight; + static const int LabelMarginWidth; + static const int RulerHeight; + + static const int MinorTickSubdivision; + static const int ScaleUnits[3]; + + static const QString SIPrefixes[9]; + static const int FirstSIPrefixPower; public: explicit SigView(SigSession &session, QWidget *parent = 0); @@ -42,7 +52,17 @@ protected: void resizeGL(int width, int height); - void paintGL(); + void paintEvent(QPaintEvent *event); + +private: + void mouseMoveEvent(QMouseEvent *event); + void mousePressEvent(QMouseEvent *event); + void mouseReleaseEvent(QMouseEvent *event); + +private: + void setupViewport(int width, int height); + + void paintRuler(QPainter &p); private slots: void dataUpdated(); @@ -50,8 +70,8 @@ private slots: private: SigSession &_session; - uint64_t _scale; - int64_t _offset; + double _scale; + double _offset; }; #endif // SIGVIEW_H