X-Git-Url: http://git.code-monkey.de/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fviews%2Ftrace%2Fcursorpair.cpp;h=933eb8fff33e0c3aaf2ed255dc2a6e00bc5b8754;hp=0135c45742e83de4cd3b06c5f6668cb57e492004;hb=c04f5a29b805e2aa7afa06d80363bad1f5b705f6;hpb=21f5864602c5c1920fc9b44813f31e789bee6895 diff --git a/pv/views/trace/cursorpair.cpp b/pv/views/trace/cursorpair.cpp index 0135c45..933eb8f 100644 --- a/pv/views/trace/cursorpair.cpp +++ b/pv/views/trace/cursorpair.cpp @@ -20,11 +20,12 @@ #include #include -#include +#include #include #include "cursorpair.hpp" +#include "pv/globalsettings.hpp" #include "pv/util.hpp" #include "ruler.hpp" #include "view.hpp" @@ -40,17 +41,27 @@ namespace views { namespace trace { const int CursorPair::DeltaPadding = 8; -const QColor CursorPair::ViewportFillColor(220, 231, 243); CursorPair::CursorPair(View &view) : TimeItem(view), first_(new Cursor(view, 0.0)), second_(new Cursor(view, 1.0)) { + GlobalSettings::add_change_handler(this); + + GlobalSettings settings; + fill_color_ = QColor::fromRgba(settings.value( + GlobalSettings::Key_View_CursorFillColor).value()); + connect(&view_, SIGNAL(hover_point_changed(const QWidget*, QPoint)), this, SLOT(on_hover_point_changed(const QWidget*, QPoint))); } +CursorPair::~CursorPair() +{ + GlobalSettings::remove_change_handler(this); +} + bool CursorPair::enabled() const { return view_.cursors_shown(); @@ -158,7 +169,7 @@ void CursorPair::paint_back(QPainter &p, ViewItemPaintParams &pp) return; p.setPen(Qt::NoPen); - p.setBrush(QBrush(ViewportFillColor)); + p.setBrush(fill_color_); const pair offsets(get_cursor_offsets()); const int l = (int)max(min(offsets.first, offsets.second), 0.0f); @@ -188,6 +199,12 @@ pair CursorPair::get_cursor_offsets() const return pair(first_->get_x(), second_->get_x()); } +void CursorPair::on_setting_changed(const QString &key, const QVariant &value) +{ + if (key == GlobalSettings::Key_View_CursorFillColor) + fill_color_ = QColor::fromRgba(value.value()); +} + void CursorPair::on_hover_point_changed(const QWidget* widget, const QPoint& hp) { if (widget != view_.ruler())