X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=pv%2Fview%2Fcursorpair.h;h=6c56dcd71dc89499dc8a5eceecd6593f43be1a85;hb=0dda6fe595932b2e340930104fad8ac4fc574895;hp=2bf85d835b775bc7b20245ce981401b4002575df;hpb=0ba172cf7a0cecee952ed195cf80585bfb01f831;p=pulseview.git diff --git a/pv/view/cursorpair.h b/pv/view/cursorpair.h index 2bf85d83..6c56dcd7 100644 --- a/pv/view/cursorpair.h +++ b/pv/view/cursorpair.h @@ -23,6 +23,8 @@ #include "cursor.h" +#include + #include class QPainter; @@ -32,41 +34,45 @@ namespace view { class CursorPair { +private: + static const int DeltaPadding; + public: /** * Constructor. * @param view A reference to the view that owns this cursor pair. */ - CursorPair(const View &view); + CursorPair(View &view); /** - * Returns a reference to the first cursor. + * Returns a pointer to the first cursor. */ - Cursor& first(); + std::shared_ptr first() const; /** - * Returns a reference to the first cursor. + * Returns a pointer to the second cursor. */ - const Cursor& first() const; + std::shared_ptr second() const; - /** - * Returns a reference to the second cursor. - */ - Cursor& second(); +public: + QRectF get_label_rect(const QRect &rect) const; - /** - * Returns a reference to the second cursor. - */ - const Cursor& second() const; + void draw_markers(QPainter &p, + const QRect &rect, unsigned int prefix); -public: void draw_viewport_background(QPainter &p, const QRect &rect); void draw_viewport_foreground(QPainter &p, const QRect &rect); + void compute_text_size(QPainter &p, unsigned int prefix); + + std::pair get_cursor_offsets() const; + private: - Cursor _first, _second; + std::shared_ptr _first, _second; const View &_view; + + QSizeF _text_size; }; } // namespace view