##// END OF EJS Templates
Fix bug when creating two variables crash the app. ...
Fix bug when creating two variables crash the app. Variable as now invalid range and cache range at creation

File last commit:

r333:768151594917
r756:a7f60f6512e6
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