RNA: use a different method to set DNA types for BlendData* collections, to

solve issues with c++ api.
This commit is contained in:
Brecht Van Lommel 2011-03-13 13:01:02 +00:00
parent 280592be9f
commit 128bed8480
2 changed files with 25 additions and 28 deletions

@ -353,34 +353,6 @@ typedef struct ExtensionRNA {
} ExtensionRNA;
/* fake struct definitions, needed otherwise collections end up owning the C
* structs like 'Object' when defined first */
#define BlendDataActions Main
#define BlendDataArmatures Main
#define BlendDataBrushes Main
#define BlendDataCameras Main
#define BlendDataCurves Main
#define BlendDataFonts Main
#define BlendDataGreasePencils Main
#define BlendDataGroups Main
#define BlendDataImages Main
#define BlendDataLamps Main
#define BlendDataLattices Main
#define BlendDataLibraries Main
#define BlendDataMaterials Main
#define BlendDataMeshes Main
#define BlendDataMetaBalls Main
#define BlendDataNodeTrees Main
#define BlendDataObjects Main
#define BlendDataParticles Main
#define BlendDataScenes Main
#define BlendDataScreens Main
#define BlendDataSounds Main
#define BlendDataTexts Main
#define BlendDataTextures Main
#define BlendDataWindowManagers Main
#define BlendDataWorlds Main
#ifdef __cplusplus
}
#endif

@ -537,6 +537,7 @@ void RNA_def_main_cameras(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataCameras");
srna= RNA_def_struct(brna, "BlendDataCameras", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Cameras", "Collection of cameras");
func= RNA_def_function(srna, "new", "rna_Main_cameras_new");
@ -566,6 +567,7 @@ void RNA_def_main_scenes(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataScenes");
srna= RNA_def_struct(brna, "BlendDataScenes", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Scenes", "Collection of scenes");
func= RNA_def_function(srna, "new", "rna_Main_scenes_new");
@ -591,6 +593,7 @@ void RNA_def_main_objects(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataObjects");
srna= RNA_def_struct(brna, "BlendDataObjects", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Objects", "Collection of objects");
func= RNA_def_function(srna, "new", "rna_Main_objects_new");
@ -624,6 +627,7 @@ void RNA_def_main_materials(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataMaterials");
srna= RNA_def_struct(brna, "BlendDataMaterials", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Material", "Collection of materials");
func= RNA_def_function(srna, "new", "rna_Main_materials_new");
@ -658,6 +662,7 @@ void RNA_def_main_node_groups(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataNodeTrees");
srna= RNA_def_struct(brna, "BlendDataNodeTrees", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Node Trees", "Collection of node trees");
func= RNA_def_function(srna, "new", "rna_Main_nodetree_new");
@ -688,6 +693,7 @@ void RNA_def_main_meshes(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataMeshes");
srna= RNA_def_struct(brna, "BlendDataMeshes", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Meshes", "Collection of meshes");
func= RNA_def_function(srna, "new", "rna_Main_meshes_new");
@ -716,6 +722,7 @@ void RNA_def_main_lamps(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataLamps");
srna= RNA_def_struct(brna, "BlendDataLamps", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Lamps", "Collection of lamps");
func= RNA_def_function(srna, "new", "rna_Main_lamps_new");
@ -747,6 +754,7 @@ void RNA_def_main_libraries(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataLibraries");
srna= RNA_def_struct(brna, "BlendDataLibraries", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Libraries", "Collection of libraries");
func= RNA_def_function(srna, "tag", "rna_Main_libraries_tag");
@ -762,6 +770,7 @@ void RNA_def_main_screens(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataScreens");
srna= RNA_def_struct(brna, "BlendDataScreens", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Screens", "Collection of screens");
func= RNA_def_function(srna, "tag", "rna_Main_screens_tag");
@ -777,6 +786,7 @@ void RNA_def_main_window_managers(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataWindowManagers");
srna= RNA_def_struct(brna, "BlendDataWindowManagers", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Window Managers", "Collection of window managers");
func= RNA_def_function(srna, "tag", "rna_Main_window_managers_tag");
@ -791,6 +801,7 @@ void RNA_def_main_images(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataImages");
srna= RNA_def_struct(brna, "BlendDataImages", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Images", "Collection of images");
func= RNA_def_function(srna, "new", "rna_Main_images_new");
@ -835,6 +846,7 @@ void RNA_def_main_lattices(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataLattices");
srna= RNA_def_struct(brna, "BlendDataLattices", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Lattices", "Collection of lattices");
func= RNA_def_function(srna, "new", "rna_Main_lattices_new");
@ -863,6 +875,7 @@ void RNA_def_main_curves(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataCurves");
srna= RNA_def_struct(brna, "BlendDataCurves", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Curves", "Collection of curves");
func= RNA_def_function(srna, "new", "rna_Main_curves_new");
@ -893,6 +906,7 @@ void RNA_def_main_metaballs(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataMetaBalls");
srna= RNA_def_struct(brna, "BlendDataMetaBalls", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main MetaBall", "Collection of metaballs");
func= RNA_def_function(srna, "new", "rna_Main_metaballs_new");
@ -921,6 +935,7 @@ void RNA_def_main_fonts(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataFonts");
srna= RNA_def_struct(brna, "BlendDataFonts", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Fonts", "Collection of fonts");
func= RNA_def_function(srna, "load", "rna_Main_fonts_load");
@ -950,6 +965,7 @@ void RNA_def_main_textures(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataTextures");
srna= RNA_def_struct(brna, "BlendDataTextures", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Textures", "Collection of groups");
func= RNA_def_function(srna, "new", "rna_Main_textures_new");
@ -980,6 +996,7 @@ void RNA_def_main_brushes(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataBrushes");
srna= RNA_def_struct(brna, "BlendDataBrushes", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Brushes", "Collection of brushes");
func= RNA_def_function(srna, "new", "rna_Main_brushes_new");
@ -1009,6 +1026,7 @@ void RNA_def_main_worlds(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataWorlds");
srna= RNA_def_struct(brna, "BlendDataWorlds", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Worlds", "Collection of worlds");
func= RNA_def_function(srna, "new", "rna_Main_worlds_new");
@ -1038,6 +1056,7 @@ void RNA_def_main_groups(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataGroups");
srna= RNA_def_struct(brna, "BlendDataGroups", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Groups", "Collection of groups");
func= RNA_def_function(srna, "new", "rna_Main_groups_new");
@ -1065,6 +1084,7 @@ void RNA_def_main_texts(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataTexts");
srna= RNA_def_struct(brna, "BlendDataTexts", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Texts", "Collection of texts");
func= RNA_def_function(srna, "new", "rna_Main_texts_new");
@ -1103,6 +1123,7 @@ void RNA_def_main_sounds(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataSounds");
srna= RNA_def_struct(brna, "BlendDataSounds", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Sounds", "Collection of sounds");
/* TODO, 'load' */
@ -1120,6 +1141,7 @@ void RNA_def_main_armatures(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataArmatures");
srna= RNA_def_struct(brna, "BlendDataArmatures", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Armatures", "Collection of armatures");
func= RNA_def_function(srna, "new", "rna_Main_armatures_new");
@ -1148,6 +1170,7 @@ void RNA_def_main_actions(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataActions");
srna= RNA_def_struct(brna, "BlendDataActions", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Actions", "Collection of actions");
func= RNA_def_function(srna, "new", "rna_Main_actions_new");
@ -1176,6 +1199,7 @@ void RNA_def_main_particles(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataParticles");
srna= RNA_def_struct(brna, "BlendDataParticles", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Particle Settings", "Collection of particle settings");
func= RNA_def_function(srna, "new", "rna_Main_particles_new");
@ -1205,6 +1229,7 @@ void RNA_def_main_gpencil(BlenderRNA *brna, PropertyRNA *cprop)
RNA_def_property_srna(cprop, "BlendDataGreasePencils");
srna= RNA_def_struct(brna, "BlendDataGreasePencils", NULL);
RNA_def_struct_sdna(srna, "Main");
RNA_def_struct_ui_text(srna, "Main Grease Pencils", "Collection of grease pencils");
func= RNA_def_function(srna, "tag", "rna_Main_gpencil_tag");