mirror of
https://github.com/fralx/LimeReport.git
synced 2025-11-25 00:18:06 +03:00
Extend Axis data class
This commit is contained in:
@@ -1,14 +1,26 @@
|
||||
#ifndef AXISDATA_H
|
||||
#define AXISDATA_H
|
||||
|
||||
#include <QtGlobal>
|
||||
#include <QObject>
|
||||
|
||||
namespace LimeReport {
|
||||
class AxisData
|
||||
class AxisData : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
Q_PROPERTY(bool reverseDirection READ reverseDirection WRITE setReverseDirection)
|
||||
Q_PROPERTY(bool calculateAxisScale READ calculateAxisScale WRITE setCalculateAxisScale)
|
||||
Q_PROPERTY(bool isStepAutomatic READ isStepAutomatic WRITE setIsStepAutomatic)
|
||||
Q_PROPERTY(bool isMinimumAutomatic READ isMinimumAutomatic WRITE setIsMinimumAutomatic)
|
||||
Q_PROPERTY(bool isMaximumAutomatic READ isMaximumAutomatic WRITE setIsMaximumAutomatic)
|
||||
Q_PROPERTY(qreal manualStep READ manualStep WRITE setManualStep)
|
||||
Q_PROPERTY(qreal manualMinimum READ manualMinimum WRITE setManualMinimum)
|
||||
Q_PROPERTY(qreal manualMaximum READ manualMaximum WRITE setManualMaximum)
|
||||
public:
|
||||
AxisData();
|
||||
AxisData(qreal minValue, qreal maxValue);
|
||||
AxisData(QObject *parent = nullptr);
|
||||
|
||||
void copy(AxisData *other);
|
||||
void update();
|
||||
void update(qreal minValue, qreal maxValue);
|
||||
|
||||
int segmentCount() const;
|
||||
|
||||
@@ -21,8 +33,34 @@ public:
|
||||
|
||||
qreal delta() const;
|
||||
|
||||
bool reverseDirection() const;
|
||||
void setReverseDirection(bool newReverseDirection);
|
||||
bool calculateAxisScale() const;
|
||||
void setCalculateAxisScale(bool newCalculateAxisScale);
|
||||
|
||||
qreal manualMaximum() const;
|
||||
void setManualMaximum(qreal newManualMaximum);
|
||||
|
||||
qreal manualMinimum() const;
|
||||
void setManualMinimum(qreal newManualMinimum);
|
||||
|
||||
qreal manualStep() const;
|
||||
void setManualStep(qreal newManualStep);
|
||||
|
||||
bool isMaximumAutomatic() const;
|
||||
void setIsMaximumAutomatic(bool newIsMaximumAutomatic);
|
||||
|
||||
bool isMinimumAutomatic() const;
|
||||
void setIsMinimumAutomatic(bool newIsMinimumAutomatic);
|
||||
|
||||
bool isStepAutomatic() const;
|
||||
void setIsStepAutomatic(bool newIsStepAutomatic);
|
||||
|
||||
private:
|
||||
void calculateValuesAboveMax(qreal minValue, qreal maxValue, int segments);
|
||||
void calculateRoundedAxisScale();
|
||||
void calculateSimpleAxisScale();
|
||||
qreal calculateNewMinimum(qreal min, qreal step) const;
|
||||
qreal calculateNewMaximum(qreal max, qreal step) const;
|
||||
|
||||
qreal m_rangeMin;
|
||||
qreal m_rangeMax;
|
||||
@@ -31,6 +69,14 @@ private:
|
||||
qreal m_step;
|
||||
qreal m_delta;
|
||||
int m_segmentCount;
|
||||
bool m_calculateAxisScale;
|
||||
bool m_reverseDirection;
|
||||
qreal m_manualMaximum;
|
||||
qreal m_manualMinimum;
|
||||
qreal m_manualStep;
|
||||
bool m_isMaximumAutomatic;
|
||||
bool m_isMinimumAutomatic;
|
||||
bool m_isStepAutomatic;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user