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
curveundocommands.h
Go to the documentation of this file.
1
19#ifndef OPENSWMMVIS_CURVE_CURVEUNDOCOMMANDS_H
20#define OPENSWMMVIS_CURVE_CURVEUNDOCOMMANDS_H
21
22#include "curve/curveprovider.h"
23
24#include <QString>
25#include <QUndoCommand>
26#include <QVector>
27
28namespace openswmmvis::curve {
29
33class BulkSetCurvePointsCommand : public QUndoCommand
34{
35public:
37 QVector<int> indices,
38 QVector<CurvePoint> oldPoints,
39 QVector<CurvePoint> newPoints,
40 QString description,
41 QUndoCommand *parent = nullptr);
42 void undo() override;
43 void redo() override;
44
45private:
46 void apply_(const QVector<CurvePoint> &target);
47
48 CurveProvider *m_provider;
49 QVector<int> m_indices;
50 QVector<CurvePoint> m_oldPoints;
51 QVector<CurvePoint> m_newPoints;
52};
53
54} // namespace openswmmvis::curve
55
56#endif // OPENSWMMVIS_CURVE_CURVEUNDOCOMMANDS_H
Set one or more point coordinates atomically. Indices and the pre/post coordinate vectors must be the...
Definition curveundocommands.h:34
void undo() override
Definition curveundocommands.cpp:47
void redo() override
Definition curveundocommands.cpp:48
Definition curveprovider.h:56
Slice BQ Phase 6.7.1 — MVC model for a single SWMM curve.
Definition curveprovider.h:31
QVector< int > parent
union-find
Definition pslgminsize.cpp:176