##// END OF EJS Templates
Implements "Variable creation" operation (1)...
Implements "Variable creation" operation (1) Defines properties that will be necessary for the operation: - the provider attached to the variable created - the metadata attached to the variable created

File last commit:

r1144:cca0e9bff7aa
r1176:f9a3c30f94e2
Show More
SqpApplication.cpp
217 lines | 8.5 KiB | text/x-c | CppLexer
/ gui / src / SqpApplication.cpp
Initialisation de l'application multithread avec le spimpl....
r21 #include "SqpApplication.h"
Adds a a gui controller class to manage global actions across the application.
r1076 #include <Actions/ActionsGuiController.h>
Thibaud Rabillard
Fix wrong merge
r1087 #include <Catalogue/CatalogueController.h>
Alexandre Leroux
Makes the connection between Data source controller and Variable controller...
r169 #include <Data/IDataProvider.h>
Initialisation de l'application multithread avec le spimpl....
r21 #include <DataSource/DataSourceController.h>
Rename "DragDropHelper" in "DragDropGuiController"
r1075 #include <DragAndDrop/DragDropGuiController.h>
Intialization of network controller
r339 #include <Network/NetworkController.h>
Initialisation de l'application multithread avec le spimpl....
r21 #include <QThread>
Time widget is now used with the variable createion request
r193 #include <Time/TimeController.h>
Alexandre Leroux
Makes the connection between Variable controller and Visualization controller...
r170 #include <Variable/Variable.h>
Alexandre Leroux
Inits variable controller and adds it to the SciQlop app
r111 #include <Variable/VariableController.h>
Drop of product in variables
r870 #include <Variable/VariableModel.h>
Add the visualization controller
r53 #include <Visualization/VisualizationController.h>
Initialisation de l'application multithread avec le spimpl....
r21
Q_LOGGING_CATEGORY(LOG_SqpApplication, "SqpApplication")
class SqpApplication::SqpApplicationPrivate {
public:
add missing visualization thread call
r55 SqpApplicationPrivate()
: m_DataSourceController{std::make_unique<DataSourceController>()},
Alexandre Leroux
Inits variable controller and adds it to the SciQlop app
r111 m_VariableController{std::make_unique<VariableController>()},
Alexandre Leroux
Removes compilation warnings (with Meson)
r961 m_TimeController{std::make_unique<TimeController>()},
m_NetworkController{std::make_unique<NetworkController>()},
New helper class for the drag&drop
r837 m_VisualizationController{std::make_unique<VisualizationController>()},
Rename "DragDropHelper" in "DragDropGuiController"
r1075 m_DragDropGuiController{std::make_unique<DragDropGuiController>()},
correction of merge
r1059 m_CatalogueController{std::make_unique<CatalogueController>()},
Adds a a gui controller class to manage global actions across the application.
r1076 m_ActionsGuiController{std::make_unique<ActionsGuiController>()},
Toolbar for interactions modes
r957 m_PlotInterractionMode(SqpApplication::PlotsInteractionMode::None),
m_PlotCursorMode(SqpApplication::PlotsCursorMode::NoCursor)
Alexandre Leroux
Minor fixes...
r32 {
Alexandre Leroux
Makes the connection between Data source controller and Variable controller...
r169 // /////////////////////////////// //
// Connections between controllers //
// /////////////////////////////// //
// VariableController <-> DataSourceController
connect(m_DataSourceController.get(),
Alexandre Leroux
Updates variable creation to pass metadata...
r410 SIGNAL(variableCreationRequested(const QString &, const QVariantHash &,
std::shared_ptr<IDataProvider>)),
Alexandre Leroux
Makes the connection between Data source controller and Variable controller...
r169 m_VariableController.get(),
Alexandre Leroux
Updates variable creation to pass metadata...
r410 SLOT(createVariable(const QString &, const QVariantHash &,
std::shared_ptr<IDataProvider>)));
Alexandre Leroux
Makes the connection between Data source controller and Variable controller...
r169
Drop of product in variables
r870 connect(m_VariableController->variableModel(), &VariableModel::requestVariable,
m_DataSourceController.get(), &DataSourceController::requestVariable);
Alexandre Leroux
Makes the connection between Variable controller and Visualization controller...
r170 // VariableController <-> VisualizationController
Alexandre Leroux
Variable deletion (7)...
r336 connect(m_VariableController.get(),
SIGNAL(variableAboutToBeDeleted(std::shared_ptr<Variable>)),
m_VisualizationController.get(),
SIGNAL(variableAboutToBeDeleted(std::shared_ptr<Variable>)), Qt::DirectConnection);
Alexandre Leroux
Makes the connection between Variable controller and Visualization controller...
r170
Add connection logical for the rescale operation
r437 connect(m_VariableController.get(),
Change SqpRange for SqpDateTime
r512 SIGNAL(rangeChanged(std::shared_ptr<Variable>, const SqpRange &)),
Add connection logical for the rescale operation
r437 m_VisualizationController.get(),
Change SqpRange for SqpDateTime
r512 SIGNAL(rangeChanged(std::shared_ptr<Variable>, const SqpRange &)));
Add connection logical for the rescale operation
r437
Time widget is now used with the variable createion request
r193
Alexandre Leroux
Minor fixes...
r32 m_DataSourceController->moveToThread(&m_DataSourceControllerThread);
Add a name for all thread
r429 m_DataSourceControllerThread.setObjectName("DataSourceControllerThread");
Intialization of network controller
r339 m_NetworkController->moveToThread(&m_NetworkControllerThread);
Add a name for all thread
r429 m_NetworkControllerThread.setObjectName("NetworkControllerThread");
Alexandre Leroux
Inits variable controller and adds it to the SciQlop app
r111 m_VariableController->moveToThread(&m_VariableControllerThread);
Add a name for all thread
r429 m_VariableControllerThread.setObjectName("VariableControllerThread");
add missing visualization thread call
r55 m_VisualizationController->moveToThread(&m_VisualizationControllerThread);
Add a name for all thread
r429 m_VisualizationControllerThread.setObjectName("VsualizationControllerThread");
Thibaud Rabillard
Fix wrong merge
r1087 m_CatalogueController->moveToThread(&m_CatalogueControllerThread);
m_CatalogueControllerThread.setObjectName("CatalogueControllerThread");
Time widget is now used with the variable createion request
r193
Merge branch 'feature/NetworkController' into develop...
r374
Time widget is now used with the variable createion request
r193 // Additionnal init
m_VariableController->setTimeController(m_TimeController.get());
Alexandre Leroux
Minor fixes...
r32 }
Ajout des règles vera++
r24 virtual ~SqpApplicationPrivate()
Ajout de la méthode wait pour éviter de détruire un thread en cours...
r22 {
m_DataSourceControllerThread.quit();
m_DataSourceControllerThread.wait();
Add the visualization controller
r53
Intialization of network controller
r339 m_NetworkControllerThread.quit();
m_NetworkControllerThread.wait();
Alexandre Leroux
Inits variable controller and adds it to the SciQlop app
r111 m_VariableControllerThread.quit();
m_VariableControllerThread.wait();
add missing visualization thread call
r55 m_VisualizationControllerThread.quit();
m_VisualizationControllerThread.wait();
Thibaud Rabillard
Fix wrong merge
r1087
m_CatalogueControllerThread.quit();
m_CatalogueControllerThread.wait();
Ajout de la méthode wait pour éviter de détruire un thread en cours...
r22 }
Initialisation de l'application multithread avec le spimpl....
r21
std::unique_ptr<DataSourceController> m_DataSourceController;
Alexandre Leroux
Inits variable controller and adds it to the SciQlop app
r111 std::unique_ptr<VariableController> m_VariableController;
Time widget is now used with the variable createion request
r193 std::unique_ptr<TimeController> m_TimeController;
Intialization of network controller
r339 std::unique_ptr<NetworkController> m_NetworkController;
Add the visualization controller
r53 std::unique_ptr<VisualizationController> m_VisualizationController;
Thibaud Rabillard
Fix wrong merge
r1087 std::unique_ptr<CatalogueController> m_CatalogueController;
Adds a a gui controller class to manage global actions across the application.
r1076
Initialisation de l'application multithread avec le spimpl....
r21 QThread m_DataSourceControllerThread;
Intialization of network controller
r339 QThread m_NetworkControllerThread;
Alexandre Leroux
Inits variable controller and adds it to the SciQlop app
r111 QThread m_VariableControllerThread;
add missing visualization thread call
r55 QThread m_VisualizationControllerThread;
Thibaud Rabillard
Fix wrong merge
r1087 QThread m_CatalogueControllerThread;
New helper class for the drag&drop
r837
Rename "DragDropHelper" in "DragDropGuiController"
r1075 std::unique_ptr<DragDropGuiController> m_DragDropGuiController;
Adds a a gui controller class to manage global actions across the application.
r1076 std::unique_ptr<ActionsGuiController> m_ActionsGuiController;
Toolbar for interactions modes
r957
SqpApplication::PlotsInteractionMode m_PlotInterractionMode;
SqpApplication::PlotsCursorMode m_PlotCursorMode;
Initialisation de l'application multithread avec le spimpl....
r21 };
SqpApplication::SqpApplication(int &argc, char **argv)
Alexandre Leroux
Minor fixes...
r32 : QApplication{argc, argv}, impl{spimpl::make_unique_impl<SqpApplicationPrivate>()}
Initialisation de l'application multithread avec le spimpl....
r21 {
Implement the network controller to permit the execution of a request...
r389 qCDebug(LOG_SqpApplication()) << tr("SqpApplication construction") << QThread::currentThread();
Initialisation de l'application multithread avec le spimpl....
r21
connect(&impl->m_DataSourceControllerThread, &QThread::started,
impl->m_DataSourceController.get(), &DataSourceController::initialize);
connect(&impl->m_DataSourceControllerThread, &QThread::finished,
impl->m_DataSourceController.get(), &DataSourceController::finalize);
Intialization of network controller
r339 connect(&impl->m_NetworkControllerThread, &QThread::started, impl->m_NetworkController.get(),
&NetworkController::initialize);
connect(&impl->m_NetworkControllerThread, &QThread::finished, impl->m_NetworkController.get(),
&NetworkController::finalize);
Alexandre Leroux
Inits variable controller and adds it to the SciQlop app
r111 connect(&impl->m_VariableControllerThread, &QThread::started, impl->m_VariableController.get(),
&VariableController::initialize);
connect(&impl->m_VariableControllerThread, &QThread::finished, impl->m_VariableController.get(),
&VariableController::finalize);
add missing visualization thread call
r55 connect(&impl->m_VisualizationControllerThread, &QThread::started,
impl->m_VisualizationController.get(), &VisualizationController::initialize);
connect(&impl->m_VisualizationControllerThread, &QThread::finished,
impl->m_VisualizationController.get(), &VisualizationController::finalize);
Add the visualization controller
r53
Thibaud Rabillard
Fix wrong merge
r1087 connect(&impl->m_CatalogueControllerThread, &QThread::started,
impl->m_CatalogueController.get(), &CatalogueController::initialize);
connect(&impl->m_CatalogueControllerThread, &QThread::finished,
impl->m_CatalogueController.get(), &CatalogueController::finalize);
Initialisation de l'application multithread avec le spimpl....
r21 impl->m_DataSourceControllerThread.start();
Intialization of network controller
r339 impl->m_NetworkControllerThread.start();
Alexandre Leroux
Inits variable controller and adds it to the SciQlop app
r111 impl->m_VariableControllerThread.start();
add missing visualization thread call
r55 impl->m_VisualizationControllerThread.start();
Thibaud Rabillard
Fix wrong merge
r1087 impl->m_CatalogueControllerThread.start();
Initialisation de l'application multithread avec le spimpl....
r21 }
MR for linux compilation
r845 SqpApplication::~SqpApplication()
{
}
Initialisation de l'application multithread avec le spimpl....
r21
MR for linux compilation
r845 void SqpApplication::initialize()
{
}
Alexandre Leroux
Add access to DataSourceController from SqpApplication
r33
Alexandre Leroux
Make access to controllers non-const (maybe the controller will be modified)
r116 DataSourceController &SqpApplication::dataSourceController() noexcept
Alexandre Leroux
Add access to DataSourceController from SqpApplication
r33 {
return *impl->m_DataSourceController;
}
Add the visualization controller
r53
Intialization of network controller
r339 NetworkController &SqpApplication::networkController() noexcept
{
return *impl->m_NetworkController;
}
Time widget is now used with the variable createion request
r193 TimeController &SqpApplication::timeController() noexcept
{
return *impl->m_TimeController;
}
Alexandre Leroux
Make access to controllers non-const (maybe the controller will be modified)
r116 VariableController &SqpApplication::variableController() noexcept
Alexandre Leroux
Inits variable controller and adds it to the SciQlop app
r111 {
return *impl->m_VariableController;
}
Alexandre Leroux
Make access to controllers non-const (maybe the controller will be modified)
r116 VisualizationController &SqpApplication::visualizationController() noexcept
Add the visualization controller
r53 {
return *impl->m_VisualizationController;
}
New helper class for the drag&drop
r837
Add catalogue controller to SqpApplication
r1144 CatalogueController &SqpApplication::catalogueController() noexcept
{
return *impl->m_CatalogueController;
}
Rename "DragDropHelper" in "DragDropGuiController"
r1075 DragDropGuiController &SqpApplication::dragDropGuiController() noexcept
New helper class for the drag&drop
r837 {
Rename "DragDropHelper" in "DragDropGuiController"
r1075 return *impl->m_DragDropGuiController;
New helper class for the drag&drop
r837 }
Toolbar for interactions modes
r957
Adds a a gui controller class to manage global actions across the application.
r1076 ActionsGuiController &SqpApplication::actionsGuiController() noexcept
{
return *impl->m_ActionsGuiController;
}
Toolbar for interactions modes
r957 SqpApplication::PlotsInteractionMode SqpApplication::plotsInteractionMode() const
{
return impl->m_PlotInterractionMode;
}
void SqpApplication::setPlotsInteractionMode(SqpApplication::PlotsInteractionMode mode)
{
impl->m_PlotInterractionMode = mode;
}
SqpApplication::PlotsCursorMode SqpApplication::plotsCursorMode() const
{
return impl->m_PlotCursorMode;
}
void SqpApplication::setPlotsCursorMode(SqpApplication::PlotsCursorMode mode)
{
impl->m_PlotCursorMode = mode;
}