Comment 51 for bug 594073

Revision history for this message
Nox_firegalaxy (nox-7bitfaster) wrote :

Thank you for the very valuable information. You are right that calling SchematicCleanUp is not necessary for highlighting. None the less it is annoying that an export kills und/redo capability. So actually this is a seperate issue. Maybe we should split this topic off. Would it be feastable to make SCH_SCREEN::Remove generally undo aware and introduce a "batching" for changes in the undo/redo? This way one might avoid potential bugs like the supposed bug in AddNoConnect. Or is there a case that some item has to be removed without being "logged"?

I looked into the proposed approaches (using timestamp/temporary annotation) and tried to find all access made by netlist generation to annotations. If I am not mistaken annotations are only accessed in GetShortNetName. The netlist algorithm itself first looks up all physical connections, takes care of the label connections and finally cleans up a bit. So only the label step make use of the names and as labels are higher priority, annotations should never affect the result of the connection algorithm, or did I miss something?

Under these assumptions version 08 should work without complete annotation and without cleaning up. Remaining issues are the warp after the first selection and the unresolved short cut semantic.