#include "gtl_gui_spgr_line.h" namespace gtl { namespace gui { namespace spgr { line_widget::line_widget(QWidget* parent, ::chart::axis_horz* axis_x, ::chart::axis_vert* axis_y, gtl::analog_data* ad) : QWidget(parent, Qt::Window) ,_series(nullptr) ,_chart(nullptr) ,_widget(nullptr) { _series = new gui::chart_series(ad, axis_x, axis_y); _chart = new line_chart(this, static_cast(axis_x), static_cast(axis_y)); _chart->add(_series); _widget = new gui::chart_widget(_chart, this); setLayout(new QVBoxLayout); layout()->setContentsMargins(0, 0, 0, 0); layout()->setSpacing(0); layout()->addWidget(_widget); } line_widget::~line_widget() { _chart->remove(); if(_widget) delete _widget; emit deleted(); } void line_widget::set_data(qreal* values, qreal size, qreal dx) { if(_series) _series->set_y(values, size, dx); } void line_widget::closeEvent(QCloseEvent *event) { emit closed(); } } } }