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:
authorCampbell Barton <ideasman42@gmail.com>2010-04-24 23:26:05 +0400
committerCampbell Barton <ideasman42@gmail.com>2010-04-24 23:26:05 +0400
commit4bd3163ea6399311d33f1c6c280d0d23c3a4e370 (patch)
tree0b0154bceb58f96ead4b8ea95e67b7de204a1a7d /source/blender/blenkernel/intern/context.c
parentb31e9b764e397bec7f9801a57004ece5d5873679 (diff)
py api: fix for context returning None for an empty list such as 'context.selected_objects', now returns []
Diffstat (limited to 'source/blender/blenkernel/intern/context.c')
-rw-r--r--source/blender/blenkernel/intern/context.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/context.c b/source/blender/blenkernel/intern/context.c
index e8f73a92ad5..9520df71b60 100644
--- a/source/blender/blenkernel/intern/context.c
+++ b/source/blender/blenkernel/intern/context.c
@@ -404,6 +404,7 @@ struct bContextDataResult {
PointerRNA ptr;
ListBase list;
const char **dir;
+ short type; /* 0: normal, 1: seq */
};
static int ctx_data_get(bContext *C, const char *member, bContextDataResult *result)
@@ -548,7 +549,7 @@ ListBase CTX_data_collection_get(const bContext *C, const char *member)
}
/* 1:found, -1:found but not set, 0:not found */
-int CTX_data_get(const bContext *C, const char *member, PointerRNA *r_ptr, ListBase *r_lb)
+int CTX_data_get(const bContext *C, const char *member, PointerRNA *r_ptr, ListBase *r_lb, short *r_type)
{
bContextDataResult result;
int ret= ctx_data_get((bContext*)C, member, &result);
@@ -556,10 +557,12 @@ int CTX_data_get(const bContext *C, const char *member, PointerRNA *r_ptr, ListB
if(ret==1) {
*r_ptr= result.ptr;
*r_lb= result.list;
+ *r_type= result.type;
}
else {
memset(r_ptr, 0, sizeof(*r_ptr));
memset(r_lb, 0, sizeof(*r_lb));
+ *r_type= 0;
}
return ret;
@@ -682,6 +685,16 @@ void CTX_data_dir_set(bContextDataResult *result, const char **dir)
result->dir= dir;
}
+void CTX_data_type_set(bContextDataResult *result, short type)
+{
+ result->type= type;
+}
+
+short CTX_data_type_get(bContextDataResult *result)
+{
+ return result->type;
+}
+
/* data context */
Main *CTX_data_main(const bContext *C)