##// END OF EJS Templates
Removed interaction handling in QCP since they are implemented in...
Removed interaction handling in QCP since they are implemented in SciQLop Before the wheel interaction was done multiple times on QCP side first then on SciQLop side. Signed-off-by: Alexis Jeandet <alexis.jeandet@member.fsf.org>

File last commit:

r1281:89a3f92d2fbb
r1358:48660d9880a2
Show More
AxisRenderingUtils.h
44 lines | 1.4 KiB | text/x-c | CLexer
#ifndef SCIQLOP_AXISRENDERINGUTILS_H
#define SCIQLOP_AXISRENDERINGUTILS_H
#include <memory>
#include <QtCore/QLoggingCategory>
#include <QtCore/QString>
Q_DECLARE_LOGGING_CATEGORY(LOG_AxisRenderingUtils)
class IDataSeries;
class QCPAxis;
class QCustomPlot;
class SqpColorScale;
class Variable;
/// Formats a data value according to the axis on which it is present
QString formatValue(double value, const QCPAxis &axis);
/**
* Helper used to handle axes rendering
*/
struct IAxisHelper {
virtual ~IAxisHelper() noexcept = default;
/// Set properties of the plot's axes and the color scale associated to plot passed as
/// parameters
/// @param plot the plot for which to set axe properties
/// @param colorScale the color scale for which to set properties
virtual void setProperties(QCustomPlot &plot, SqpColorScale &colorScale) = 0;
/// Set the units of the plot's axes and the color scale associated to plot passed as
/// parameters
/// @param plot the plot for which to set axe units
/// @param colorScale the color scale for which to set unit
virtual void setUnits(QCustomPlot &plot, SqpColorScale &colorScale) = 0;
};
struct IAxisHelperFactory {
/// Creates IPlottablesHelper according to the type of data series a variable holds
static std::unique_ptr<IAxisHelper> create(const Variable &variable) noexcept;
};
#endif // SCIQLOP_AXISRENDERINGUTILS_H