diff --git a/app/src/MainWindow.cpp b/app/src/MainWindow.cpp index 4e11f1c..3dcbf5e 100644 --- a/app/src/MainWindow.cpp +++ b/app/src/MainWindow.cpp @@ -27,6 +27,8 @@ #include #include #include +#include +#include #include #include @@ -172,6 +174,10 @@ MainWindow::MainWindow(QWidget *parent) connect(&sqpApp->dataSourceController(), SIGNAL(dataSourceItemSet(DataSourceItem *)), m_Ui->dataSourceWidget, SLOT(addDataSource(DataSourceItem *))); + qRegisterMetaType >(); + connect(&sqpApp->visualizationController(), SIGNAL(variableCreated(std::shared_ptr)), + m_Ui->view, SLOT(displayVariable(std::shared_ptr))); + /* QLopGUI::registerMenuBar(menuBar()); this->setWindowIcon(QIcon(":/sciqlopLOGO.svg")); this->m_progressWidget = new QWidget(); diff --git a/gui/include/Visualization/VisualizationWidget.h b/gui/include/Visualization/VisualizationWidget.h index b4af372..4d12b0e 100644 --- a/gui/include/Visualization/VisualizationWidget.h +++ b/gui/include/Visualization/VisualizationWidget.h @@ -6,6 +6,7 @@ #include #include +class Variable; class VisualizationTabWidget; Q_DECLARE_LOGGING_CATEGORY(LOG_VisualizationWidget) @@ -35,6 +36,15 @@ public: void close() override; QString name() const; +public slots: + /** + * Displays a variable in a new graph of a new zone of the current tab + * @param variable the variable to display + * @todo this is a temporary method that will be replaced by own actions for each type of + * visualization widget + */ + void displayVariable(std::shared_ptr variable) noexcept; + private: Ui::VisualizationWidget *ui; }; diff --git a/gui/src/Visualization/VisualizationWidget.cpp b/gui/src/Visualization/VisualizationWidget.cpp index 5fa0cda..611bbfa 100644 --- a/gui/src/Visualization/VisualizationWidget.cpp +++ b/gui/src/Visualization/VisualizationWidget.cpp @@ -78,3 +78,8 @@ QString VisualizationWidget::name() const { return QStringLiteral("MainView"); } + +void VisualizationWidget::displayVariable(std::shared_ptr variable) noexcept +{ + /// @todo ALX : add variable in a new graph +}