##// END OF EJS Templates
Reads variable's metadata to retrieve the type of data series (scalar, vector, spectrogram)
Reads variable's metadata to retrieve the type of data series (scalar, vector, spectrogram)

File last commit:

r1114:716d2411dc36
r1304:23206e07bbc2
Show More
VisualizationGraphWidget.h
141 lines | 5.2 KiB | text/x-c | CLexer
/ gui / include / Visualization / VisualizationGraphWidget.h
Creation of VisualizationWidget, VizualizationTabWidget, VisualizationZoneWidget, VisualizationGraphWidget
r58 #ifndef SCIQLOP_VISUALIZATIONGRAPHWIDGET_H
#define SCIQLOP_VISUALIZATIONGRAPHWIDGET_H
Add the visualization gui classes
r118 #include "Visualization/IVisualizationWidget.h"
Integrates the drag&drop classes into the existing visualization classes.
r842 #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>
Add the visualization gui classes
r118 #include <memory>
#include <Common/spimpl.h>
Alexandre Leroux
Adds logs for null visitors
r219 Q_DECLARE_LOGGING_CATEGORY(LOG_VisualizationGraphWidget)
Alexandre Leroux
QCustomPlot notify the graph widget when the xRange changed
r227 class QCPRange;
Alexandre Leroux
Passes directly GraphWidget in delegate...
r725 class QCustomPlot;
Change SqpRange for SqpDateTime
r512 class SqpRange;
Add the visualization gui classes
r118 class Variable;
multi selection of zones
r1089 class VisualizationWidget;
Integrates the drag&drop classes into the existing visualization classes.
r842 class VisualizationZoneWidget;
Action "Remove Selected Zones"
r1114 class VisualizationSelectionZoneItem;
Add the visualization gui classes
r118
Creation of VisualizationWidget, VizualizationTabWidget, VisualizationZoneWidget, VisualizationGraphWidget
r58 namespace Ui {
class VisualizationGraphWidget;
} // namespace Ui
Integrates the drag&drop classes into the existing visualization classes.
r842 class VisualizationGraphWidget : public VisualizationDragWidget, public IVisualizationWidget {
Creation of VisualizationWidget, VizualizationTabWidget, VisualizationZoneWidget, VisualizationGraphWidget
r58 Q_OBJECT
Alexandre Leroux
Sets sames margin sides for graphs in a same zone
r730 friend class QCustomPlotSynchronizer;
Alexandre Leroux
Passes directly GraphWidget in delegate...
r725 friend class VisualizationGraphRenderingDelegate;
Creation of VisualizationWidget, VizualizationTabWidget, VisualizationZoneWidget, VisualizationGraphWidget
r58 public:
Alexandre Leroux
Fixes reference
r205 explicit VisualizationGraphWidget(const QString &name = {}, QWidget *parent = 0);
Creation of VisualizationWidget, VizualizationTabWidget, VisualizationZoneWidget, VisualizationGraphWidget
r58 virtual ~VisualizationGraphWidget();
multi selection of zones
r1089 /// Returns the VisualizationZoneWidget which contains the graph or nullptr
Format changes
r847 VisualizationZoneWidget *parentZoneWidget() const noexcept;
Integrates the drag&drop classes into the existing visualization classes.
r842
multi selection of zones
r1089 /// Returns the main VisualizationWidget which contains the graph or nullptr
VisualizationWidget *parentVisualizationWidget() const;
Implementation of V5 acquisition
r539 /// If acquisition isn't enable, requestDataLoading signal cannot be emit
void enableAcquisition(bool enable);
Add synchronization that keep delta
r444
Initialisation of the graph range at creation in a new graphe, or inside...
r548 void addVariable(std::shared_ptr<Variable> variable, SqpRange range);
Alexandre Leroux
Remove variable from graph (2)...
r270 /// Removes a variable from the graph
void removeVariable(std::shared_ptr<Variable> variable) noexcept;
Add the visualization gui classes
r118
Integrates the drag&drop classes into the existing visualization classes.
r842 /// Returns the list of all variables used in the graph
Format changes
r847 QList<std::shared_ptr<Variable> > variables() const;
Integrates the drag&drop classes into the existing visualization classes.
r842
Alexandre Leroux
Refactors VisualizationGraphWidget::setYRange()...
r903 /// Sets the y-axis range based on the data of a variable
void setYRange(std::shared_ptr<Variable> variable);
Change SqpRange for SqpDateTime
r512 SqpRange graphRange() const noexcept;
void setGraphRange(const SqpRange &range);
Add connection logical for the rescale operation
r437
Action "Remove Selected Zones"
r1114 // Zones
Keep the selection zones when a graph is dropped in another synchro zone
r1088 /// Returns the ranges of all the selection zones on the graph
QVector<SqpRange> selectionZoneRanges() const;
/// Adds new selection zones in the graph
void addSelectionZones(const QVector<SqpRange> &ranges);
Action "Remove Selected Zones"
r1114 /// Removes the specified selection zone
void removeSelectionZone(VisualizationSelectionZoneItem *selectionZone);
Keep the selection zones when a graph is dropped in another synchro zone
r1088
Undo zoom box action
r1086 /// Undo the last zoom done with a zoom box
void undoZoom();
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;
Alexandre Leroux
Adds override keywor
r218 QString name() const override;
Add the visualization gui classes
r118
Integrates the drag&drop classes into the existing visualization classes.
r842 // VisualisationDragWidget
drag of selection zones
r1087 QMimeData *mimeData(const QPoint &position) const override;
QPixmap customDragPixmap(const QPoint &dragPosition) override;
Integrates the drag&drop classes into the existing visualization classes.
r842 bool isDragAllowed() const override;
Improves visual effect of dropping a variable in a graph
r879 void highlightForMerge(bool highlighted) override;
Add synchronization that keep delta
r444
Implements cursor mode
r1003 // Cursors
/// Adds or moves the vertical cursor at the specified value on the x-axis
void addVerticalCursor(double time);
/// Adds or moves the vertical cursor at the specified value on the x-axis
void addVerticalCursorAtViewportPosition(double position);
void removeVerticalCursor();
/// Adds or moves the vertical cursor at the specified value on the y-axis
void addHorizontalCursor(double value);
/// Adds or moves the vertical cursor at the specified value on the y-axis
void addHorizontalCursorAtViewportPosition(double position);
void removeHorizontalCursor();
Fix the cosinus bug....
r298 signals:
Implementation of V5 acquisition
r539 void synchronize(const SqpRange &range, const SqpRange &oldRange);
void requestDataLoading(QVector<std::shared_ptr<Variable> > variable, const SqpRange &range,
Implémentation timewidget
r816 bool synchronise);
Fix the cosinus bug....
r298
Alexandre Leroux
Handles desynchronisation when removing variable from a graph (1)...
r737 /// Signal emitted when the variable is about to be removed from the graph
void variableAboutToBeRemoved(std::shared_ptr<Variable> var);
/// Signal emitted when the variable has been added to the graph
Add synchronization part of v5 acquisition
r540 void variableAdded(std::shared_ptr<Variable> var);
Alexandre Leroux
Shows/hides plot overlay when entering/leaving graph
r728 protected:
Alexandre Leroux
Handles desynchronisation when removing variable from a graph (2)...
r738 void closeEvent(QCloseEvent *event) override;
Alexandre Leroux
Shows/hides plot overlay when entering/leaving graph
r728 void enterEvent(QEvent *event) override;
void leaveEvent(QEvent *event) override;
Add synchronization part of v5 acquisition
r540
drag of selection zones
r1087 QCustomPlot &plot() const noexcept;
Alexandre Leroux
Passes directly GraphWidget in delegate...
r725
Creation of VisualizationWidget, VizualizationTabWidget, VisualizationZoneWidget, VisualizationGraphWidget
r58 private:
Ui::VisualizationGraphWidget *ui;
Add the visualization gui classes
r118
class VisualizationGraphWidgetPrivate;
spimpl::unique_impl_ptr<VisualizationGraphWidgetPrivate> impl;
Alexandre Leroux
Handles key modifiers for zoom...
r179
private slots:
Alexandre Leroux
Remove variable from graph (1)...
r269 /// Slot called when right clicking on the graph (displays a menu)
void onGraphMenuRequested(const QPoint &pos) noexcept;
Alexandre Leroux
QCustomPlot notify the graph widget when the xRange changed
r227
Add synchronization that keep delta
r444 /// Rescale the X axe to range parameter
void onRangeChanged(const QCPRange &t1, const QCPRange &t2);
Alexandre Leroux
QCustomPlot notify the graph widget when the xRange changed
r227
Alexandre Leroux
Handles double click on color scale...
r1043 /// Slot called when a mouse double click was made
void onMouseDoubleClick(QMouseEvent *event) noexcept;
Alexandre Leroux
Creates method that will display a tooltip and a tracer with data point information after a while
r481 /// Slot called when a mouse move was made
void onMouseMove(QMouseEvent *event) noexcept;
Alexandre Leroux
Handles key modifiers for zoom...
r179 /// Slot called when a mouse wheel was made, to perform some processing before the zoom is done
void onMouseWheel(QWheelEvent *event) noexcept;
Implementation of the calibration for the synchronization...
r445 /// Slot called when a mouse press was made, to activate the calibration of a graph
void onMousePress(QMouseEvent *event) noexcept;
/// Slot called when a mouse release was made, to deactivate the calibration of a graph
void onMouseRelease(QMouseEvent *event) noexcept;
The mock plugin can now create data with view operation
r235
void onDataCacheVariableUpdated();
add Skeleton for displaying data which are already in cache
r571
void onUpdateVarDisplaying(std::shared_ptr<Variable> variable, const SqpRange &range);
Creation of VisualizationWidget, VizualizationTabWidget, VisualizationZoneWidget, VisualizationGraphWidget
r58 };
#endif // SCIQLOP_VISUALIZATIONGRAPHWIDGET_H