RescaleAxeOperation.h
42 lines
| 1.3 KiB
| text/x-c
|
CLexer
r435 | #ifndef SCIQLOP_RESCALEAXEOPERATION_H | |||
#define SCIQLOP_RESCALEAXEOPERATION_H | ||||
#include "Visualization/IVisualizationWidgetVisitor.h" | ||||
#include <Data/SqpDateTime.h> | ||||
#include <Common/spimpl.h> | ||||
#include <QLoggingCategory> | ||||
#include <memory> | ||||
class Variable; | ||||
Q_DECLARE_LOGGING_CATEGORY(LOG_RescaleAxeOperation) | ||||
/** | ||||
* @brief The RescaleAxeOperation class defines an operation that traverses all of visualization | ||||
* widgets to remove a variable if they contain it | ||||
*/ | ||||
class RescaleAxeOperation : public IVisualizationWidgetVisitor { | ||||
public: | ||||
/** | ||||
* Ctor | ||||
* @param variable the variable to remove from widgets | ||||
*/ | ||||
explicit RescaleAxeOperation(std::shared_ptr<Variable> variable, const SqpDateTime &range); | ||||
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 RescaleAxeOperationPrivate; | ||||
spimpl::unique_impl_ptr<RescaleAxeOperationPrivate> impl; | ||||
}; | ||||
#endif // SCIQLOP_RESCALEAXEOPERATION_H | ||||