[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [22618] branches/blender2.5/blender: 2.5: Headers

Brecht Van Lommel brecht at blender.org
Wed Aug 19 02:55:32 CEST 2009


Revision: 22618
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=22618
Author:   blendix
Date:     2009-08-19 02:55:30 +0200 (Wed, 19 Aug 2009)

Log Message:
-----------
2.5: Headers

* Fix header menu spacing bug, and make it consistent for all headers.
* For consistency, always put menus first in the header, then any enums
  to switch the type of data displayed.
* Node editor header ported to python layout. Still quite a few
  operators missing to make the menus complete.
* RNA wrapped node editor, and added use_nodes property to material
  and scene.

Modified Paths:
--------------
    branches/blender2.5/blender/release/ui/space_buttons.py
    branches/blender2.5/blender/release/ui/space_console.py
    branches/blender2.5/blender/release/ui/space_filebrowser.py
    branches/blender2.5/blender/release/ui/space_image.py
    branches/blender2.5/blender/release/ui/space_info.py
    branches/blender2.5/blender/release/ui/space_outliner.py
    branches/blender2.5/blender/release/ui/space_sequencer.py
    branches/blender2.5/blender/release/ui/space_text.py
    branches/blender2.5/blender/release/ui/space_time.py
    branches/blender2.5/blender/release/ui/space_view3d.py
    branches/blender2.5/blender/source/blender/editors/armature/poselib.c
    branches/blender2.5/blender/source/blender/editors/include/ED_node.h
    branches/blender2.5/blender/source/blender/editors/include/UI_interface.h
    branches/blender2.5/blender/source/blender/editors/interface/interface_layout.c
    branches/blender2.5/blender/source/blender/editors/interface/interface_widgets.c
    branches/blender2.5/blender/source/blender/editors/space_action/action_header.c
    branches/blender2.5/blender/source/blender/editors/space_graph/graph_header.c
    branches/blender2.5/blender/source/blender/editors/space_nla/nla_header.c
    branches/blender2.5/blender/source/blender/editors/space_node/node_edit.c
    branches/blender2.5/blender/source/blender/editors/space_node/node_header.c
    branches/blender2.5/blender/source/blender/editors/space_node/node_intern.h
    branches/blender2.5/blender/source/blender/editors/space_node/node_state.c
    branches/blender2.5/blender/source/blender/editors/space_node/space_node.c
    branches/blender2.5/blender/source/blender/editors/space_text/text_header.c
    branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_header.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_main.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_material.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_scene.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_space.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_texture.c
    branches/blender2.5/blender/source/blender/windowmanager/WM_types.h

Added Paths:
-----------
    branches/blender2.5/blender/release/ui/space_node.py

Modified: branches/blender2.5/blender/release/ui/space_buttons.py
===================================================================
--- branches/blender2.5/blender/release/ui/space_buttons.py	2009-08-19 00:46:06 UTC (rev 22617)
+++ branches/blender2.5/blender/release/ui/space_buttons.py	2009-08-19 00:55:30 UTC (rev 22618)
@@ -10,11 +10,12 @@
 		so = context.space_data
 		scene = context.scene
 
-		layout.template_header()
+		row= layout.row(align=True)
+		row.template_header()
 
 		if context.area.show_menus:
-			row = layout.row(align=True)
-			row.itemM("Buttons_MT_view", text="View")
+			sub = row.row(align=True)
+			sub.itemM("Buttons_MT_view", text="View")
 			
 		row = layout.row()
 		row.itemR(so, "buttons_context", expand=True, text="")

Modified: branches/blender2.5/blender/release/ui/space_console.py
===================================================================
--- branches/blender2.5/blender/release/ui/space_console.py	2009-08-19 00:46:06 UTC (rev 22617)
+++ branches/blender2.5/blender/release/ui/space_console.py	2009-08-19 00:55:30 UTC (rev 22618)
@@ -12,17 +12,22 @@
 		# text = sc.text
 		layout = self.layout
 
-		layout.template_header()
+		row= layout.row(align=True)
+		row.template_header()
 
-		row = layout.row()
-		row.itemR(sc, "console_type", expand=True)
+		if context.area.show_menus:
+			sub = row.row(align=True)
 
+			if sc.console_type == 'REPORT':
+				sub.itemM("CONSOLE_MT_report")
+			else:
+				sub.itemM("CONSOLE_MT_console")
+
+		layout.itemS()
+		layout.itemR(sc, "console_type", expand=True)
+
 		if sc.console_type == 'REPORT':
-			
-			if context.area.show_menus:
-				row = layout.row()
-				row.itemM("CONSOLE_MT_report")
-			
+			row = layout.row(align=True)
 			row.itemR(sc, "show_report_debug", text="Debug")
 			row.itemR(sc, "show_report_info", text="Info")
 			row.itemR(sc, "show_report_operator", text="Operators")
@@ -32,13 +37,7 @@
 			row = layout.row()
 			row.enabled = sc.show_report_operator
 			row.itemO("console.report_replay")
-		
-		else:
-			if context.area.show_menus:
-				row = layout.row()
-				row.itemM("CONSOLE_MT_console")
 
-
 class CONSOLE_MT_console(bpy.types.Menu):
 	__space_type__ = "CONSOLE"
 	__label__ = "Console"

Modified: branches/blender2.5/blender/release/ui/space_filebrowser.py
===================================================================
--- branches/blender2.5/blender/release/ui/space_filebrowser.py	2009-08-19 00:46:06 UTC (rev 22617)
+++ branches/blender2.5/blender/release/ui/space_filebrowser.py	2009-08-19 00:55:30 UTC (rev 22618)
@@ -10,7 +10,7 @@
 		layout = self.layout
 		
 		params = st.params 
-		layout.template_header()
+		layout.template_header(menus=False)
 		
 		row = layout.row(align=True)
 		row.itemO("file.parent", text="", icon='ICON_FILE_PARENT')

Modified: branches/blender2.5/blender/release/ui/space_image.py
===================================================================
--- branches/blender2.5/blender/release/ui/space_image.py	2009-08-19 00:46:06 UTC (rev 22617)
+++ branches/blender2.5/blender/release/ui/space_image.py	2009-08-19 00:55:30 UTC (rev 22618)
@@ -205,23 +205,24 @@
 		show_paint = sima.show_paint
 		show_uvedit = sima.show_uvedit
 
-		layout.template_header()
+		row = layout.row(align=True)
+		row.template_header()
 
 		# menus
 		if context.area.show_menus:
-			row = layout.row()
-			row.itemM("IMAGE_MT_view")
+			sub = row.row(align=True)
+			sub.itemM("IMAGE_MT_view")
 
 			if show_uvedit:
-				row.itemM("IMAGE_MT_select")
+				sub.itemM("IMAGE_MT_select")
 
 			if ima and ima.dirty:
-				row.itemM("IMAGE_MT_image", text="Image*")
+				sub.itemM("IMAGE_MT_image", text="Image*")
 			else:
-				row.itemM("IMAGE_MT_image", text="Image")
+				sub.itemM("IMAGE_MT_image", text="Image")
 
 			if show_uvedit:
-				row.itemM("IMAGE_MT_uvs")
+				sub.itemM("IMAGE_MT_uvs")
 
 		layout.template_ID(sima, "image", new="image.new")
 

Modified: branches/blender2.5/blender/release/ui/space_info.py
===================================================================
--- branches/blender2.5/blender/release/ui/space_info.py	2009-08-19 00:46:06 UTC (rev 22617)
+++ branches/blender2.5/blender/release/ui/space_info.py	2009-08-19 00:55:30 UTC (rev 22618)
@@ -9,18 +9,19 @@
 		
 		st = context.space_data
 		rd = context.scene.render_data
-		
-		layout.template_header()
 
+		row = layout.row(align=True)
+		row.template_header()
+
 		if context.area.show_menus:
-			row = layout.row()
-			row.itemM("INFO_MT_file")
-			row.itemM("INFO_MT_add")
+			sub = row.row(align=True)
+			sub.itemM("INFO_MT_file")
+			sub.itemM("INFO_MT_add")
 			if rd.use_game_engine:
-				row.itemM("INFO_MT_game")
+				sub.itemM("INFO_MT_game")
 			else:
-				row.itemM("INFO_MT_render")
-			row.itemM("INFO_MT_help")
+				sub.itemM("INFO_MT_render")
+			sub.itemM("INFO_MT_help")
 
 		layout.template_ID(context.window, "screen", new="screen.new", unlink="screen.delete")
 		layout.template_ID(context.screen, "scene", new="scene.new", unlink="scene.delete")

Copied: branches/blender2.5/blender/release/ui/space_node.py (from rev 22607, branches/blender2.5/blender/release/ui/space_outliner.py)
===================================================================
--- branches/blender2.5/blender/release/ui/space_node.py	                        (rev 0)
+++ branches/blender2.5/blender/release/ui/space_node.py	2009-08-19 00:55:30 UTC (rev 22618)
@@ -0,0 +1,121 @@
+
+import bpy
+
+class NODE_HT_header(bpy.types.Header):
+	__space_type__ = "NODE_EDITOR"
+
+	def draw(self, context):
+		layout = self.layout
+		snode = context.space_data
+
+		row = layout.row(align=True)
+		row.template_header()
+
+		if context.area.show_menus:
+			sub = row.row(align=True)
+			sub.itemM("NODE_MT_view")
+			sub.itemM("NODE_MT_select")
+			sub.itemM("NODE_MT_add")
+			sub.itemM("NODE_MT_node")
+
+		row = layout.row()
+		row.itemR(snode, "tree_type", text="", expand=True)
+
+		if snode.tree_type == 'MATERIAL':
+			ob = snode.id_from
+			id = snode.id
+			if ob:
+				layout.template_ID(ob, "active_material", new="material.new")
+			if id:
+				layout.itemR(id, "use_nodes", toggle=True)
+
+		elif snode.tree_type == 'TEXTURE':
+			row.itemR(snode, "texture_type", text="", expand=True)
+
+			id = snode.id
+			id_from = snode.id_from
+			if id_from:
+				layout.template_ID(id_from, "active_texture", new="texture.new")
+			if id:
+				layout.itemR(id, "use_nodes", toggle=True)
+
+		elif snode.tree_type == 'COMPOSITING':
+			id = snode.id
+
+			layout.itemR(id, "use_nodes", toggle=True)
+			layout.itemR(id.render_data, "free_unused_nodes", text="Free Unused", toggle=True)
+			layout.itemR(snode, "backdrop", toggle=True)
+
+class NODE_MT_view(bpy.types.Menu):
+	__space_type__ = "NODE_EDITOR"
+	__label__ = "View"
+
+	def draw(self, context):
+		layout = self.layout
+
+		# layout.itemO("grease_pencil..")
+		# layout.itemS()
+
+		layout.itemO("view2d.zoom_in")
+		layout.itemO("view2d.zoom_out")
+
+		layout.itemS()
+
+		layout.itemO("node.view_all")
+		layout.itemO("screen.screen_full_area")
+
+class NODE_MT_select(bpy.types.Menu):
+	__space_type__ = "NODE_EDITOR"
+	__label__ = "Select"
+
+	def draw(self, context):
+		layout = self.layout
+
+		layout.itemO("node.select_border")
+
+		# XXX
+		# layout.itemS()
+		# layout.itemO("node.select_all")
+		# layout.itemO("node.select_linked_from")
+		# layout.itemO("node.select_linked_to")
+
+class NODE_MT_node(bpy.types.Menu):
+	__space_type__ = "NODE_EDITOR"
+	__label__ = "Node"
+
+	def draw(self, context):
+		layout = self.layout
+
+		layout.itemO("tfm.translate")
+		layout.itemO("tfm.resize")
+		layout.itemO("tfm.rotate")
+
+		layout.itemS()
+
+		layout.itemO("node.duplicate")
+		layout.itemO("node.delete")
+
+		# XXX
+		# layout.itemS()
+		# layout.itemO("node.make_link")
+		# layout.itemS()
+		# layout.itemO("node.edit_group")
+		# layout.itemO("node.ungroup")
+		# layout.itemO("node.group")
+		# layout.itemO("node.make_link")
+
+		layout.itemS()
+
+		layout.itemO("node.visibility_toggle")
+
+		# XXX
+		# layout.itemO("node.rename")
+		# layout.itemS()
+		# layout.itemO("node.show_cyclic_dependencies")
+
+
+bpy.types.register(NODE_HT_header)
+bpy.types.register(NODE_MT_view)
+bpy.types.register(NODE_MT_select)
+bpy.types.register(NODE_MT_node)
+


Property changes on: branches/blender2.5/blender/release/ui/space_node.py
___________________________________________________________________
Name: svn:keywords
   + Author Date Id Revision
Name: svn:mergeinfo
   + 
Name: svn:eol-style
   + native

Modified: branches/blender2.5/blender/release/ui/space_outliner.py
===================================================================
--- branches/blender2.5/blender/release/ui/space_outliner.py	2009-08-19 00:46:06 UTC (rev 22617)
+++ branches/blender2.5/blender/release/ui/space_outliner.py	2009-08-19 00:55:30 UTC (rev 22618)
@@ -9,11 +9,12 @@
 		sce = context.scene
 		layout = self.layout
 
-		layout.template_header()
+		row = layout.row(align=True)
+		row.template_header()
 
 		if context.area.show_menus:
-			row = layout.row(align=True)
-			row.itemM("OUTLINER_MT_view")
+			sub = row.row(align=True)
+			sub.itemM("OUTLINER_MT_view")
 			
 		row = layout.row()
 		row.itemR(so, "display_mode", text="")

Modified: branches/blender2.5/blender/release/ui/space_sequencer.py
===================================================================
--- branches/blender2.5/blender/release/ui/space_sequencer.py	2009-08-19 00:46:06 UTC (rev 22617)
+++ branches/blender2.5/blender/release/ui/space_sequencer.py	2009-08-19 00:55:30 UTC (rev 22618)
@@ -14,25 +14,29 @@
 		
 		st = context.space_data
 
-		layout.template_header()
+		row = layout.row(align=True)
+		row.template_header()
 		
 		if context.area.show_menus:
-			row = layout.row()
-			row.itemR(st, "display_mode", text="")
-			row.itemM("SEQUENCER_MT_view")
+			sub = row.row(align=True)
+			sub.itemM("SEQUENCER_MT_view")
 			
-			layout.itemS()
+			row.itemS()
 			
 			if st.display_mode == 'SEQUENCER':
-				row.itemM("SEQUENCER_MT_select")
-				row.itemM("SEQUENCER_MT_marker")
-				row.itemM("SEQUENCER_MT_add")
-				row.itemM("SEQUENCER_MT_strip")
-				layout.itemS()
-				row.itemO("sequencer.reload")
-			else:
-				row.itemR(st, "display_channel", text="Channel")
+				sub.itemM("SEQUENCER_MT_select")
+				sub.itemM("SEQUENCER_MT_marker")
+				sub.itemM("SEQUENCER_MT_add")
+				sub.itemM("SEQUENCER_MT_strip")
 
+		layout.itemR(st, "display_mode", text="")
+
+		if st.display_mode == 'SEQUENCER':
+			layout.itemS()
+			layout.itemO("sequencer.reload")
+		else:

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list