X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fview%2Fview.hpp;h=1819ffddaba08873b30b10d23a900beed0001189;hp=e083fa13fdc1899d31da1ad6fe5978ebc2bb5483;hb=5f9b7de5c8c71801141d35497786bf57f75e3ca4;hpb=6f925ba9d6faf1077b73c5a5808259576081716a diff --git a/pv/view/view.hpp b/pv/view/view.hpp index e083fa13..1819ffdd 100644 --- a/pv/view/view.hpp +++ b/pv/view/view.hpp @@ -20,8 +20,7 @@ #ifndef PULSEVIEW_PV_VIEWS_TRACEVIEW_VIEW_HPP #define PULSEVIEW_PV_VIEWS_TRACEVIEW_VIEW_HPP -#include - +#include #include #include #include @@ -30,11 +29,10 @@ #include #include -#include #include -#include #include +#include #include "cursorpair.hpp" #include "flag.hpp" @@ -55,6 +53,10 @@ namespace pv { class Session; +namespace data { +class Logic; +} + namespace views { namespace TraceView { @@ -68,16 +70,18 @@ class Trace; class Viewport; class TriggerMarker; -class CustomAbstractScrollArea : public QAbstractScrollArea { +class CustomAbstractScrollArea : public QAbstractScrollArea +{ Q_OBJECT public: - CustomAbstractScrollArea(QWidget *parent = 0); + CustomAbstractScrollArea(QWidget *parent = nullptr); void setViewportMargins(int left, int top, int right, int bottom); bool viewportEvent(QEvent *event); }; -class View : public ViewBase, public TraceTreeItemOwner { +class View : public ViewBase, public TraceTreeItemOwner +{ Q_OBJECT private: @@ -91,12 +95,11 @@ private: static const pv::util::Timestamp MinScale; static const int MaxScrollValue; - static const int MaxViewAutoUpdateRate; static const int ScaleUnits[3]; public: - explicit View(Session &session, bool is_main_view=false, QWidget *parent = 0); + explicit View(Session &session, bool is_main_view=false, QWidget *parent = nullptr); Session& session(); const Session& session() const; @@ -108,7 +111,7 @@ public: virtual void clear_signals(); - virtual void add_signal(const shared_ptr signal); + void add_signal(const shared_ptr signal); #ifdef ENABLE_DECODE virtual void clear_decode_signals(); @@ -211,11 +214,21 @@ public: */ void enable_coloured_bg(bool state); + /** + * Returns true if the trace background should be drawn with a coloured background. + */ + bool coloured_bg() const; + /** * Enable or disable showing sampling points. */ void enable_show_sampling_points(bool state); + /** + * Enable or disable showing the analog minor grid. + */ + void enable_show_analog_minor_grid(bool state); + /** * Returns true if cursors are displayed. false otherwise. */ @@ -341,9 +354,8 @@ private Q_SLOTS: void signals_changed(); void capture_state_updated(int state); - void data_updated(); - void perform_delayed_view_update(); + virtual void perform_delayed_view_update(); void process_sticky_events(); @@ -408,7 +420,6 @@ private: bool sticky_scrolling_; bool coloured_bg_; bool always_zoom_to_fit_; - QTimer delayed_view_updater_; pv::util::Timestamp tick_period_; pv::util::SIPrefix tick_prefix_; @@ -433,8 +444,6 @@ private: // A nonzero value indicates the v offset to restore. See View::resizeEvent() int saved_v_offset_; - - bool size_finalized_; }; } // namespace TraceView