[josm-dev] Layer specific history
Vincent Privat
vincent.privat at gmail.com
Wed Dec 30 18:05:12 UTC 2015
I think 2) is the best solution. It remains simple for most users who work
on a single modifiable layer at a time, but provides a nice flexibility for
those who work on several layers.
3) is too complex. The less dialogs we have the best it is.
2015-12-29 17:16 GMT+01:00 Holger Mappt <holgerosm at gmx.net>:
> Hi,
>
> See https://josm.openstreetmap.de/ticket/11904.
> What is the recommended way to add a command history with undo/redo
> functionality to a layer that is not an OSM data layer? In this case the
> GeoImageLayer.
>
> The other software I know has one history stack. Every modification
> generates a history entry. JOSM default is to have history only for OSM
> data layers. The Mapillary plugin implements a history as toggle dialog
> with separate undo/redo buttons.
>
> I can imagine three options:
> 1) One linear history stack for all actions with one interface. This is
> what is usually done in other software. The interface is the undo/redo in
> the edit menu and the main toolbar and the command stack toggle dialog.
>
> 2) One history stack per layer with one interface. Similar to 1), but
> undo/redo applies only to the active layer. This decouples the actions
> done in different layers. It requires that actions done in one layer do
> not depend on actions in another layer. "Layer" can either be a single
> layer or one layer type.
>
> 3) Each layer implements a custom history. Similar to 2), but different
> interface for each layer. Has the advantage that fancy things can be
> done. E.g. for the GeoImageLayer the history could be per image. But the
> user is confronted with many history dialogs and undo mechanisms.
>
> To be useful the history needs a concept of "connected actions" and the
> possibility to undo unconnected actions independently. Example: The key
> "opening_hours" is added to a POI node, then the key "name" of an other PI
> node is changed. To undo the opening_hours the name change has to undone
> too with the current implementation. But the two POI nodes are not
> connected, it should be possible to undo either change.
>
> Regards,
> Holger
>
> _______________________________________________
> josm-dev mailing list
> josm-dev at openstreetmap.org
> https://lists.openstreetmap.org/listinfo/josm-dev
>
More information about the josm-dev
mailing list