X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fview%2Fview.hpp;h=08e17d6056867f45be84bee8b62d61cad70f45df;hb=4cc2e925cf5056bc11514cc44da820eada72ce56;hp=8ef8812cf5443aaaf1553343eeda27df6b77073b;hpb=8a5fd81fea577663e8c0f17e53d5928599d0926d;p=pulseview.git diff --git a/pv/view/view.hpp b/pv/view/view.hpp index 8ef8812..08e17d6 100644 --- a/pv/view/view.hpp +++ b/pv/view/view.hpp @@ -29,6 +29,7 @@ #include #include +#include #include #include @@ -70,13 +71,12 @@ class Trace; class Viewport; class TriggerMarker; -class CustomAbstractScrollArea : public QAbstractScrollArea +class CustomScrollArea : public QAbstractScrollArea { Q_OBJECT public: - CustomAbstractScrollArea(QWidget *parent = nullptr); - void setViewportMargins(int left, int top, int right, int bottom); + CustomScrollArea(QWidget *parent = nullptr); bool viewportEvent(QEvent *event); }; @@ -323,6 +323,10 @@ private: void set_scroll_default(); + bool header_was_shrunk() const; + + void expand_header_to_fit(); + void update_layout(); TraceTreeItemOwner* find_prevalent_trace_group( @@ -351,6 +355,9 @@ public: private Q_SLOTS: + void on_splitter_moved(); + void on_repeat_splitter_expansion(); + void h_scroll_value_changed(int value); void v_scroll_value_changed(); @@ -400,9 +407,11 @@ private Q_SLOTS: void set_time_unit(pv::util::TimeUnit time_unit); private: + CustomScrollArea *scrollarea_; Viewport *viewport_; Ruler *ruler_; Header *header_; + QSplitter *splitter_; unordered_set< shared_ptr > signals_; @@ -410,8 +419,6 @@ private: vector< shared_ptr > decode_traces_; #endif - CustomAbstractScrollArea scrollarea_; - /// The view time scale in seconds per pixel. double scale_; @@ -419,6 +426,8 @@ private: pv::util::Timestamp offset_; bool updating_scroll_; + bool settings_restored_; + bool sticky_scrolling_; bool coloured_bg_; bool always_zoom_to_fit_;