+QRectF Trace::hit_box_rect(const ViewItemPaintParams &pp) const
+{
+ // This one is only for the trace itself, excluding the header area
+ const View *view = owner_->view();
+ assert(view);
+
+ pair<int, int> extents = v_extents();
+ const int top = pp.top() + get_visual_y() + extents.first;
+ const int height = extents.second - extents.first;
+
+ return QRectF(pp.left() + view->header_width(), top,
+ pp.width() - view->header_width(), height);
+}
+
+void Trace::set_current_segment(const int segment)
+{
+ current_segment_ = segment;
+}
+
+int Trace::get_current_segment() const
+{
+ return current_segment_;
+}
+
+void Trace::hover_point_changed(const QPoint &hp)
+{
+ (void)hp;
+
+ if (owner_)
+ owner_->row_item_appearance_changed(false, true);
+}
+