Thread Previous • Date Previous • Date Next • Thread Next |
Hello JP, 'interleaved' to the original text my comments. Il 23/12/2016 08:56, jp charras ha scritto:
I agree, this is the point. Also it is very useful having the undo on operations that can be done on a lot of components (as an example you can set the font for all the fields at once in the component spreadsheet and a single 'undo' on this is very useful)Le 23/12/2016 à 00:30, Dino Ghilardi a écrit :...Yes, the undo/redo on multiple sheets is very tricky, mainly because usually you are not expecting this command made in a given sheet changes something in an other sheet. Your remark about synchronizing the undo/redo between all sheets shows very well the problem. This is the reason the clearing annotation command is not undo-able, and some changes when generating a netlist clears the undo/redo stack.. I am not sure this is only a matter of code (it could be fixed), but this is a matter of usability: Is it really possible to safely undo a "global" command from a sheet, after a lot of other edition commands made in other sheets.
How to remember or accept all commands to undo/redo in other sheets?
A possible solution should be:Push on the undo stack of every sheet a 'multiple sheet undo' marker with an 'unique-id' for the operation. When undoing something and this command is reached check if it is present on top of the undo stack of every sheet If yes, undo the operation on all the sheets (maybe adding a dialog warning for the multiple sheet operation) If no issue a warning and ask some user interaction to choose what to do (skip undo, undo automatically all the operation done after the current for other sheets, go on the sheets that have operations done after this marker, list the things that will be undone etc...).
Remark: From my point of view, the value of the reference field should be *not modifiable* because: 1) changing this values usually breaks the board. 2) in complex hierarchies, this is not the value of the reference, only the value currently displayed on screen. 3) the ref and the unit number and closely associated in multiple units per package components.
In the newer version of the tool I let the value of the reference field be modified using the same code of the "edit" dialog, so the complex hierarchy problem should be solved. The reference ii "not deletable", but can be modified in the same way you can change it in the 'edit' dialog.
Moreover the multiple edit of reference has a sense if you want to un-annotate a group of components (as revert "Rxx" to "R?"). (A better solution should be having an 'unannotate selected components' option and an 'annotate selected components', but I think I'll leave this into my 'personal wish list' for a very long time).
Cheers, Dino.
Thread Previous • Date Previous • Date Next • Thread Next |