X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fview%2Fcursorpair.h;h=f7eb51cacaabe9a79cf2d715c487eed94f5ab222;hb=8dbbc7f0b9ea59d0f0d62225772f8a56eee125f5;hp=05035cc26385560af3c80f8c8e2771e0f05a9f41;hpb=332afa7438aa5532599fe65f9092e1b24b34fe04;p=pulseview.git diff --git a/pv/view/cursorpair.h b/pv/view/cursorpair.h index 05035cc..f7eb51c 100644 --- a/pv/view/cursorpair.h +++ b/pv/view/cursorpair.h @@ -23,6 +23,8 @@ #include "cursor.h" +#include + #include class QPainter; @@ -32,34 +34,29 @@ 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; - - /** - * Returns a reference to the second cursor. - */ - Cursor& second(); - - /** - * Returns a reference to the second cursor. - */ - const Cursor& second() const; + std::shared_ptr second() const; public: + QRectF get_label_rect(const QRect &rect) const; + void draw_markers(QPainter &p, const QRect &rect, unsigned int prefix); @@ -67,9 +64,15 @@ public: 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; - const View &_view; + std::shared_ptr first_, second_; + const View &view_; + + QSizeF text_size_; }; } // namespace view