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>2009-02-03 13:14:29 +0300
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2009-02-03 13:14:29 +0300
commit658ac7225fd0df189ac348872dc41a2e860f129f (patch)
treeffa0e01333ed1a7d57e9c31bee713fa6bf84dc39 /source/blender/makesrna
parent54690ca46aa5304055a656d358add41330de1619 (diff)
RNA: some fixes for yesterdays commit, use of uninitialized
variables and errors in foreach macro.
Diffstat (limited to 'source/blender/makesrna')
-rw-r--r--source/blender/makesrna/intern/makesrna.c25
-rwxr-xr-xsource/blender/makesrna/intern/rna_action.c5
-rw-r--r--source/blender/makesrna/intern/rna_armature.c4
-rw-r--r--source/blender/makesrna/intern/rna_object.c4
-rw-r--r--source/blender/makesrna/intern/rna_scene.c2
5 files changed, 27 insertions, 13 deletions
diff --git a/source/blender/makesrna/intern/makesrna.c b/source/blender/makesrna/intern/makesrna.c
index e2ef25f178e..84f4462dabe 100644
--- a/source/blender/makesrna/intern/makesrna.c
+++ b/source/blender/makesrna/intern/makesrna.c
@@ -830,6 +830,12 @@ static void rna_def_property_funcs_header(FILE *f, PropertyDefRNA *dp)
break;
}
case PROP_STRING: {
+ StringPropertyRNA *sprop= (StringPropertyRNA*)prop;
+
+ if(sprop->maxlength) {
+ fprintf(f, "#define %s_%s_MAX %d\n\n", srna->identifier, prop->identifier, sprop->maxlength);
+ }
+
fprintf(f, "void %sget(PointerRNA *ptr, char *value);\n", func);
fprintf(f, "int %slength(PointerRNA *ptr);\n", func);
//fprintf(f, "void %sset(PointerRNA *ptr, const char *value);\n", func);
@@ -1340,20 +1346,23 @@ static void rna_generate_header(BlenderRNA *brna, FILE *f)
PropertyDefRNA *dp;
StructRNA *srna;
- fprintf(f, "\n/* Automatically generated function declarations for the Data API.\n"
+ fprintf(f, "\n#ifndef __RNA_BLENDER_H__\n");
+ fprintf(f, "#define __RNA_BLENDER_H__\n\n");
+
+ fprintf(f, "/* Automatically generated function declarations for the Data API.\n"
" Do not edit manually, changes will be overwritten. */\n\n");
fprintf(f, "#include \"RNA_types.h\"\n\n");
- fprintf(f, "#define FOREACH_BEGIN(property, ptr, itemptr) \\\n");
+ fprintf(f, "#define FOREACH_BEGIN(property, sptr, itemptr) \\\n");
fprintf(f, " { \\\n");
- fprintf(f, " CollectionPropertyIterator itemptr##_macro_iter; \\\n");
- fprintf(f, " for(property##_begin(sptr, propname, &itemptr##_macro_iter); itemptr##_macro_iter.valid; property##_end(&itemptr##_macro_iter)) { \\\n");
- fprintf(f, " PointerRNA itemptr= itemptr##_macro_iter.ptr;\n\n");
+ fprintf(f, " CollectionPropertyIterator rna_macro_iter; \\\n");
+ fprintf(f, " for(property##_begin(&rna_macro_iter, sptr); rna_macro_iter.valid; property##_next(&rna_macro_iter)) { \\\n");
+ fprintf(f, " itemptr= rna_macro_iter.ptr;\n\n");
- fprintf(f, "#define FOREACH_END \\\n");
+ fprintf(f, "#define FOREACH_END(property) \\\n");
fprintf(f, " } \\\n");
- fprintf(f, " property##__end(&itemptr##_macro_iter); \\\n");
+ fprintf(f, " property##_end(&rna_macro_iter); \\\n");
fprintf(f, " }\n\n");
for(ds=DefRNA.structs.first; ds; ds=ds->next) {
@@ -1370,6 +1379,8 @@ static void rna_generate_header(BlenderRNA *brna, FILE *f)
for(dp=ds->properties.first; dp; dp=dp->next)
rna_def_property_funcs_header(f, dp);
}
+
+ fprintf(f, "#endif /* __RNA_BLENDER_H__ */\n");
}
static void make_bad_file(char *file)
diff --git a/source/blender/makesrna/intern/rna_action.c b/source/blender/makesrna/intern/rna_action.c
index c8f2254edd5..5143160c69e 100755
--- a/source/blender/makesrna/intern/rna_action.c
+++ b/source/blender/makesrna/intern/rna_action.c
@@ -57,6 +57,7 @@ static int rna_Driver_RnaPath_length(PointerRNA *ptr)
return 0;
}
+#if 0
static void rna_Driver_RnaPath_set(PointerRNA *ptr, const char *value)
{
ChannelDriver *driver= (ChannelDriver *)ptr->data;
@@ -69,7 +70,7 @@ static void rna_Driver_RnaPath_set(PointerRNA *ptr, const char *value)
else
driver->rna_path= NULL;
}
-
+#endif
static void rna_FCurve_RnaPath_get(PointerRNA *ptr, char *value)
{
@@ -91,6 +92,7 @@ static int rna_FCurve_RnaPath_length(PointerRNA *ptr)
return 0;
}
+#if 0
static void rna_FCurve_RnaPath_set(PointerRNA *ptr, const char *value)
{
FCurve *fcu= (FCurve *)ptr->data;
@@ -103,6 +105,7 @@ static void rna_FCurve_RnaPath_set(PointerRNA *ptr, const char *value)
else
fcu->rna_path= NULL;
}
+#endif
#else
diff --git a/source/blender/makesrna/intern/rna_armature.c b/source/blender/makesrna/intern/rna_armature.c
index f2b25dd44db..5c5457ceb84 100644
--- a/source/blender/makesrna/intern/rna_armature.c
+++ b/source/blender/makesrna/intern/rna_armature.c
@@ -37,7 +37,7 @@
static void rna_Bone_layer_set(PointerRNA *ptr, const int *values)
{
Bone *bone= (Bone*)ptr->data;
- int i, tot;
+ int i, tot= 0;
/* ensure we always have some layer selected */
for(i=0; i<20; i++)
@@ -56,7 +56,7 @@ static void rna_Bone_layer_set(PointerRNA *ptr, const int *values)
static void rna_Armature_layer_set(PointerRNA *ptr, const int *values)
{
bArmature *arm= (bArmature*)ptr->data;
- int i, tot;
+ int i, tot= 0;
/* ensure we always have some layer selected */
for(i=0; i<20; i++)
diff --git a/source/blender/makesrna/intern/rna_object.c b/source/blender/makesrna/intern/rna_object.c
index f97249870a4..2907658b17e 100644
--- a/source/blender/makesrna/intern/rna_object.c
+++ b/source/blender/makesrna/intern/rna_object.c
@@ -204,7 +204,7 @@ static PointerRNA rna_Object_game_settings_get(PointerRNA *ptr)
static void rna_Object_layer_set(PointerRNA *ptr, const int *values)
{
Object *ob= (Object*)ptr->data;
- int i, tot;
+ int i, tot= 0;
/* ensure we always have some layer selected */
for(i=0; i<20; i++)
@@ -223,7 +223,7 @@ static void rna_Object_layer_set(PointerRNA *ptr, const int *values)
static void rna_GameObjectSettings_state_set(PointerRNA *ptr, const int *values)
{
Object *ob= (Object*)ptr->data;
- int i, tot;
+ int i, tot= 0;
/* ensure we always have some stateer selected */
for(i=0; i<20; i++)
diff --git a/source/blender/makesrna/intern/rna_scene.c b/source/blender/makesrna/intern/rna_scene.c
index e383d24632a..6b66b283f36 100644
--- a/source/blender/makesrna/intern/rna_scene.c
+++ b/source/blender/makesrna/intern/rna_scene.c
@@ -49,7 +49,7 @@ PointerRNA rna_Scene_objects_get(CollectionPropertyIterator *iter)
static void rna_Scene_layer_set(PointerRNA *ptr, const int *values)
{
Scene *scene= (Scene*)ptr->data;
- int i, tot;
+ int i, tot= 0;
/* ensure we always have some layer selected */
for(i=0; i<20; i++)