> > > So I guess a first cut would be working out the order of creations and > deferments in the UI startup code. > > Cheers -Terry > If I may add to this idea, it would also be very useful to have a list of ivars that somehow represent current state of Leo application, ivars that get changed through user interaction. When reloading Leo application we don't want to change any of this ivars. For example in this list belongs currently selected position, scroll positions, ratios of panes, position and size of window, undo/redo history, history of visited nodes, search patterns history, ...
In clojurescript world there is a figwheel tool which reloads client code in browser as soon as is changed on disk. Clojurescript programmers are advised to use different macros for defining such ivars. For all things that need to change after reload one should use `def` command, and for all things that should preserve their value after reload one should use `defonce` instead of `def`. That way during development code stays reloadable most of the time. There are no `defonce` in Python, but it can be simulated and it can be matter of convention. Vitalije -- You received this message because you are subscribed to the Google Groups "leo-editor" group. To unsubscribe from this group and stop receiving emails from it, send an email to leo-editor+unsubscr...@googlegroups.com. To post to this group, send email to leo-editor@googlegroups.com. Visit this group at https://groups.google.com/group/leo-editor. For more options, visit https://groups.google.com/d/optout.