@@ -192,6 +192,10 MainWindow::MainWindow(QWidget *parent) | |||||
192 | SIGNAL(variableAboutToBeDeleted(std::shared_ptr<Variable>)), m_Ui->view, |
|
192 | SIGNAL(variableAboutToBeDeleted(std::shared_ptr<Variable>)), m_Ui->view, | |
193 | SLOT(onVariableAboutToBeDeleted(std::shared_ptr<Variable>))); |
|
193 | SLOT(onVariableAboutToBeDeleted(std::shared_ptr<Variable>))); | |
194 |
|
194 | |||
|
195 | connect(&sqpApp->visualizationController(), | |||
|
196 | SIGNAL(rangeChanged(std::shared_ptr<Variable>, const SqpDateTime &)), m_Ui->view, | |||
|
197 | SLOT(onRangeChanged(std::shared_ptr<Variable>, const SqpDateTime &))); | |||
|
198 | ||||
195 | // Widgets / widgets connections |
|
199 | // Widgets / widgets connections | |
196 |
|
200 | |||
197 | // For the following connections, we use DirectConnection to allow each widget that can |
|
201 | // For the following connections, we use DirectConnection to allow each widget that can |
@@ -59,6 +59,9 signals: | |||||
59 | /// Signal emitted when a variable is about to be deleted from the controller |
|
59 | /// Signal emitted when a variable is about to be deleted from the controller | |
60 | void variableAboutToBeDeleted(std::shared_ptr<Variable> variable); |
|
60 | void variableAboutToBeDeleted(std::shared_ptr<Variable> variable); | |
61 |
|
61 | |||
|
62 | /// Signal emitted when a data acquisition is requested on a range for a variable | |||
|
63 | void rangeChanged(std::shared_ptr<Variable> variable, const SqpDateTime &range); | |||
|
64 | ||||
62 | public slots: |
|
65 | public slots: | |
63 | /// Request the data loading of the variable whithin dateTime |
|
66 | /// Request the data loading of the variable whithin dateTime | |
64 | void onRequestDataLoading(std::shared_ptr<Variable> variable, const SqpDateTime &dateTime); |
|
67 | void onRequestDataLoading(std::shared_ptr<Variable> variable, const SqpDateTime &dateTime); |
@@ -1,6 +1,8 | |||||
1 | #ifndef SCIQLOP_VISUALIZATIONCONTROLLER_H |
|
1 | #ifndef SCIQLOP_VISUALIZATIONCONTROLLER_H | |
2 | #define SCIQLOP_VISUALIZATIONCONTROLLER_H |
|
2 | #define SCIQLOP_VISUALIZATIONCONTROLLER_H | |
3 |
|
3 | |||
|
4 | #include <Data/SqpDateTime.h> | |||
|
5 | ||||
4 | #include <QLoggingCategory> |
|
6 | #include <QLoggingCategory> | |
5 | #include <QObject> |
|
7 | #include <QObject> | |
6 | #include <QUuid> |
|
8 | #include <QUuid> | |
@@ -29,6 +31,9 signals: | |||||
29 | /// Signal emitted when a variable is about to be deleted from SciQlop |
|
31 | /// Signal emitted when a variable is about to be deleted from SciQlop | |
30 | void variableAboutToBeDeleted(std::shared_ptr<Variable> variable); |
|
32 | void variableAboutToBeDeleted(std::shared_ptr<Variable> variable); | |
31 |
|
33 | |||
|
34 | /// Signal emitted when a data acquisition is requested on a range for a variable | |||
|
35 | void rangeChanged(std::shared_ptr<Variable> variable, const SqpDateTime &range); | |||
|
36 | ||||
32 | public slots: |
|
37 | public slots: | |
33 | /// Manage init/end of the controller |
|
38 | /// Manage init/end of the controller | |
34 | void initialize(); |
|
39 | void initialize(); |
@@ -161,6 +161,7 void VariableController::onDateTimeOnSelection(const SqpDateTime &dateTime) | |||||
161 | if (auto selectedVariable = impl->m_VariableModel->variable(selectedRow.row())) { |
|
161 | if (auto selectedVariable = impl->m_VariableModel->variable(selectedRow.row())) { | |
162 | selectedVariable->setDateTime(dateTime); |
|
162 | selectedVariable->setDateTime(dateTime); | |
163 | this->onRequestDataLoading(selectedVariable, dateTime); |
|
163 | this->onRequestDataLoading(selectedVariable, dateTime); | |
|
164 | emit rangeChanged(selectedVariable, dateTime); | |||
164 | } |
|
165 | } | |
165 | } |
|
166 | } | |
166 | } |
|
167 | } |
@@ -32,14 +32,15 public: | |||||
32 | /// Removes a variable from the graph |
|
32 | /// Removes a variable from the graph | |
33 | void removeVariable(std::shared_ptr<Variable> variable) noexcept; |
|
33 | void removeVariable(std::shared_ptr<Variable> variable) noexcept; | |
34 |
|
34 | |||
|
35 | /// Rescale the X axe to range parameter | |||
|
36 | void setRange(std::shared_ptr<Variable> variable, const SqpDateTime &range); | |||
|
37 | ||||
35 | // IVisualizationWidget interface |
|
38 | // IVisualizationWidget interface | |
36 | void accept(IVisualizationWidgetVisitor *visitor) override; |
|
39 | void accept(IVisualizationWidgetVisitor *visitor) override; | |
37 | bool canDrop(const Variable &variable) const override; |
|
40 | bool canDrop(const Variable &variable) const override; | |
38 | bool contains(const Variable &variable) const override; |
|
41 | bool contains(const Variable &variable) const override; | |
39 | QString name() const override; |
|
42 | QString name() const override; | |
40 |
|
43 | |||
41 | void updateDisplay(std::shared_ptr<Variable> variable); |
|
|||
42 |
|
||||
43 | signals: |
|
44 | signals: | |
44 | void requestDataLoading(std::shared_ptr<Variable> variable, const SqpDateTime &dateTime); |
|
45 | void requestDataLoading(std::shared_ptr<Variable> variable, const SqpDateTime &dateTime); | |
45 |
|
46 |
@@ -2,6 +2,7 | |||||
2 | #define SCIQLOP_VISUALIZATIONWIDGET_H |
|
2 | #define SCIQLOP_VISUALIZATIONWIDGET_H | |
3 |
|
3 | |||
4 | #include "Visualization/IVisualizationWidget.h" |
|
4 | #include "Visualization/IVisualizationWidget.h" | |
|
5 | #include <Data/SqpDateTime.h> | |||
5 |
|
6 | |||
6 | #include <QLoggingCategory> |
|
7 | #include <QLoggingCategory> | |
7 | #include <QWidget> |
|
8 | #include <QWidget> | |
@@ -41,6 +42,8 public slots: | |||||
41 | /// Slot called when a variable is about to be deleted from SciQlop |
|
42 | /// Slot called when a variable is about to be deleted from SciQlop | |
42 | void onVariableAboutToBeDeleted(std::shared_ptr<Variable> variable) noexcept; |
|
43 | void onVariableAboutToBeDeleted(std::shared_ptr<Variable> variable) noexcept; | |
43 |
|
44 | |||
|
45 | void onRangeChanged(std::shared_ptr<Variable> variable, const SqpDateTime &range) noexcept; | |||
|
46 | ||||
44 | private: |
|
47 | private: | |
45 | Ui::VisualizationWidget *ui; |
|
48 | Ui::VisualizationWidget *ui; | |
46 | }; |
|
49 | }; |
@@ -38,6 +38,11 public: | |||||
38 | m_VisualizationController.get(), |
|
38 | m_VisualizationController.get(), | |
39 | SIGNAL(variableAboutToBeDeleted(std::shared_ptr<Variable>)), Qt::DirectConnection); |
|
39 | SIGNAL(variableAboutToBeDeleted(std::shared_ptr<Variable>)), Qt::DirectConnection); | |
40 |
|
40 | |||
|
41 | connect(m_VariableController.get(), | |||
|
42 | SIGNAL(rangeChanged(std::shared_ptr<Variable>, const SqpDateTime &)), | |||
|
43 | m_VisualizationController.get(), | |||
|
44 | SIGNAL(rangeChanged(std::shared_ptr<Variable>, const SqpDateTime &))); | |||
|
45 | ||||
41 |
|
46 | |||
42 | m_DataSourceController->moveToThread(&m_DataSourceControllerThread); |
|
47 | m_DataSourceController->moveToThread(&m_DataSourceControllerThread); | |
43 | m_DataSourceControllerThread.setObjectName("DataSourceControllerThread"); |
|
48 | m_DataSourceControllerThread.setObjectName("DataSourceControllerThread"); |
@@ -5,6 +5,7 | |||||
5 | #include "Visualization/VisualizationZoneWidget.h" |
|
5 | #include "Visualization/VisualizationZoneWidget.h" | |
6 | #include "Visualization/operations/GenerateVariableMenuOperation.h" |
|
6 | #include "Visualization/operations/GenerateVariableMenuOperation.h" | |
7 | #include "Visualization/operations/RemoveVariableOperation.h" |
|
7 | #include "Visualization/operations/RemoveVariableOperation.h" | |
|
8 | #include "Visualization/operations/RescaleAxeOperation.h" | |||
8 | #include "Visualization/qcustomplot.h" |
|
9 | #include "Visualization/qcustomplot.h" | |
9 |
|
10 | |||
10 | #include "ui_VisualizationWidget.h" |
|
11 | #include "ui_VisualizationWidget.h" | |
@@ -141,3 +142,11 void VisualizationWidget::onVariableAboutToBeDeleted(std::shared_ptr<Variable> v | |||||
141 | auto removeVariableOperation = RemoveVariableOperation{variable}; |
|
142 | auto removeVariableOperation = RemoveVariableOperation{variable}; | |
142 | accept(&removeVariableOperation); |
|
143 | accept(&removeVariableOperation); | |
143 | } |
|
144 | } | |
|
145 | ||||
|
146 | void VisualizationWidget::onRangeChanged(std::shared_ptr<Variable> variable, | |||
|
147 | const SqpDateTime &range) noexcept | |||
|
148 | { | |||
|
149 | // Calls the operation of removing all references to the variable in the visualization | |||
|
150 | auto rescaleVariableOperation = RescaleAxeOperation{variable, range}; | |||
|
151 | accept(&rescaleVariableOperation); | |||
|
152 | } |
General Comments 0
You need to be logged in to leave comments.
Login now