@@ -12,6 +12,7 | |||
|
12 | 12 | |
|
13 | 13 | Q_DECLARE_LOGGING_CATEGORY(LOG_VisualizationGraphWidget) |
|
14 | 14 | |
|
15 | class QCPRange; | |
|
15 | 16 | class Variable; |
|
16 | 17 | |
|
17 | 18 | namespace Ui { |
@@ -40,6 +41,9 private: | |||
|
40 | 41 | spimpl::unique_impl_ptr<VisualizationGraphWidgetPrivate> impl; |
|
41 | 42 | |
|
42 | 43 | private slots: |
|
44 | ||
|
45 | void onRangeChanged(const QCPRange &t1, const QCPRange &t2); | |
|
46 | ||
|
43 | 47 | /// Slot called when a mouse wheel was made, to perform some processing before the zoom is done |
|
44 | 48 | void onMouseWheel(QWheelEvent *event) noexcept; |
|
45 | 49 | }; |
@@ -4,7 +4,6 | |||
|
4 | 4 | #include "ui_VisualizationGraphWidget.h" |
|
5 | 5 | |
|
6 | 6 | #include <Variable/Variable.h> |
|
7 | ||
|
8 | 7 | #include <unordered_map> |
|
9 | 8 | |
|
10 | 9 | Q_LOGGING_CATEGORY(LOG_VisualizationGraphWidget, "VisualizationGraphWidget") |
@@ -42,8 +41,12 VisualizationGraphWidget::VisualizationGraphWidget(const QString &name, QWidget | |||
|
42 | 41 | ui->widget->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom); |
|
43 | 42 | ui->widget->axisRect()->setRangeDrag(Qt::Horizontal); |
|
44 | 43 | connect(ui->widget, &QCustomPlot::mouseWheel, this, &VisualizationGraphWidget::onMouseWheel); |
|
44 | connect(ui->widget->xAxis, static_cast<void (QCPAxis::*)(const QCPRange &, const QCPRange &)>( | |
|
45 | &QCPAxis::rangeChanged), | |
|
46 | this, &VisualizationGraphWidget::onRangeChanged); | |
|
45 | 47 | } |
|
46 | 48 | |
|
49 | ||
|
47 | 50 | VisualizationGraphWidget::~VisualizationGraphWidget() |
|
48 | 51 | { |
|
49 | 52 | delete ui; |
@@ -93,6 +96,14 QString VisualizationGraphWidget::name() const | |||
|
93 | 96 | } |
|
94 | 97 | } |
|
95 | 98 | |
|
99 | void VisualizationGraphWidget::onRangeChanged(const QCPRange &t1, const QCPRange &t2) | |
|
100 | { | |
|
101 | for (auto it = impl->m_VariableToPlotMap.cbegin(); it != impl->m_VariableToPlotMap.cend(); | |
|
102 | ++it) { | |
|
103 | it->first->onXRangeChanged(SqpDateTime{t2.lower, t2.upper}); | |
|
104 | } | |
|
105 | } | |
|
106 | ||
|
96 | 107 | void VisualizationGraphWidget::onMouseWheel(QWheelEvent *event) noexcept |
|
97 | 108 | { |
|
98 | 109 | auto zoomOrientations = QFlags<Qt::Orientation>{}; |
General Comments 0
You need to be logged in to leave comments.
Login now