4 class NODE_HT_header(bpy.types.Header):
5 __space_type__ = "NODE_EDITOR"
7 def draw(self, context):
9 snode = context.space_data
11 row = layout.row(align=True)
14 if context.area.show_menus:
15 sub = row.row(align=True)
16 sub.itemM("NODE_MT_view")
17 sub.itemM("NODE_MT_select")
18 sub.itemM("NODE_MT_add")
19 sub.itemM("NODE_MT_node")
22 row.itemR(snode, "tree_type", text="", expand=True)
24 if snode.tree_type == 'MATERIAL':
28 layout.template_ID(ob, "active_material", new="material.new")
30 layout.itemR(id, "use_nodes")
32 elif snode.tree_type == 'TEXTURE':
33 row.itemR(snode, "texture_type", text="", expand=True)
36 id_from = snode.id_from
38 layout.template_ID(id_from, "active_texture", new="texture.new")
40 layout.itemR(id, "use_nodes")
42 elif snode.tree_type == 'COMPOSITING':
45 layout.itemR(id, "use_nodes")
46 layout.itemR(id.render_data, "free_unused_nodes", text="Free Unused")
47 layout.itemR(snode, "backdrop")
49 class NODE_MT_view(bpy.types.Menu):
50 __space_type__ = "NODE_EDITOR"
53 def draw(self, context):
56 # layout.itemO("grease_pencil..")
59 layout.itemO("view2d.zoom_in")
60 layout.itemO("view2d.zoom_out")
64 layout.itemO("node.view_all")
65 layout.itemO("screen.screen_full_area")
67 class NODE_MT_select(bpy.types.Menu):
68 __space_type__ = "NODE_EDITOR"
71 def draw(self, context):
74 layout.itemO("node.select_border")
78 # layout.itemO("node.select_all")
79 # layout.itemO("node.select_linked_from")
80 # layout.itemO("node.select_linked_to")
82 class NODE_MT_node(bpy.types.Menu):
83 __space_type__ = "NODE_EDITOR"
86 def draw(self, context):
89 layout.itemO("tfm.translate")
90 layout.itemO("tfm.resize")
91 layout.itemO("tfm.rotate")
95 layout.itemO("node.duplicate")
96 layout.itemO("node.delete")
100 # layout.itemO("node.make_link")
102 # layout.itemO("node.edit_group")
103 # layout.itemO("node.ungroup")
104 # layout.itemO("node.group")
105 # layout.itemO("node.make_link")
109 layout.itemO("node.visibility_toggle")
112 # layout.itemO("node.rename")
114 # layout.itemO("node.show_cyclic_dependencies")
117 bpy.types.register(NODE_HT_header)
118 bpy.types.register(NODE_MT_view)
119 bpy.types.register(NODE_MT_select)
120 bpy.types.register(NODE_MT_node)