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
path: root/source
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2011-11-17 22:41:37 +0400
committerCampbell Barton <ideasman42@gmail.com>2011-11-17 22:41:37 +0400
commit22b5a3735fa124cd91910bb527688d664329bd4b (patch)
tree33688aaa4699d902831e5f90df666f7efed0f8d1 /source
parentd90e3759bcfdea5d7532dfc913dbec6b369f2904 (diff)
add flag FUNC_USE_MAIN for rna functions which don't need the context. (currently unused)
Diffstat (limited to 'source')
-rw-r--r--source/blender/makesrna/RNA_types.h9
-rw-r--r--source/blender/makesrna/intern/makesrna.c12
2 files changed, 17 insertions, 4 deletions
diff --git a/source/blender/makesrna/RNA_types.h b/source/blender/makesrna/RNA_types.h
index e768594fe73..85869115e79 100644
--- a/source/blender/makesrna/RNA_types.h
+++ b/source/blender/makesrna/RNA_types.h
@@ -303,13 +303,14 @@ typedef struct ParameterDynAlloc {
typedef enum FunctionFlag {
FUNC_NO_SELF = 1, /* for static functions */
- FUNC_USE_CONTEXT = 2,
- FUNC_USE_REPORTS = 4,
+ FUNC_USE_MAIN = 2,
+ FUNC_USE_CONTEXT = 4,
+ FUNC_USE_REPORTS = 8,
FUNC_USE_SELF_ID = 2048,
/* registering */
- FUNC_REGISTER = 8,
- FUNC_REGISTER_OPTIONAL = 8|16,
+ FUNC_REGISTER = 16,
+ FUNC_REGISTER_OPTIONAL = 16|32,
/* internal flags */
FUNC_BUILTIN = 128,
diff --git a/source/blender/makesrna/intern/makesrna.c b/source/blender/makesrna/intern/makesrna.c
index 6dbf7b9c553..c21685c9add 100644
--- a/source/blender/makesrna/intern/makesrna.c
+++ b/source/blender/makesrna/intern/makesrna.c
@@ -1709,6 +1709,12 @@ static void rna_def_function_funcs(FILE *f, StructDefRNA *dsrna, FunctionDefRNA
first= 0;
}
+ if(func->flag & FUNC_USE_MAIN) {
+ if(!first) fprintf(f, ", ");
+ first= 0;
+ fprintf(f, "CTX_data_main(C)"); /* may have direct access later */
+ }
+
if(func->flag & FUNC_USE_CONTEXT) {
if(!first) fprintf(f, ", ");
first= 0;
@@ -2007,6 +2013,12 @@ static void rna_generate_static_parameter_prototypes(BlenderRNA *brna, StructRNA
first= 0;
}
+ if(func->flag & FUNC_USE_MAIN) {
+ if(!first) fprintf(f, ", ");
+ first= 0;
+ fprintf(f, "Main *bmain");
+ }
+
if(func->flag & FUNC_USE_CONTEXT) {
if(!first) fprintf(f, ", ");
first= 0;