diff --git a/gui/include/Visualization/VisualizationGraphWidget.h b/gui/include/Visualization/VisualizationGraphWidget.h index cee73b7..7a7735c 100644 --- a/gui/include/Visualization/VisualizationGraphWidget.h +++ b/gui/include/Visualization/VisualizationGraphWidget.h @@ -19,7 +19,7 @@ class VisualizationGraphWidget : public QWidget, public IVisualizationWidget { Q_OBJECT public: - explicit VisualizationGraphWidget(QWidget *parent = 0); + explicit VisualizationGraphWidget(const QString name = {}, QWidget *parent = 0); virtual ~VisualizationGraphWidget(); void addVariable(std::shared_ptr variable); diff --git a/gui/src/Visualization/VisualizationGraphWidget.cpp b/gui/src/Visualization/VisualizationGraphWidget.cpp index cfe0b03..d6f0fcd 100644 --- a/gui/src/Visualization/VisualizationGraphWidget.cpp +++ b/gui/src/Visualization/VisualizationGraphWidget.cpp @@ -22,13 +22,17 @@ struct VisualizationGraphWidget::VisualizationGraphWidgetPrivate { std::unordered_map, QCPAbstractPlottable *> m_VariableToPlotMap; }; -VisualizationGraphWidget::VisualizationGraphWidget(QWidget *parent) +VisualizationGraphWidget::VisualizationGraphWidget(const QString name, QWidget *parent) : QWidget{parent}, ui{new Ui::VisualizationGraphWidget}, impl{spimpl::make_unique_impl()} { ui->setupUi(this); + // qcpplot title + ui->widget->plotLayout()->insertRow(0); + ui->widget->plotLayout()->addElement(0, 0, new QCPTextElement{ui->widget, name}); + // Set qcpplot properties : // - Drag (on x-axis) and zoom are enabled // - Mouse wheel on qcpplot is intercepted to determine the zoom orientation @@ -65,7 +69,12 @@ void VisualizationGraphWidget::close() QString VisualizationGraphWidget::name() const { - return QStringLiteral("MainView"); + if (auto title = dynamic_cast(ui->widget->plotLayout()->elementAt(0))) { + return title->text(); + } + else { + return QString{}; + } } void VisualizationGraphWidget::onMouseWheel(QWheelEvent *event) noexcept