Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukas Toenne <lukas.toenne@googlemail.com>2012-12-29 12:46:27 +0400
committerLukas Toenne <lukas.toenne@googlemail.com>2012-12-29 12:46:27 +0400
commited713803f5ef4f0ad13e99e595556857d397f26d (patch)
tree2395b49e176e2615588c46c4498ae0784b5eac44 /release
parent0cb07bcabcad6a8090750470cd834210cce08318 (diff)
Fix for the NODE_OT_add_node operator. The way python classes were subclassed does not work with the registration mechanism. Combined both node_add and node_add_move operators into a single general operator with a flag. When use_transform is set, the operator will start transform on the new nodes after inserting.
Diffstat (limited to 'release')
-rw-r--r--release/scripts/startup/bl_operators/node.py31
1 files changed, 11 insertions, 20 deletions
diff --git a/release/scripts/startup/bl_operators/node.py b/release/scripts/startup/bl_operators/node.py
index 071eb2e75f9..39e00f94953 100644
--- a/release/scripts/startup/bl_operators/node.py
+++ b/release/scripts/startup/bl_operators/node.py
@@ -20,7 +20,7 @@
import bpy
from bpy.types import Operator
-from bpy.props import EnumProperty, StringProperty
+from bpy.props import BoolProperty, EnumProperty, StringProperty
# Base class for node 'Add' operators
class NodeAddOperator():
@@ -75,6 +75,11 @@ class NODE_OT_add_node(NodeAddOperator, Operator):
name="Group tree",
description="Group node tree name",
)
+ use_transform = BoolProperty(
+ name="Use Transform",
+ description="Start transform operator after inserting the node",
+ default = False,
+ )
def execute(self, context):
node = self.create_node(context, self.type)
@@ -84,27 +89,13 @@ class NODE_OT_add_node(NodeAddOperator, Operator):
return {'FINISHED'}
-
-# Adds a node and immediately starts the transform operator for inserting in a tree
-class NODE_OT_add_node_move(NODE_OT_add_node):
- '''Add a node to the active tree and start transform'''
- bl_idname = "node.add_node_move"
- bl_label = "Add Node and Move"
-
- type = StringProperty(
- name="Node Type",
- description="Node type",
- )
- # optional group tree parameter for group nodes
- group_tree = StringProperty(
- name="Group tree",
- description="Group node tree name",
- )
-
def invoke(self, context, event):
self.store_mouse_cursor(context, event)
- self.execute(context)
- return bpy.ops.transform.translate('INVOKE_DEFAULT')
+ result = self.execute(context)
+ if self.use_transform and ('FINISHED' in result):
+ return bpy.ops.transform.translate('INVOKE_DEFAULT')
+ else:
+ return result
# XXX These node item lists should actually be generated by a callback at