]> sigrok.org Git - pulseview.git/blobdiff - pv/view/viewport.h
Improved propagation of drag event so that the scroll bars can be updated
[pulseview.git] / pv / view / viewport.h
index 46bf273358e769b2112dc913569bedce82f32f5f..7d32c4334ff57c24f03474f9b3fe6455039d0eec 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * This file is part of the sigrok project.
+ * This file is part of the PulseView project.
  *
  * Copyright (C) 2012 Joel Holdsworth <joel@airwebreathe.org.uk>
  *
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
  */
 
-#ifndef PV_VIEW_VIEWPORT_H
-#define PV_VIEW_VIEWPORT_H
+#ifndef PULSEVIEW_PV_VIEW_VIEWPORT_H
+#define PULSEVIEW_PV_VIEW_VIEWPORT_H
 
-#include <QtOpenGL/QGLWidget>
 #include <QTimer>
+#include <QWidget>
 
 class QPainter;
 class QPaintEvent;
@@ -33,29 +33,16 @@ namespace view {
 
 class View;
 
-class Viewport : public QGLWidget
+class Viewport : public QWidget
 {
        Q_OBJECT
 
-private:
-       static const int SignalHeight;
-
-       static const int MinorTickSubdivision;
-       static const int ScaleUnits[3];
-
-       static const QString SIPrefixes[9];
-       static const int FirstSIPrefixPower;
-
 public:
        explicit Viewport(View &parent);
 
        int get_total_height() const;
 
 protected:
-       void initializeGL();
-
-       void resizeGL(int width, int height);
-
        void paintEvent(QPaintEvent *event);
 
 private:
@@ -65,9 +52,12 @@ private:
        void wheelEvent(QWheelEvent *event);
 
 private:
-       void setup_viewport(int width, int height);
+       void draw_cursors_background(QPainter &p);
+
+       void draw_cursors_foreground(QPainter &p);
 
-       void paint_ruler(QPainter &p);
+private slots:
+       void on_signals_moved();
 
 private:
        View &_view;
@@ -79,4 +69,4 @@ private:
 } // namespace view
 } // namespace pv
 
-#endif // PV_VIEW_VIEWPORT_H
+#endif // PULSEVIEW_PV_VIEW_VIEWPORT_H