X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fview%2Ftrace.cpp;h=28084544f6f4247aee1798e4081302f0f22d5b27;hb=a28a212c7a9a3470e300911fe8aa62833a62d26a;hp=67ea3a02788416c670a6c1d3f12d591d402df84d;hpb=9b6378f147671e62f57887d51d01864d20e01475;p=pulseview.git diff --git a/pv/view/trace.cpp b/pv/view/trace.cpp index 67ea3a0..2808454 100644 --- a/pv/view/trace.cpp +++ b/pv/view/trace.cpp @@ -29,6 +29,8 @@ #include "trace.h" #include "view.h" +#include + namespace pv { namespace view { @@ -183,6 +185,16 @@ QMenu* Trace::create_context_menu(QWidget *parent) return menu; } +pv::widgets::Popup* Trace::create_popup(QWidget *parent) +{ + using pv::widgets::Popup; + Popup *const popup = new Popup(parent); + QFormLayout *const form = new QFormLayout(popup); + popup->setLayout(form); + populate_popup_form(popup, form); + return popup; +} + int Trace::get_y() const { return _v_offset - _view->v_offset(); @@ -199,6 +211,11 @@ void Trace::paint_axis(QPainter &p, int y, int left, int right) p.drawLine(QPointF(left, y + 0.5f), QPointF(right, y + 0.5f)); } +void Trace::populate_popup_form(QWidget *parent, QFormLayout *form) +{ + form->addRow("Name", new QLineEdit(parent)); +} + void Trace::compute_text_size(QPainter &p) { _text_size = QSize( @@ -211,7 +228,6 @@ QRectF Trace::get_label_rect(int right) using pv::view::View; assert(_view); - const int y = _v_offset - _view->v_offset(); const QSizeF label_size( _text_size.width() + View::LabelPadding.width() * 2, @@ -219,7 +235,7 @@ QRectF Trace::get_label_rect(int right) const float label_arrow_length = label_size.height() / 2; return QRectF( right - label_arrow_length - label_size.width() - 0.5, - y + 0.5f - label_size.height() / 2, + get_y() + 0.5f - label_size.height() / 2, label_size.width(), label_size.height()); }