X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=pv%2Fview%2Fcursorpair.h;h=815276e24c0ca997faf2af5e780da632cb6108eb;hb=6e89374a6796f8d5d9cc61b0a2f7e98562a034ae;hp=8c721bb63407a648044538627211160491bd7f3b;hpb=b42d25c43e52c900cbdd3e5cde0282961b8721e7;p=pulseview.git diff --git a/pv/view/cursorpair.h b/pv/view/cursorpair.h index 8c721bb6..815276e2 100644 --- a/pv/view/cursorpair.h +++ b/pv/view/cursorpair.h @@ -23,6 +23,10 @@ #include "cursor.h" +#include + +#include + class QPainter; namespace pv { @@ -30,36 +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(); + boost::shared_ptr first() const; /** - * Returns a reference to the first cursor. + * Returns a pointer to the second cursor. */ - const Cursor& first() const; + boost::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); + + 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; + boost::shared_ptr _first, _second; const View &_view; + + QSizeF _text_size; }; } // namespace view