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:
authorAntonioya <blendergit@gmail.com>2019-04-11 14:10:10 +0300
committerAntonioya <blendergit@gmail.com>2019-04-11 15:47:35 +0300
commit98b06c20a0d4a66e2d9f4496c788f3d0902ea7c6 (patch)
tree68883cff8c2fcd4264dc2bdce24d3d0124ec4a4e
parent6fed1525a1538fcdc207c42145396731f2bd3ed6 (diff)
Rename Label instead of Name in Node editor using F2 key
See D4631 for more details Reviewers: @brecht @billreynish
-rw-r--r--release/scripts/startup/bl_ui/space_topbar.py4
-rw-r--r--source/blender/makesrna/intern/rna_nodetree.c26
2 files changed, 28 insertions, 2 deletions
diff --git a/release/scripts/startup/bl_ui/space_topbar.py b/release/scripts/startup/bl_ui/space_topbar.py
index 7b9b324066a..25c715e8ae7 100644
--- a/release/scripts/startup/bl_ui/space_topbar.py
+++ b/release/scripts/startup/bl_ui/space_topbar.py
@@ -1084,11 +1084,11 @@ class TOPBAR_PT_name(Panel):
row.prop(item, "name", text="")
found = True
elif space_type == 'NODE_EDITOR':
- layout.label(text="Node Name")
+ layout.label(text="Node Label")
item = context.active_node
if item:
row = row_with_icon(layout, 'NODE')
- row.prop(item, "name", text="")
+ row.prop(item, "label", text="")
found = True
else:
if mode == 'POSE' or (mode == 'WEIGHT_PAINT' and context.pose_object):
diff --git a/source/blender/makesrna/intern/rna_nodetree.c b/source/blender/makesrna/intern/rna_nodetree.c
index 44cf15995f9..c60aa494512 100644
--- a/source/blender/makesrna/intern/rna_nodetree.c
+++ b/source/blender/makesrna/intern/rna_nodetree.c
@@ -1617,6 +1617,31 @@ static void rna_Node_name_set(PointerRNA *ptr, const char *value)
BKE_animdata_fix_paths_rename_all(NULL, "nodes", oldname, node->name);
}
+static int rna_Node_label_length(PointerRNA *ptr)
+{
+ bNode *node = (bNode *)ptr->data;
+
+ if (node->label[0] == '\0') {
+ return strlen(node->name);
+ }
+ else {
+ return strlen(node->label);
+ }
+
+ return 0;
+}
+
+static void rna_Node_label_get(PointerRNA *ptr, char *value)
+{
+ bNode *node = (bNode *)ptr->data;
+ if (node->label[0] == '\0') {
+ strcpy(value, node->name);
+ }
+ else {
+ strcpy(value, node->label);
+ }
+}
+
static bNodeSocket *rna_Node_inputs_new(ID *id, bNode *node, Main *bmain, ReportList *reports, const char *type, const char *name, const char *identifier)
{
/* Adding an input to a group node is not working, simpler to add it to its underlying nodetree. */
@@ -7977,6 +8002,7 @@ static void rna_def_node(BlenderRNA *brna)
prop = RNA_def_property(srna, "label", PROP_STRING, PROP_NONE);
RNA_def_property_string_sdna(prop, NULL, "label");
+ RNA_def_property_string_funcs(prop, "rna_Node_label_get", "rna_Node_label_length", NULL);
RNA_def_property_ui_text(prop, "Label", "Optional custom node label");
RNA_def_property_update(prop, NC_NODE | ND_DISPLAY, NULL);