RNA Tweaks:

* Added an error for RNA enums without items.
* Added to scene layer set callback.
This commit is contained in:
Brecht Van Lommel
2008-11-14 11:15:53 +00:00
parent b3c238e8bc
commit 8ba404b0d7
2 changed files with 17 additions and 0 deletions

View File

@@ -565,6 +565,10 @@ static void rna_generate_struct(BlenderRNA *brna, StructRNA *srna, FILE *f)
fprintf(f, "};\n\n");
}
else {
fprintf(stderr, "rna_generate_structs: %s.%s, enum must have items defined.\n", srna->cname, prop->cname);
DefRNA.error= 1;
}
break;
}
case PROP_BOOLEAN: {

View File

@@ -41,6 +41,18 @@ void *rna_Scene_objects_get(CollectionPropertyIterator *iter)
return ((Base*)iter->internal)->object;
}
static void rna_Scene_layer_set(PointerRNA *ptr, int index, int value)
{
Scene *scene= (Scene*)ptr->data;
if(value) scene->lay |= (1<<index);
else {
scene->lay &= ~(1<<index);
if(scene->lay == 0)
scene->lay |= (1<<index);
}
}
#else
void RNA_def_scene(BlenderRNA *brna)
@@ -73,6 +85,7 @@ void RNA_def_scene(BlenderRNA *brna)
RNA_def_property_boolean_sdna(prop, NULL, "lay", 1);
RNA_def_property_array(prop, 20);
RNA_def_property_ui_text(prop, "Visible Layers", "Layers visible when rendering the scene.");
RNA_def_property_boolean_funcs(prop, NULL, "rna_Scene_layer_set");
prop= RNA_def_property(srna, "prop_mode", PROP_ENUM, PROP_NONE);
RNA_def_property_enum_items(prop, prop_mode_items);