- void paint(QPainter &p, int y, int left, int right, double scale,
- double offset);
+ void paint_back(QPainter &p, int left, int right);
+
+ /**
+ * Paints the mid-layer of the signal with a QPainter
+ * @param p the QPainter to paint into.
+ * @param left the x-coordinate of the left edge of the signal.
+ * @param right the x-coordinate of the right edge of the signal.
+ **/
+ void paint_mid(QPainter &p, int left, int right);
+
+private:
+ void paint_trace(QPainter &p,
+ const boost::shared_ptr<pv::data::AnalogSnapshot> &snapshot,
+ int y, int left, const int64_t start, const int64_t end,
+ const double pixels_offset, const double samples_per_pixel);
+
+ void paint_envelope(QPainter &p,
+ const boost::shared_ptr<pv::data::AnalogSnapshot> &snapshot,
+ int y, int left, const int64_t start, const int64_t end,
+ const double pixels_offset, const double samples_per_pixel);