##// END OF EJS Templates
Sets the name of the plugin for products and components...
Sets the name of the plugin for products and components Since there is only one common root in the data source widget, it is no longer possible to retrieve on the fly the name of the plugin in which a component or product is located. This name is therefore attached to their creation.

File last commit:

r736:bca343a0ae6b
r1076:9c3bb5e93c54
Show More
GenerateVariableMenuOperation.h
48 lines | 1.8 KiB | text/x-c | CLexer
/ gui / include / Visualization / operations / GenerateVariableMenuOperation.h
#ifndef SCIQLOP_GENERATEVARIABLEMENUOPERATION_H
#define SCIQLOP_GENERATEVARIABLEMENUOPERATION_H
#include "Visualization/IVisualizationWidgetVisitor.h"
#include <Common/spimpl.h>
#include <QLoggingCategory>
#include <set>
class QMenu;
class IVisualizationWidget;
class Variable;
Q_DECLARE_LOGGING_CATEGORY(LOG_GenerateVariableMenuOperation)
/**
* @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
* @param variableContainers the containers that already contain the variable for which to
* generate the menu
*/
explicit GenerateVariableMenuOperation(QMenu *menu, std::shared_ptr<Variable> variable,
std::set<IVisualizationWidget *> variableContainers);
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