X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fviews%2Ftrace%2Fanalogsignal.hpp;h=6afc394227170c99151acc9d8220daa3fed63def;hp=ffaac266020e3d2f098703efea3967591da32586;hb=5a20644617a727e5893cd1df3f105135c1ebdedd;hpb=90ee1ed9a90bc0651f86ee4af07e0958572f86da diff --git a/pv/views/trace/analogsignal.hpp b/pv/views/trace/analogsignal.hpp index ffaac266..6afc3942 100644 --- a/pv/views/trace/analogsignal.hpp +++ b/pv/views/trace/analogsignal.hpp @@ -20,13 +20,14 @@ #ifndef PULSEVIEW_PV_VIEWS_TRACEVIEW_ANALOGSIGNAL_HPP #define PULSEVIEW_PV_VIEWS_TRACEVIEW_ANALOGSIGNAL_HPP -#include "signal.hpp" - #include #include #include +#include +#include + using std::pair; using std::shared_ptr; @@ -41,15 +42,18 @@ class SignalBase; namespace views { namespace trace { -class AnalogSignal : public Signal +class AnalogSignal : public Signal, public GlobalSettingsInterface { Q_OBJECT private: static const QPen AxisPen; - static const QColor SignalColours[4]; + static const QColor SignalColors[4]; static const QColor GridMajorColor, GridMinorColor; - static const QColor SamplingPointColour; + static const QColor SamplingPointColor; + static const QColor SamplingPointColorLo; + static const QColor SamplingPointColorNe; + static const QColor SamplingPointColorHi; static const QColor ThresholdColor; static const QColor ThresholdColorLo; static const QColor ThresholdColorNe; @@ -71,7 +75,7 @@ private: public: AnalogSignal(pv::Session &session, shared_ptr base); - virtual ~AnalogSignal() = default; + ~AnalogSignal(); shared_ptr data() const; @@ -101,6 +105,8 @@ public: */ void scale_handle_drag_release(); + void on_setting_changed(const QString &key, const QVariant &value); + /** * Paints the background layer of the signal with a QPainter * @param p the QPainter to paint into. @@ -142,6 +148,9 @@ private: bool level, double samples_per_pixel, double pixels_offset, float x_offset, float y_offset); + shared_ptr get_analog_segment_to_paint() const; + shared_ptr get_logic_segment_to_paint() const; + /** * Computes the scale factor from the scale index and vdiv settings. */