Suggestion to improve editDocument() performance

This is for @schenglooi, really, in the wake of Dev Days, when I should have brought it up…

We have a couple of plugins that create hundreds (or thousands, in some cases) of nodes all at once.

When they’re operating under an editDocument(), then you see the scenegraph canvas flickering madly, and the properties panel doing the same, as it tries to adjust to each object that’s created or grouped, etc.

This, of course, means the object creation is slowed down for the UI changes.

How about a third parameter to editDocument() which is showChanges, defaulting to true (the current case), but which we could set to false to avoid all these redisplays while we’re operating, and greatly speed up what we’re doing.

Possible? Don’t know how easy it would be, but it sure would be valuable for complex plugins doing a lot of scenegraph work. And, almost more importantly, it would look a lot better from a UX point of view, with a single scenegraph canvas update when done, so the plugin action looks atomic.

(Of course, if it takes a long time, we’ll get the “working…” notice, and that’s fine.)