##// END OF EJS Templates
Correction MR
Correction MR

File last commit:

r196:244c7de3b522
r370:cd8490d9043f
Show More
GenerateVariableMenuOperation.h
42 lines | 1.6 KiB | text/x-c | CLexer
/ gui / include / Visualization / operations / GenerateVariableMenuOperation.h
Alexandre Leroux
Creates the visitor that generates a hierarchical menu associated with a variable....
r195 #ifndef SCIQLOP_GENERATEVARIABLEMENUOPERATION_H
#define SCIQLOP_GENERATEVARIABLEMENUOPERATION_H
#include "Visualization/IVisualizationWidgetVisitor.h"
#include <Common/spimpl.h>
Alexandre Leroux
Defines a menu builder...
r196 #include <QLoggingCategory>
Alexandre Leroux
Creates the visitor that generates a hierarchical menu associated with a variable....
r195 class QMenu;
class Variable;
Alexandre Leroux
Defines a menu builder...
r196 Q_DECLARE_LOGGING_CATEGORY(LOG_GenerateVariableMenuOperation)
Alexandre Leroux
Creates the visitor that generates a hierarchical menu associated with a variable....
r195 /**
* @brief The GenerateVariableMenuOperation class defines an operation that traverses all of
* visualization widgets to determine which can accommodate a variable. The result of the operation
* is a menu that contains actions to add the variable into the containers.
*/
class GenerateVariableMenuOperation : public IVisualizationWidgetVisitor {
public:
/**
* Ctor
* @param menu the menu to which to attach the generated menu
* @param variable the variable for which to generate the menu
*/
explicit GenerateVariableMenuOperation(QMenu *menu, 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 GenerateVariableMenuOperationPrivate;
spimpl::unique_impl_ptr<GenerateVariableMenuOperationPrivate> impl;
};
#endif // SCIQLOP_GENERATEVARIABLEMENUOPERATION_H