mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
undo/device: adjust device management infrastructure
We no longer need the remove infrastructure, and the edit nickname function becomes much more intuitive to use by passing in the dive computer for which we want to create a nickname instead of the internal index into the array of devices. This also removes / simplifies the device list update signals in the DiveListNotifier. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
fbe17e620e
commit
e7a5ec46f5
6 changed files with 15 additions and 72 deletions
|
@ -553,10 +553,8 @@ void ImportDives::redoit()
|
|||
divesAndSitesToRemove = std::move(divesAndSitesToRemoveNew);
|
||||
|
||||
// Add devices
|
||||
for (const device &dev: devicesToAddAndRemove.devices) {
|
||||
int idx = add_to_device_table(&device_table, &dev);
|
||||
emit diveListNotifier.deviceAdded(idx);
|
||||
}
|
||||
for (const device &dev: devicesToAddAndRemove.devices)
|
||||
add_to_device_table(&device_table, &dev);
|
||||
|
||||
// Add new filter presets
|
||||
for (auto &it: filterPresetsToAdd) {
|
||||
|
@ -583,11 +581,8 @@ void ImportDives::undoit()
|
|||
setSelection(selection, currentDive);
|
||||
|
||||
// Remove devices
|
||||
for (const device &dev: devicesToAddAndRemove.devices) {
|
||||
int idx = remove_device(&device_table, &dev);
|
||||
if (idx >= 0)
|
||||
emit diveListNotifier.deviceDeleted(idx);
|
||||
}
|
||||
for (const device &dev: devicesToAddAndRemove.devices)
|
||||
remove_device(&device_table, &dev);
|
||||
|
||||
// Remove filter presets. Do this in reverse order.
|
||||
for (auto it = filterPresetsToRemove.rbegin(); it != filterPresetsToRemove.rend(); ++it) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue