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:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2013-07-02 19:56:32 +0400
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2013-07-02 19:56:32 +0400
commit1a493533c3b29644f2916a391ed7edd0c019a4f7 (patch)
tree0619a57fde7def6da5eb1a027657aaff63d42154
parent994a937a97c2b43aa95c2fdabd98dd45cba16256 (diff)
Fix #35944: adding keyframes or drivers on image sequences offset did not work
for cycles image texture node.
-rw-r--r--source/blender/makesrna/intern/rna_image.c6
-rw-r--r--source/blender/makesrna/intern/rna_internal.h1
-rw-r--r--source/blender/makesrna/intern/rna_nodetree.c27
3 files changed, 33 insertions, 1 deletions
diff --git a/source/blender/makesrna/intern/rna_image.c b/source/blender/makesrna/intern/rna_image.c
index f795222438b..9181ab13aa7 100644
--- a/source/blender/makesrna/intern/rna_image.c
+++ b/source/blender/makesrna/intern/rna_image.c
@@ -158,8 +158,12 @@ static char *rna_ImageUser_path(PointerRNA *ptr)
/* ImageUser *iuser = ptr->data; */
switch (GS(((ID *)ptr->id.data)->name)) {
- case ID_TE:
+ case ID_TE: {
return BLI_strdup("image_user");
+ }
+ case ID_NT: {
+ return rna_Node_ImageUser_path(ptr);
+ }
}
}
diff --git a/source/blender/makesrna/intern/rna_internal.h b/source/blender/makesrna/intern/rna_internal.h
index b78972ea64c..d1cfb01abfb 100644
--- a/source/blender/makesrna/intern/rna_internal.h
+++ b/source/blender/makesrna/intern/rna_internal.h
@@ -246,6 +246,7 @@ int rna_Action_id_poll(struct PointerRNA *ptr, struct PointerRNA value);
int rna_Action_actedit_assign_poll(struct PointerRNA *ptr, struct PointerRNA value);
char *rna_TextureSlot_path(struct PointerRNA *ptr);
+char *rna_Node_ImageUser_path(struct PointerRNA *ptr);
/* API functions */
diff --git a/source/blender/makesrna/intern/rna_nodetree.c b/source/blender/makesrna/intern/rna_nodetree.c
index bc3984e2a0d..4040f7f68c5 100644
--- a/source/blender/makesrna/intern/rna_nodetree.c
+++ b/source/blender/makesrna/intern/rna_nodetree.c
@@ -1126,6 +1126,33 @@ static char *rna_Node_path(PointerRNA *ptr)
return BLI_sprintfN("nodes[\"%s\"]", name_esc);
}
+char *rna_Node_ImageUser_path(PointerRNA *ptr)
+{
+ bNodeTree *ntree = (bNodeTree *)ptr->id.data;
+ bNode *node;
+ char name_esc[sizeof(node->name) * 2];
+
+ for (node = ntree->nodes.first; node; node = node->next) {
+ if (node->type == SH_NODE_TEX_ENVIRONMENT) {
+ NodeTexEnvironment *data = node->storage;
+ if (&data->iuser != ptr->data)
+ continue;
+ }
+ else if (node->type == SH_NODE_TEX_IMAGE) {
+ NodeTexImage *data = node->storage;
+ if (&data->iuser != ptr->data)
+ continue;
+ }
+ else
+ continue;
+
+ BLI_strescape(name_esc, node->name, sizeof(name_esc));
+ return BLI_sprintfN("nodes[\"%s\"].image_user", name_esc);
+ }
+
+ return NULL;
+}
+
static int rna_Node_poll(bNodeType *ntype, bNodeTree *ntree)
{
extern FunctionRNA rna_Node_poll_func;