##// END OF EJS Templates
Some refactoring on PB11 wrappers...
Some refactoring on PB11 wrappers Most sciqlop core wrappers are moved into a dedicated python module. We needs to get rid off sqpapp! All current sciqlop modules should either be stateless or act as real singletons they must not need any app to be used. This will ease testing, wrapping and usage. Signed-off-by: Alexis Jeandet <alexis.jeandet@member.fsf.org>

File last commit:

r1281:89a3f92d2fbb
r1341:f18e017310bc
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