Feature : insarviz projects
Allow user to save the current layers:
- order, filepath, option of current layers
- all the current selection items
User should also be able to close / load projects.
When a project is closed, all textures / shaders need to be destroyed for each closed layer:
Proper cleanup is especially important due to context sharing. Even though each QOpenGLWidget's associated context is destroyed together with the QOpenGLWidget, the sharable resources in that context, like textures, will stay valid until the top-level window, in which the QOpenGLWidget lived, is destroyed. Additionally, settings like Qt::AA_ShareOpenGLContexts and some Qt modules may trigger an even wider scope for sharing contexts, potentially leading to keeping the resources in question alive for the entire lifetime of the application. (QOpenGLWidget doc)
Edited by Colin Thomas