##// END OF EJS Templates
Edition of event products via the inspector
Edition of event products via the inspector

File last commit:

r735:4f6deb054427
r1150:ecfb65cac0fa
Show More
FindVariableOperation.h
42 lines | 1.4 KiB | text/x-c | CLexer
#ifndef SCIQLOP_FINDVARIABLEOPERATION_H
#define SCIQLOP_FINDVARIABLEOPERATION_H
#include "Visualization/IVisualizationWidgetVisitor.h"
#include <Common/spimpl.h>
#include <set>
class IVisualizationWidget;
class Variable;
/**
* @brief The FindVariableOperation class defines an operation that traverses all of visualization
* widgets to determine which ones contain the variable passed as parameter. The result of the
* operation is the list of widgets that contain the variable.
*/
class FindVariableOperation : public IVisualizationWidgetVisitor {
public:
/**
* Ctor
* @param variable the variable to find
*/
explicit FindVariableOperation(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;
/// @return the widgets that contain the variable
std::set<IVisualizationWidget *> result() const noexcept;
private:
class FindVariableOperationPrivate;
spimpl::unique_impl_ptr<FindVariableOperationPrivate> impl;
};
#endif // SCIQLOP_FINDVARIABLEOPERATION_H