diff options
author | Lukas Toenne <lukas.toenne@googlemail.com> | 2013-11-12 22:17:58 +0400 |
---|---|---|
committer | Lukas Toenne <lukas.toenne@googlemail.com> | 2013-11-12 22:17:58 +0400 |
commit | 8663b940eda703c45baf664c9aa379a9ecb684f9 (patch) | |
tree | f3f873d4bb7facefe1534799f43b94b464d0a1ab /source/blender/blenkernel/intern/node.c | |
parent | ba7fd8cd5c173730c8c2250eac7ea48fafd519c7 (diff) |
Instead of requiring a const char* return from the (optional) node label callback function, let it write into a mutable string buffer. This will allow actual dynamic labels for nodes using the python
API.
Diffstat (limited to 'source/blender/blenkernel/intern/node.c')
-rw-r--r-- | source/blender/blenkernel/intern/node.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/source/blender/blenkernel/intern/node.c b/source/blender/blenkernel/intern/node.c index cc4263f4392..d441b103743 100644 --- a/source/blender/blenkernel/intern/node.c +++ b/source/blender/blenkernel/intern/node.c @@ -3089,14 +3089,14 @@ void nodeSynchronizeID(bNode *node, bool copy_to_id) /* ************* node type access ********** */ -const char *nodeLabel(bNode *node) +void nodeLabel(bNode *node, char *label, int maxlen) { if (node->label[0] != '\0') - return node->label; + BLI_strncpy(label, node->label, maxlen); else if (node->typeinfo->labelfunc) - return node->typeinfo->labelfunc(node); + node->typeinfo->labelfunc(node, label, maxlen); else - return IFACE_(node->typeinfo->ui_name); + BLI_strncpy(label, IFACE_(node->typeinfo->ui_name), maxlen); } static void node_type_base_defaults(bNodeType *ntype) @@ -3267,7 +3267,7 @@ void node_type_storage(bNodeType *ntype, ntype->freefunc = freefunc; } -void node_type_label(struct bNodeType *ntype, const char *(*labelfunc)(struct bNode *)) +void node_type_label(struct bNodeType *ntype, void (*labelfunc)(struct bNode *, char *label, int maxlen)) { ntype->labelfunc = labelfunc; } |