subsurface/desktop-widgets/command.cpp
Berthold Stoeger 96d8727399 Undo: use dive * instead of unique index in renumber-dives
Now, that pointers to dives are stable, we might just as well
use dive * instead of the unique-id. This also affects the
merge-dive command, as this uses the same renumbering machinery.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-10-11 16:22:27 -07:00

69 lines
1.3 KiB
C++

// SPDX-License-Identifier: GPL-2.0
#include "command.h"
#include "command_divelist.h"
namespace Command {
// Dive-list related commands
void addDive(dive *d, bool autogroup)
{
execute(new AddDive(d, autogroup));
}
void deleteDive(const QVector<struct dive*> &divesToDelete)
{
execute(new DeleteDive(divesToDelete));
}
void shiftTime(const QVector<dive *> &changedDives, int amount)
{
execute(new ShiftTime(changedDives, amount));
}
void renumberDives(const QVector<QPair<dive *, int>> &divesToRenumber)
{
execute(new RenumberDives(divesToRenumber));
}
void removeDivesFromTrip(const QVector<dive *> &divesToRemove)
{
execute(new RemoveDivesFromTrip(divesToRemove));
}
void removeAutogenTrips()
{
execute(new RemoveAutogenTrips);
}
void addDivesToTrip(const QVector<dive *> &divesToAddIn, dive_trip *trip)
{
execute(new AddDivesToTrip(divesToAddIn, trip));
}
void createTrip(const QVector<dive *> &divesToAddIn)
{
execute(new CreateTrip(divesToAddIn));
}
void autogroupDives()
{
execute(new AutogroupDives);
}
void mergeTrips(dive_trip *trip1, dive_trip *trip2)
{
execute(new MergeTrips(trip1, trip2));
}
void splitDives(dive *d, duration_t time)
{
execute(new SplitDives(d, time));
}
void mergeDives(const QVector <dive *> &dives)
{
execute(new MergeDives(dives));
}
} // namespace Command