X-Git-Url: http://sigrok.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=pv%2Fview%2Ftimemarker.cpp;h=4874eb233c7ebf7d9fe5e282883dc93a1efbc8a7;hb=HEAD;hp=4c3645b4cd2b19e529efd0a2c8f43348b10fac6c;hpb=a28a212c7a9a3470e300911fe8aa62833a62d26a;p=pulseview.git diff --git a/pv/view/timemarker.cpp b/pv/view/timemarker.cpp deleted file mode 100644 index 4c3645b4..00000000 --- a/pv/view/timemarker.cpp +++ /dev/null @@ -1,105 +0,0 @@ -/* - * This file is part of the PulseView project. - * - * Copyright (C) 2012 Joel Holdsworth - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#include "timemarker.h" - -#include "view.h" - -#include - -#include - -using namespace std; - -namespace pv { -namespace view { - -TimeMarker::TimeMarker(View &view, const QColor &colour, double time) : - _view(view), - _colour(colour), - _time(time), - _value_action(NULL), - _value_widget(NULL), - _updating_value_widget(false) -{ -} - -double TimeMarker::time() const -{ - return _time; -} - -float TimeMarker::get_x() const -{ - return (_time - _view.offset()) / _view.scale(); -} - -void TimeMarker::set_time(double time) -{ - _time = time; - - if (_value_widget) { - _updating_value_widget = true; - _value_widget->setValue(time); - _updating_value_widget = false; - } - - time_changed(); -} - -void TimeMarker::paint(QPainter &p, const QRect &rect) -{ - const float x = get_x(); - p.setPen(_colour); - p.drawLine(QPointF(x, rect.top()), QPointF(x, rect.bottom())); -} - -pv::widgets::Popup* TimeMarker::create_popup(QWidget *parent) -{ - using pv::widgets::Popup; - - Popup *const popup = new Popup(parent); - QFormLayout *const form = new QFormLayout(popup); - popup->setLayout(form); - - _value_widget = new QDoubleSpinBox(parent); - _value_widget->setValue(_time); - _value_widget->setDecimals(6); - _value_widget->setSuffix("s"); - _value_widget->setSingleStep(1e-6); - - connect(_value_widget, SIGNAL(valueChanged(double)), - this, SLOT(on_value_changed(double))); - - form->addRow(tr("Time"), _value_widget); - - return popup; -} - -void TimeMarker::on_value_changed(double value) -{ - if (!_updating_value_widget) { - _time = value; - time_changed(); - } -} - -} // namespace view -} // namespace pv