##// END OF EJS Templates
Fixes data loss in some cases of data recovery from the CosiunusProvider
Fixes data loss in some cases of data recovery from the CosiunusProvider

File last commit:

r333:768151594917
r764:6fa5f5facdaa
Show More
RemoveVariableOperation.h
41 lines | 1.3 KiB | text/x-c | CLexer
#ifndef SCIQLOP_REMOVEVARIABLEOPERATION_H
#define SCIQLOP_REMOVEVARIABLEOPERATION_H
#include "Visualization/IVisualizationWidgetVisitor.h"
#include <Common/spimpl.h>
#include <QLoggingCategory>
#include <memory>
class Variable;
Q_DECLARE_LOGGING_CATEGORY(LOG_RemoveVariableOperation)
/**
* @brief The RemoveVariableOperation class defines an operation that traverses all of visualization
* widgets to remove a variable if they contain it
*/
class RemoveVariableOperation : public IVisualizationWidgetVisitor {
public:
/**
* Ctor
* @param variable the variable to remove from widgets
*/
explicit RemoveVariableOperation(std::shared_ptr<Variable> variable);
void visitEnter(VisualizationWidget *widget) override final;
void visitLeave(VisualizationWidget *widget) override final;
void visitEnter(VisualizationTabWidget *tabWidget) override final;
void visitLeave(VisualizationTabWidget *tabWidget) override final;
void visitEnter(VisualizationZoneWidget *zoneWidget) override final;
void visitLeave(VisualizationZoneWidget *zoneWidget) override final;
void visit(VisualizationGraphWidget *graphWidget) override final;
private:
class RemoveVariableOperationPrivate;
spimpl::unique_impl_ptr<RemoveVariableOperationPrivate> impl;
};
#endif // SCIQLOP_REMOVEVARIABLEOPERATION_H