1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
#include <Python.h>
#include "app/app.h"
#include "graph/proxy/graph.h"
#include "undo/undo_move_datum.h"
UndoMoveDatum::UndoMoveDatum(Datum* d, QPointF before, QPointF after)
: d(d), before(before), after(after)
{
setText("'move inspector'");
}
void UndoMoveDatum::redo()
{
// FIXME: very inefficient
CanvasInfo i;
i.subdatum[d] = after;
App::instance()->getProxy()->setPositions(i);
}
void UndoMoveDatum::undo()
{
// FIXME: very inefficient
CanvasInfo i;
i.subdatum[d] = before;
App::instance()->getProxy()->setPositions(i);
}
void UndoMoveDatum::swapPointer(Datum* a, Datum* b) const
{
if (a == d)
d = b;
}
|