SWMMVis  6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
utctimeaxis.h
Go to the documentation of this file.
1
47#ifndef OPENSWMMVIS_PLOT_UTCTIMEAXIS_H
48#define OPENSWMMVIS_PLOT_UTCTIMEAXIS_H
49
50#include <QCategoryAxis>
51#include <QDateTime>
52#include <QString>
53
54namespace openswmmvis::plot {
55
56class UtcTimeAxis : public QCategoryAxis
57{
58 Q_OBJECT
59
60public:
61 explicit UtcTimeAxis(QObject *parent = nullptr);
62 ~UtcTimeAxis() override;
63
65 void setFormat(const QString &format);
66 QString format() const { return m_format; }
67
70 void setTickCount(int count);
71 int tickCount() const { return m_tickCount; }
72
75 void setRange(const QDateTime &min, const QDateTime &max);
76 void setRangeMs(qint64 minMs, qint64 maxMs);
78 void setMin(const QDateTime &min);
79 void setMax(const QDateTime &max);
80
82 QDateTime min() const;
83 QDateTime max() const;
84
87 using QValueAxis::setRange;
88 using QValueAxis::setMin;
89 using QValueAxis::setMax;
90
91signals:
98 void rangeChangedUtc(const QDateTime &min, const QDateTime &max);
99
100private:
101 void rebuildLabels();
104 void onValueRangeChanged(qreal min, qreal max);
105
106 QString m_format = QStringLiteral("MM/dd/yyyy HH:mm");
107 int m_tickCount = 5;
108 qint64 m_minMs = 0;
109 qint64 m_maxMs = 0;
110 bool m_rebuilding = false;
111};
112
113} // namespace openswmmvis::plot
114
115#endif // OPENSWMMVIS_PLOT_UTCTIMEAXIS_H
Definition utctimeaxis.h:57
int tickCount() const
Definition utctimeaxis.h:71
void setMax(const QDateTime &max)
Definition utctimeaxis.cpp:60
void setMin(const QDateTime &min)
Move one edge, as QDateTimeAxis::setMin / setMax.
Definition utctimeaxis.cpp:53
void setRange(const QDateTime &min, const QDateTime &max)
Definition utctimeaxis.cpp:46
void setFormat(const QString &format)
QDateTime format string for the tick labels, as QDateTimeAxis::setFormat.
Definition utctimeaxis.cpp:29
QDateTime max() const
Definition utctimeaxis.cpp:91
void rangeChangedUtc(const QDateTime &min, const QDateTime &max)
void setRangeMs(qint64 minMs, qint64 maxMs)
Definition utctimeaxis.cpp:67
QString format() const
Definition utctimeaxis.h:66
void setTickCount(int count)
Definition utctimeaxis.cpp:37
QDateTime min() const
Range edges as UTC instants.
Definition utctimeaxis.cpp:86
Definition chartproperties.h:34
int count
Definition numberformat.cpp:101
QVector< int > parent
union-find
Definition pslgminsize.cpp:176