This snippet can be run from Text Editor to get an idea of what I mean.
import bpy
nt = bpy.data.materials['Material'].node_tree
nodes = nt.nodes
a = nodes.new('ShaderNodeBsdfDiffuse')
a.location = 0, 0
b = nodes.new('ShaderNodeBsdfDiffuse')
b.location = 200, 0
f = nodes.new('NodeFrame')
f.location = -200, 0
a.parent = f
b.parent = f
That produces this initially.
only when i move the mouse inside the nodeview does the Frame update its visual representation.
I would love some suggestions. The code/Operator that we execute in Sverchok has the NodeView context and an edit_tree if that helps.


bpy.ops.node.add_node(bl_idname), my script builds an entire nodetree usingnodes.new(bl_idname), which doesn't have the same scene update behaviour. – zeffii Feb 03 '18 at 15:15new(). Does that work for you? @zeffii – p2or Feb 03 '18 at 15:22context.area.tag_redraw()(as @J.Bakker suggested) does the trick @zeffii – p2or Feb 03 '18 at 15:35bpy.ops.node.select_all()at the end... (updated again) @zeffii – p2or Feb 03 '18 at 15:55