##// END OF EJS Templates
Partly reimplemented Graph event handling + bugfix...
Partly reimplemented Graph event handling + bugfix - Now pure UX scroll doesn't affect variable delta T - Now all events are captured by VisualizationGraphWidget(VGW) this avoid that QCP intercept them then FW them to VGW which interact back with QCP - Non transformation events a broken for now - Added keyboard navigation Signed-off-by: Alexis Jeandet <alexis.jeandet@member.fsf.org>

File last commit:

r1347:17e0dafec10c
r1362:0033c08c242f Pybind11
Show More
VisualizationGraphHelper.h
41 lines | 1.3 KiB | text/x-c | CLexer
/ gui / include / Visualization / VisualizationGraphHelper.h
#ifndef SCIQLOP_VISUALIZATIONGRAPHHELPER_H
#define SCIQLOP_VISUALIZATIONGRAPHHELPER_H
#include "Visualization/VisualizationDefs.h"
#include <Data/DateTimeRange.h>
#include <QLoggingCategory>
#include <QVector>
#include <memory>
Q_DECLARE_LOGGING_CATEGORY(LOG_VisualizationGraphHelper)
class IDataSeries;
class QCPAbstractPlottable;
class QCustomPlot;
class Variable;
/**
* @brief The VisualizationGraphHelper class aims to create the QCustomPlot components relative to a
* variable, depending on the data series of this variable
*/
struct VisualizationGraphHelper {
/**
* Creates (if possible) the QCustomPlot components relative to the variable passed in
* parameter, and adds these to the plot passed in parameter.
* @param variable the variable for which to create the components
* @param plot the plot in which to add the created components. It takes ownership of these
* components.
* @return the list of the components created
*/
static PlottablesMap create(std::shared_ptr<Variable> variable, QCustomPlot &plot) noexcept;
static void updateData(PlottablesMap &plottables, std::shared_ptr<Variable> variable,
const DateTimeRange &dateTime);
static void setYAxisRange(std::shared_ptr<Variable> variable, QCustomPlot &plot) noexcept;
};
#endif // SCIQLOP_VISUALIZATIONGRAPHHELPER_H