[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [57121] tags/blender-2.67b-release/blender /release/scripts: svn merge ^/trunk/blender -c57073
Lukas Toenne
lukas.toenne at googlemail.com
Wed May 29 19:00:41 CEST 2013
Revision: 57121
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=57121
Author: lukastoenne
Date: 2013-05-29 17:00:41 +0000 (Wed, 29 May 2013)
Log Message:
-----------
svn merge ^/trunk/blender -c57073
Modified Paths:
--------------
tags/blender-2.67b-release/blender/release/scripts/modules/nodeitems_utils.py
tags/blender-2.67b-release/blender/release/scripts/startup/nodeitems_builtins.py
Modified: tags/blender-2.67b-release/blender/release/scripts/modules/nodeitems_utils.py
===================================================================
--- tags/blender-2.67b-release/blender/release/scripts/modules/nodeitems_utils.py 2013-05-29 17:00:38 UTC (rev 57120)
+++ tags/blender-2.67b-release/blender/release/scripts/modules/nodeitems_utils.py 2013-05-29 17:00:41 UTC (rev 57121)
@@ -36,13 +36,18 @@
elif callable(items):
self.items = items
else:
- self.items = lambda context: items
+ def items_gen(context):
+ for item in items:
+ if item.poll is None or item.poll(context):
+ yield item
+ self.items = items_gen
class NodeItem():
- def __init__(self, nodetype, label=None, settings={}):
+ def __init__(self, nodetype, label=None, settings={}, poll=None):
self.nodetype = nodetype
self._label = label
self.settings = settings
+ self.poll = poll
@property
def label(self):
Modified: tags/blender-2.67b-release/blender/release/scripts/startup/nodeitems_builtins.py
===================================================================
--- tags/blender-2.67b-release/blender/release/scripts/startup/nodeitems_builtins.py 2013-05-29 17:00:38 UTC (rev 57120)
+++ tags/blender-2.67b-release/blender/release/scripts/startup/nodeitems_builtins.py 2013-05-29 17:00:41 UTC (rev 57121)
@@ -17,6 +17,7 @@
# ##### END GPL LICENSE BLOCK #####
# <pep8 compliant>
+import bpy
import nodeitems_utils
from nodeitems_utils import NodeCategory, NodeItem
@@ -80,7 +81,14 @@
yield NodeItem(node_tree_group_type[group.bl_idname], group.name, { "node_tree" : "bpy.data.node_groups[%r]" % group.name })
+# only show input/output nodes inside node groups
+def group_input_output_item_poll(context):
+ space = context.space_data
+ if space.edit_tree in bpy.data.node_groups.values():
+ return True
+ return False
+
# All standard node categories currently used in nodes.
shader_node_categories = [
@@ -93,9 +101,11 @@
NodeItem("ShaderNodeTexture"),
NodeItem("ShaderNodeGeometry"),
NodeItem("ShaderNodeExtendedMaterial"),
+ NodeItem("NodeGroupInput", poll=group_input_output_item_poll),
]),
ShaderOldNodeCategory("SH_OUTPUT", "Output", items=[
NodeItem("ShaderNodeOutput"),
+ NodeItem("NodeGroupOutput", poll=group_input_output_item_poll),
]),
ShaderOldNodeCategory("SH_OP_COLOR", "Color", items=[
NodeItem("ShaderNodeMixRGB"),
@@ -139,11 +149,13 @@
NodeItem("ShaderNodeHairInfo"),
NodeItem("ShaderNodeParticleInfo"),
NodeItem("ShaderNodeCameraData"),
+ NodeItem("NodeGroupInput", poll=group_input_output_item_poll),
]),
ShaderNewNodeCategory("SH_NEW_OUTPUT", "Output", items=[
NodeItem("ShaderNodeOutputMaterial"),
NodeItem("ShaderNodeOutputLamp"),
NodeItem("ShaderNodeOutputWorld"),
+ NodeItem("NodeGroupOutput", poll=group_input_output_item_poll),
]),
ShaderNewNodeCategory("SH_NEW_SHADER", "Shader", items=[
NodeItem("ShaderNodeMixShader"),
@@ -221,6 +233,7 @@
NodeItem("CompositorNodeBokehImage"),
NodeItem("CompositorNodeTime"),
NodeItem("CompositorNodeTrackPos"),
+ NodeItem("NodeGroupInput", poll=group_input_output_item_poll),
]),
CompositorNodeCategory("CMP_OUTPUT", "Output", items = [
NodeItem("CompositorNodeComposite"),
@@ -228,6 +241,7 @@
NodeItem("CompositorNodeSplitViewer"),
NodeItem("CompositorNodeOutputFile"),
NodeItem("CompositorNodeLevels"),
+ NodeItem("NodeGroupOutput", poll=group_input_output_item_poll),
]),
CompositorNodeCategory("CMP_OP_COLOR", "Color", items = [
NodeItem("CompositorNodeMixRGB"),
@@ -321,10 +335,12 @@
NodeItem("TextureNodeCoordinates"),
NodeItem("TextureNodeTexture"),
NodeItem("TextureNodeImage"),
+ NodeItem("NodeGroupInput", poll=group_input_output_item_poll),
]),
TextureNodeCategory("TEX_OUTPUT", "Output", items = [
NodeItem("TextureNodeOutput"),
NodeItem("TextureNodeViewer"),
+ NodeItem("NodeGroupOutput", poll=group_input_output_item_poll),
]),
TextureNodeCategory("TEX_OP_COLOR", "Color", items = [
NodeItem("TextureNodeMixRGB"),
More information about the Bf-blender-cvs
mailing list