getting there …
cell-changes seem solid, row insert/delete needs more attention
EDIT: getting closer … I think i understand the Undo/Redo system i’ve set up (yeh, that I set up…)
hopefully all that’s left to do is implement it for specific actions other than those that’ve been used for testing (various insert row/delete row operations) – and refactor out a now redundant State variable (that now seems to track merely the “changed” state of the 2da)
basically it turns out i’ve been overthinking it, making things more complicated than they need to be.
EDIT_2: methinks the UndoRedo class is complete. but have yet to implement it in several row-insert/delete functions.
EDIT_3: nope. It still needs an Overwrite(row) action … but the system (if not [yet] concise) has become understandable.
EDIT_4: O its getting good – action Overwrite() slid in like a charm :)
next … and hopefully last … multi-row insert/delete
EDIT_5: Undo/Redo is basically done. There’s a few things i want to make friendlier before building another release version.
EDIT_6: DESIGN_FLAW. Since Undo/Redo identifies cells/rows by position it all screws up when cols are sorted.
for now i’ll probly just disable UR when the table is sorted by anything other than id-ascending ->
EDIT_7: think i patched it up by updating the row-ids in the Restorables – those ids ought remain current after a Sort.
tests indicate it works but permutations are through the roof