##// END OF EJS Templates
Started UI unit testing...
Started UI unit testing Added basic single plot unit test, only plot and context creation is implemented, tests cases are to be written and refactoring init in shared test fixtures will be necessary. Signed-off-by: Alexis Jeandet <alexis.jeandet@member.fsf.org>

File last commit:

r1348:ea7d1a66f4ab
r1359:609bd9b37a71
Show More
VisualizationZoneWidget.h
106 lines | 3.8 KiB | text/x-c | CLexer
/ gui / include / Visualization / VisualizationZoneWidget.h
Creation of VisualizationWidget, VizualizationTabWidget, VisualizationZoneWidget, VisualizationGraphWidget
r58 #ifndef SCIQLOP_VISUALIZATIONZONEWIDGET_H
#define SCIQLOP_VISUALIZATIONZONEWIDGET_H
Made core module a git submodule, ready to start switching to new...
r1347 #include "Data/DateTimeRange.h"
Add the visualization gui classes
r118 #include "Visualization/IVisualizationWidget.h"
Integrates the drag&drop classes into the existing visualization classes.
r839 #include "Visualization/VisualizationDragWidget.h"
Add the visualization gui classes
r118
Alexandre Leroux
Adds logs for null visitors
r219 #include <QLoggingCategory>
Creation of VisualizationWidget, VizualizationTabWidget, VisualizationZoneWidget, VisualizationGraphWidget
r58 #include <QWidget>
Implementation of V5 acquisition
r539 #include <memory>
#include <Common/spimpl.h>
Alexandre Leroux
Adds logs for null visitors
r219 Q_DECLARE_LOGGING_CATEGORY(LOG_VisualizationZoneWidget)
Creation of VisualizationWidget, VizualizationTabWidget, VisualizationZoneWidget, VisualizationGraphWidget
r58 namespace Ui {
class VisualizationZoneWidget;
Format changes
r844 } // namespace Ui
Creation of VisualizationWidget, VizualizationTabWidget, VisualizationZoneWidget, VisualizationGraphWidget
r58
Alexandre Leroux
Minor fixes...
r203 class Variable;
Alexandre Leroux
Adds a name for a zone...
r197 class VisualizationGraphWidget;
Integrates the drag&drop classes into the existing visualization classes.
r839 class VisualizationZoneWidget : public VisualizationDragWidget, public IVisualizationWidget {
Creation of VisualizationWidget, VizualizationTabWidget, VisualizationZoneWidget, VisualizationGraphWidget
r58 Q_OBJECT
public:
Alexandre Leroux
Adds a name for a zone...
r197 explicit VisualizationZoneWidget(const QString &name = {}, QWidget *parent = 0);
Creation of VisualizationWidget, VizualizationTabWidget, VisualizationZoneWidget, VisualizationGraphWidget
r58 virtual ~VisualizationZoneWidget();
Time Zone Mode + prepare graph mode
r1138 /// Sets the range of the zone, only works if there is at least one graph in the zone
/// Note: calibrations between graphs are lost.
Renamed SqpRange to DateTimeRange, introduced VariableController2 to...
r1346 void setZoneRange(const DateTimeRange &range);
Time Zone Mode + prepare graph mode
r1138
Integrates the drag&drop classes into the existing visualization classes.
r839 /// Adds a graph widget
Add the visualization gui classes
r118 void addGraph(VisualizationGraphWidget *graphWidget);
Format changes
r844 /// Inserts a graph widget
Integrates the drag&drop classes into the existing visualization classes.
r839 void insertGraph(int index, VisualizationGraphWidget *graphWidget);
Alexandre Leroux
Completes the method of creating a zone from a variable
r200 /**
* Creates a graph using a variable. The variable will be displayed in the new graph.
Integrates the drag&drop classes into the existing visualization classes.
r839 * The graph is added at the end.
Alexandre Leroux
Completes the method of creating a zone from a variable
r200 * @param variable the variable for which to create the graph
* @return the pointer to the created graph
*/
VisualizationGraphWidget *createGraph(std::shared_ptr<Variable> variable);
Add the visualization gui classes
r118
Integrates the drag&drop classes into the existing visualization classes.
r839 /**
* Creates a graph using a variable. The variable will be displayed in the new graph.
* The graph is inserted at the specified index.
* @param variable the variable for which to create the graph
* @param index The index where the graph should be inserted in the layout
* @return the pointer to the created graph
*/
VisualizationGraphWidget *createGraph(std::shared_ptr<Variable> variable, int index);
/**
* Creates a graph using a list of variables. The variables will be displayed in the new graph.
* The graph is inserted at the specified index.
* @param variables List of variables to be added to the graph
* @param index The index where the graph should be inserted in the layout
* @return the pointer to the created graph
*/
All the codebase is modified to build with new Variable Controller...
r1348 VisualizationGraphWidget *createGraph( std::vector<std::shared_ptr<Variable> > variables,
Format changes
r844 int index);
Integrates the drag&drop classes into the existing visualization classes.
r839
Keep the selection zones when a graph is dropped in another synchro zone
r1048 /// Returns the first graph in the zone or nullptr if there is no graph inside
VisualizationGraphWidget *firstGraph() const;
Closes all graphs of the selected zone in graph mode
r1307 /// Closes all graphes inside the zone
void closeAllGraphs();
Add the visualization gui classes
r118 // IVisualizationWidget interface
Alexandre Leroux
Updates visitor interface...
r207 void accept(IVisualizationWidgetVisitor *visitor) override;
Alexandre Leroux
Creates a interface that defines a variable container...
r209 bool canDrop(const Variable &variable) const override;
Alexandre Leroux
Unplot menu (5): adds contains() method to an IVariableContainer...
r327 bool contains(const Variable &variable) const override;
Add const and override
r119 QString name() const override;
Add the visualization gui classes
r118
Integrates the drag&drop classes into the existing visualization classes.
r839 // VisualisationDragWidget
drag of selection zones
r1047 QMimeData *mimeData(const QPoint &position) const override;
Integrates the drag&drop classes into the existing visualization classes.
r839 bool isDragAllowed() const override;
Implements cursor mode
r960 void notifyMouseMoveInGraph(const QPointF &graphPosition, const QPointF &plotPosition,
VisualizationGraphWidget *graphWidget);
void notifyMouseLeaveGraph(VisualizationGraphWidget *graphWidget);
Alexandre Leroux
Handles desynchronisation when removing variable from a graph (2)...
r738 protected:
void closeEvent(QCloseEvent *event) override;
Creation of VisualizationWidget, VizualizationTabWidget, VisualizationZoneWidget, VisualizationGraphWidget
r58 private:
Ui::VisualizationZoneWidget *ui;
Implementation of V5 acquisition
r539
class VisualizationZoneWidgetPrivate;
spimpl::unique_impl_ptr<VisualizationZoneWidgetPrivate> impl;
Alexandre Leroux
Vera corrections
r657
private slots:
void onVariableAdded(std::shared_ptr<Variable> variable);
Alexandre Leroux
Handles desynchronisation when removing variable from a graph (1)...
r737 /// Slot called when a variable is about to be removed from a graph contained in the zone
void onVariableAboutToBeRemoved(std::shared_ptr<Variable> variable);
Integrates the drag&drop classes into the existing visualization classes.
r839
Format changes
r844 void dropMimeData(int index, const QMimeData *mimeData);
drop of variable inside an existing graph
r875 void dropMimeDataOnGraph(VisualizationDragWidget *dragWidget, const QMimeData *mimeData);
Creation of VisualizationWidget, VizualizationTabWidget, VisualizationZoneWidget, VisualizationGraphWidget
r58 };
#endif // SCIQLOP_VISUALIZATIONZONEWIDGET_H