I think this might be worth mentioning in the docs, because it can lead to memory leaks...
When you call close() on a top-level dialog, the dialog is out of sight, out of mind -- but it still exists in the desktop window list. The same goes for the builtin dialogs. All such top-level windows need to be destroyed with destroy(), or they will remain in memory until the program ends.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
This brings up another question: should some window references (for example, Desktop.windows and Base.parent) be changed to weak references to reduce the number of circular data structures in pyui?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I think this might be worth mentioning in the docs, because it can lead to memory leaks...
When you call close() on a top-level dialog, the dialog is out of sight, out of mind -- but it still exists in the desktop window list. The same goes for the builtin dialogs. All such top-level windows need to be destroyed with destroy(), or they will remain in memory until the program ends.
This brings up another question: should some window references (for example, Desktop.windows and Base.parent) be changed to weak references to reduce the number of circular data structures in pyui?