diff options
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r-- | source/blender/blenkernel/BKE_material.h | 2 | ||||
-rw-r--r-- | source/blender/blenkernel/BKE_object.h | 4 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/material.c | 12 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/mesh.c | 2 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/object.c | 28 |
5 files changed, 24 insertions, 24 deletions
diff --git a/source/blender/blenkernel/BKE_material.h b/source/blender/blenkernel/BKE_material.h index 0bcbbb8576a..7c47380f838 100644 --- a/source/blender/blenkernel/BKE_material.h +++ b/source/blender/blenkernel/BKE_material.h @@ -49,7 +49,7 @@ struct Scene; void init_def_material(void); void BKE_material_free(struct Material *sc); void BKE_material_free_ex(struct Material *ma, int do_id_user); -void test_object_materials(struct ID *id); +void test_object_materials(struct Main *bmain, struct ID *id); void resize_object_material(struct Object *ob, const short totcol); void init_material(struct Material *ma); struct Material *BKE_material_add(struct Main *bmain, const char *name); diff --git a/source/blender/blenkernel/BKE_object.h b/source/blender/blenkernel/BKE_object.h index da5fa3e8195..8870355a919 100644 --- a/source/blender/blenkernel/BKE_object.h +++ b/source/blender/blenkernel/BKE_object.h @@ -81,8 +81,8 @@ bool BKE_object_exists_check(struct Object *obtest); bool BKE_object_is_in_editmode(struct Object *ob); struct Object *BKE_object_add_only_object(struct Main *bmain, int type, const char *name); -struct Object *BKE_object_add(struct Scene *scene, int type); -void *BKE_object_obdata_add_from_type(int type); +struct Object *BKE_object_add(struct Main *bmain, struct Scene *scene, int type); +void *BKE_object_obdata_add_from_type(struct Main *bmain, int type); struct Object *BKE_object_copy_ex(struct Main *bmain, struct Object *ob, int copy_caches); struct Object *BKE_object_copy(struct Object *ob); diff --git a/source/blender/blenkernel/intern/material.c b/source/blender/blenkernel/intern/material.c index a4f147a4fac..7e70b9d9cd5 100644 --- a/source/blender/blenkernel/intern/material.c +++ b/source/blender/blenkernel/intern/material.c @@ -568,7 +568,7 @@ void material_append_id(ID *id, Material *ma) (*matar)[(*totcol)++] = ma; id_us_plus((ID *)ma); - test_object_materials(id); + test_object_materials(G.main, id); } } @@ -601,7 +601,7 @@ Material *material_pop_id(ID *id, int index_i, int remove_material_slot) MEM_freeN(*matar); *matar = mat; - test_object_materials(id); + test_object_materials(G.main, id); } /* decrease mat_nr index */ @@ -712,7 +712,7 @@ void resize_object_material(Object *ob, const short totcol) if (ob->actcol > ob->totcol) ob->actcol = ob->totcol; } -void test_object_materials(ID *id) +void test_object_materials(Main *bmain, ID *id) { /* make the ob mat-array same size as 'ob->data' mat-array */ Object *ob; @@ -722,7 +722,7 @@ void test_object_materials(ID *id) return; } - for (ob = G.main->object.first; ob; ob = ob->id.next) { + for (ob = bmain->object.first; ob; ob = ob->id.next) { if (ob->data == id) { resize_object_material(ob, *totcol); } @@ -768,7 +768,7 @@ void assign_material_id(ID *id, Material *ma, short act) if (ma) id_us_plus((ID *)ma); - test_object_materials(id); + test_object_materials(G.main, id); } void assign_material(Object *ob, Material *ma, short act, int assign_type) @@ -855,7 +855,7 @@ void assign_material(Object *ob, Material *ma, short act, int assign_type) if (ma) id_us_plus((ID *)ma); - test_object_materials(ob->data); + test_object_materials(G.main, ob->data); } /* XXX - this calls many more update calls per object then are needed, could be optimized */ diff --git a/source/blender/blenkernel/intern/mesh.c b/source/blender/blenkernel/intern/mesh.c index 31c2758795d..0d662711df0 100644 --- a/source/blender/blenkernel/intern/mesh.c +++ b/source/blender/blenkernel/intern/mesh.c @@ -841,7 +841,7 @@ void BKE_mesh_assign_object(Object *ob, Mesh *me) id_us_plus((ID *)me); } - test_object_materials((ID *)me); + test_object_materials(G.main, (ID *)me); test_object_modifiers(ob); } diff --git a/source/blender/blenkernel/intern/object.c b/source/blender/blenkernel/intern/object.c index 538cead5d5b..fb950b180a9 100644 --- a/source/blender/blenkernel/intern/object.c +++ b/source/blender/blenkernel/intern/object.c @@ -845,19 +845,19 @@ bool BKE_object_exists_check(Object *obtest) /* *************************************************** */ -void *BKE_object_obdata_add_from_type(int type) +void *BKE_object_obdata_add_from_type(Main *bmain, int type) { switch (type) { - case OB_MESH: return BKE_mesh_add(G.main, "Mesh"); - case OB_CURVE: return BKE_curve_add(G.main, "Curve", OB_CURVE); - case OB_SURF: return BKE_curve_add(G.main, "Surf", OB_SURF); - case OB_FONT: return BKE_curve_add(G.main, "Text", OB_FONT); - case OB_MBALL: return BKE_mball_add(G.main, "Meta"); - case OB_CAMERA: return BKE_camera_add(G.main, "Camera"); - case OB_LAMP: return BKE_lamp_add(G.main, "Lamp"); - case OB_LATTICE: return BKE_lattice_add(G.main, "Lattice"); - case OB_ARMATURE: return BKE_armature_add(G.main, "Armature"); - case OB_SPEAKER: return BKE_speaker_add(G.main, "Speaker"); + case OB_MESH: return BKE_mesh_add(bmain, "Mesh"); + case OB_CURVE: return BKE_curve_add(bmain, "Curve", OB_CURVE); + case OB_SURF: return BKE_curve_add(bmain, "Surf", OB_SURF); + case OB_FONT: return BKE_curve_add(bmain, "Text", OB_FONT); + case OB_MBALL: return BKE_mball_add(bmain, "Meta"); + case OB_CAMERA: return BKE_camera_add(bmain, "Camera"); + case OB_LAMP: return BKE_lamp_add(bmain, "Lamp"); + case OB_LATTICE: return BKE_lattice_add(bmain, "Lattice"); + case OB_ARMATURE: return BKE_armature_add(bmain, "Armature"); + case OB_SPEAKER: return BKE_speaker_add(bmain, "Speaker"); case OB_EMPTY: return NULL; default: printf("BKE_object_obdata_add_from_type: Internal error, bad type: %d\n", type); @@ -972,16 +972,16 @@ Object *BKE_object_add_only_object(Main *bmain, int type, const char *name) /* general add: to scene, with layer from area and default name */ /* creates minimum required data, but without vertices etc. */ -Object *BKE_object_add(struct Scene *scene, int type) +Object *BKE_object_add(Main *bmain, Scene *scene, int type) { Object *ob; Base *base; char name[MAX_ID_NAME]; BLI_strncpy(name, get_obdata_defname(type), sizeof(name)); - ob = BKE_object_add_only_object(G.main, type, name); + ob = BKE_object_add_only_object(bmain, type, name); - ob->data = BKE_object_obdata_add_from_type(type); + ob->data = BKE_object_obdata_add_from_type(bmain, type); ob->lay = scene->lay; |