Modify

Opened 13 months ago

Last modified 13 months ago

#7665 new enhancement

merge conflation operations for multiple pairs into one undo-able action

Reported by: Cobra Owned by: joshdoe
Priority: normal Component: Plugin conflation
Version: Keywords:
Cc:

Description

At the moment each conflation operation is added as a single operation to the undo stack, even when conflating a lot of pairs at once.

All core operations add a single atomic operation to the undo stack when manipulating many objects, so this isn't consistent.

Attachments (0)

Change History (3)

comment:1 Changed 13 months ago by joshdoe

I initially did this, but ran into trouble with the #7616 example you gave. Since the nodes were part of relations, each command to transfer the relation would overwrite the previous one, so only the last match would have the proper relation membership, for all others it simply disappeared.

To bundle this all into one command, I have to break one of two conventions: execute separate commands upon creation of the master command, or prompt the user within the executeCommand() for resolving conflicts (if any). I think either way works for the end user, so I'll try one of them.

comment:2 follow-up: Changed 13 months ago by skyper

Thanks for this plugin.
Sorry do not have much time for JOSM/OSM right now.

Think this feature would be really nice !

Is it not possible to add/remove all objects at once. Probably does not work directly with the "replace object command".

Cheers

comment:3 in reply to: ↑ 2 Changed 13 months ago by joshdoe

Replying to skyper:

Is it not possible to add/remove all objects at once. Probably does not work directly with the "replace object command".

When objects only exist in the reference layer, conflating simply copies the objects to the subject layer, so multiple objects can be contained in one command, and that's what I do now. Replace Geometry on the other hand currently changes the entire relation member list, so these can't be simply queued up. Hopefully I'll get to some solution soon(ish).

Add Comment

Modify Ticket

Change Properties
<Author field>
Action
as new .
as The resolution will be set. Next status will be 'closed'.
to The owner will be changed from joshdoe. Next status will be 'new'.
Next status will be 'needinfo'.The owner will change to Cobra
as duplicate The resolution will be set to duplicate. Next status will be 'closed'.The specified ticket will be cross-referenced with this ticket
The owner will be changed from joshdoe to anonymous. Next status will be 'assigned'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.