]> sigrok.org Git - pulseview.git/blobdiff - pv/views/trace/flag.cpp
Style and architecture fixes
[pulseview.git] / pv / views / trace / flag.cpp
index 97b21be232888dc909fc36b4df9c573005815f39..81af10868f46a070aaf8d8c45a56cce7359d622b 100644 (file)
@@ -59,22 +59,28 @@ bool Flag::enabled() const
 
 QString Flag::get_text() const
 {
-       const shared_ptr<TimeItem> ref_item = view_.get_reference_time_item();
-       if (ref_item == nullptr || ref_item.get() == this) {
-               return text_;
-       } else {
-               return Ruler::format_time_with_distance(
+       QString s;
+
+       const shared_ptr<TimeItem> ref_item = view_.ruler()->get_reference_item();
+
+       if (!ref_item || (ref_item.get() == this))
+               s = text_;
+       else
+               s = Ruler::format_time_with_distance(
                        ref_item->time(), ref_item->delta(time_),
                        view_.tick_prefix(), view_.time_unit(), view_.tick_precision());
-       }
+
+       return s;
 }
 
 QRectF Flag::label_rect(const QRectF &rect) const
 {
-       const shared_ptr<TimeItem> ref_item = view_.get_reference_time_item();
-       if (ref_item == nullptr || ref_item.get() == this) {
-               return TimeMarker::label_rect(rect);
+       QRectF r;
+
+       const shared_ptr<TimeItem> ref_item = view_.ruler()->get_reference_item();
 
+       if (!ref_item || (ref_item.get() == this)) {
+               r = TimeMarker::label_rect(rect);
        } else {
                // TODO: Remove code duplication between here and cursor.cpp
                const float x = get_x();
@@ -85,17 +91,20 @@ QRectF Flag::label_rect(const QRectF &rect) const
                const QSizeF label_size(
                        text_size.width() + LabelPadding.width() * 2,
                        text_size.height() + LabelPadding.height() * 2);
-               const float top = rect.height() - label_size.height() -
-                       TimeMarker::ArrowSize - 0.5f;
+
                const float height = label_size.height();
+               const float top =
+                       rect.height() - label_size.height() - TimeMarker::ArrowSize - 0.5f;
 
                const pv::util::Timestamp& delta = ref_item->delta(time_);
 
                if (delta >= 0)
-                       return QRectF(x, top, label_size.width(), height);
+                       r = QRectF(x, top, label_size.width(), height);
                else
-                       return QRectF(x - label_size.width(), top, label_size.width(), height);
+                       r = QRectF(x - label_size.width(), top, label_size.width(), height);
        }
+
+       return r;
 }
 
 pv::widgets::Popup* Flag::create_popup(QWidget *parent)