[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [41432] branches/bmesh/blender: svn merge -r41422:41431 ^/trunk/blender
Campbell Barton
ideasman42 at gmail.com
Tue Nov 1 10:05:40 CET 2011
Revision: 41432
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=41432
Author: campbellbarton
Date: 2011-11-01 09:05:38 +0000 (Tue, 01 Nov 2011)
Log Message:
-----------
svn merge -r41422:41431 ^/trunk/blender
Revision Links:
--------------
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=41422
Modified Paths:
--------------
branches/bmesh/blender/release/scripts/startup/bl_ui/space_view3d.py
branches/bmesh/blender/release/scripts/startup/bl_ui/space_view3d_toolbar.py
branches/bmesh/blender/source/blender/blenkernel/BKE_deform.h
branches/bmesh/blender/source/blender/blenkernel/BKE_library.h
branches/bmesh/blender/source/blender/blenkernel/intern/action.c
branches/bmesh/blender/source/blender/blenkernel/intern/armature.c
branches/bmesh/blender/source/blender/blenkernel/intern/blender.c
branches/bmesh/blender/source/blender/blenkernel/intern/brush.c
branches/bmesh/blender/source/blender/blenkernel/intern/constraint.c
branches/bmesh/blender/source/blender/blenkernel/intern/curve.c
branches/bmesh/blender/source/blender/blenkernel/intern/deform.c
branches/bmesh/blender/source/blender/blenkernel/intern/image.c
branches/bmesh/blender/source/blender/blenkernel/intern/key.c
branches/bmesh/blender/source/blender/blenkernel/intern/lattice.c
branches/bmesh/blender/source/blender/blenkernel/intern/library.c
branches/bmesh/blender/source/blender/blenkernel/intern/material.c
branches/bmesh/blender/source/blender/blenkernel/intern/mball.c
branches/bmesh/blender/source/blender/blenkernel/intern/mesh.c
branches/bmesh/blender/source/blender/blenkernel/intern/object.c
branches/bmesh/blender/source/blender/blenkernel/intern/particle.c
branches/bmesh/blender/source/blender/blenkernel/intern/speaker.c
branches/bmesh/blender/source/blender/blenkernel/intern/texture.c
branches/bmesh/blender/source/blender/blenkernel/intern/world.c
branches/bmesh/blender/source/blender/blenlib/BLI_bpath.h
branches/bmesh/blender/source/blender/blenlib/intern/bpath.c
branches/bmesh/blender/source/blender/editors/include/ED_mesh.h
branches/bmesh/blender/source/blender/editors/object/object_vgroup.c
branches/bmesh/blender/source/blender/makesdna/DNA_object_types.h
Property Changed:
----------------
branches/bmesh/blender/
branches/bmesh/blender/release/
branches/bmesh/blender/source/blender/editors/space_outliner/
Property changes on: branches/bmesh/blender
___________________________________________________________________
Modified: svn:mergeinfo
- /trunk/blender:39992-41422
+ /trunk/blender:39992-41431
Property changes on: branches/bmesh/blender/release
___________________________________________________________________
Modified: svn:mergeinfo
- /trunk/blender/release:31524-41422
+ /trunk/blender/release:31524-41431
Modified: branches/bmesh/blender/release/scripts/startup/bl_ui/space_view3d.py
===================================================================
--- branches/bmesh/blender/release/scripts/startup/bl_ui/space_view3d.py 2011-11-01 08:11:55 UTC (rev 41431)
+++ branches/bmesh/blender/release/scripts/startup/bl_ui/space_view3d.py 2011-11-01 09:05:38 UTC (rev 41432)
@@ -1085,6 +1085,7 @@
layout.operator("object.vertex_group_normalize_all", text="Normalize All")
layout.operator("object.vertex_group_normalize", text="Normalize")
+ layout.operator("object.vertex_group_mirror", text="Mirror")
layout.operator("object.vertex_group_invert", text="Invert")
layout.operator("object.vertex_group_clean", text="Clean")
layout.operator("object.vertex_group_levels", text="Levels")
Modified: branches/bmesh/blender/release/scripts/startup/bl_ui/space_view3d_toolbar.py
===================================================================
--- branches/bmesh/blender/release/scripts/startup/bl_ui/space_view3d_toolbar.py 2011-11-01 08:11:55 UTC (rev 41431)
+++ branches/bmesh/blender/release/scripts/startup/bl_ui/space_view3d_toolbar.py 2011-11-01 09:05:38 UTC (rev 41432)
@@ -1036,6 +1036,7 @@
col.active = ob.vertex_groups.active is not None
col.operator("object.vertex_group_normalize_all", text="Normalize All")
col.operator("object.vertex_group_normalize", text="Normalize")
+ col.operator("object.vertex_group_mirror", text="Mirror")
col.operator("object.vertex_group_invert", text="Invert")
col.operator("object.vertex_group_clean", text="Clean")
col.operator("object.vertex_group_levels", text="Levels")
Modified: branches/bmesh/blender/source/blender/blenkernel/BKE_deform.h
===================================================================
--- branches/bmesh/blender/source/blender/blenkernel/BKE_deform.h 2011-11-01 08:11:55 UTC (rev 41431)
+++ branches/bmesh/blender/source/blender/blenkernel/BKE_deform.h 2011-11-01 09:05:38 UTC (rev 41432)
@@ -45,6 +45,7 @@
struct bDeformGroup *defgroup_find_name(struct Object *ob, const char *name);
int defgroup_find_index(struct Object *ob, struct bDeformGroup *dg);
int *defgroup_flip_map(struct Object *ob, int *flip_map_len, int use_default);
+int *defgroup_flip_map_single(struct Object *ob, int *flip_map_len, int use_default, int defgroup);
int defgroup_flip_index(struct Object *ob, int index, int use_default);
int defgroup_name_index(struct Object *ob, const char *name);
void defgroup_unique_name(struct bDeformGroup *dg, struct Object *ob);
Modified: branches/bmesh/blender/source/blender/blenkernel/BKE_library.h
===================================================================
--- branches/bmesh/blender/source/blender/blenkernel/BKE_library.h 2011-11-01 08:11:55 UTC (rev 41431)
+++ branches/bmesh/blender/source/blender/blenkernel/BKE_library.h 2011-11-01 09:05:38 UTC (rev 41432)
@@ -49,6 +49,7 @@
void *copy_libblock(void *rt);
void copy_libblock_data(struct ID *id, const struct ID *id_from, const short do_action);
+void BKE_id_lib_local_paths(struct Main *bmain, struct ID *id);
void id_lib_extern(struct ID *id);
void BKE_library_filepath_set(struct Library *lib, const char *filepath);
void id_us_plus(struct ID *id);
Modified: branches/bmesh/blender/source/blender/blenkernel/intern/action.c
===================================================================
--- branches/bmesh/blender/source/blender/blenkernel/intern/action.c 2011-11-01 08:11:55 UTC (rev 41431)
+++ branches/bmesh/blender/source/blender/blenkernel/intern/action.c 2011-11-01 09:05:38 UTC (rev 41432)
@@ -146,13 +146,10 @@
id_clear_lib_data(bmain, &act->id);
}
else if (mlac.is_local && mlac.is_lib) {
- char *bpath_user_data[2]= {bmain->name, act->id.lib->filepath};
-
mlac.actn= copy_action(act);
mlac.actn->id.us= 0;
- /* Remap paths of new ID using old library as base. */
- bpath_traverse_id(bmain, &mlac.actn->id, bpath_relocate_visitor, 0, bpath_user_data);
+ BKE_id_lib_local_paths(bmain, &mlac.actn->id);
BKE_animdata_main_cb(bmain, make_localact_apply_cb, &mlac);
}
Modified: branches/bmesh/blender/source/blender/blenkernel/intern/armature.c
===================================================================
--- branches/bmesh/blender/source/blender/blenkernel/intern/armature.c 2011-11-01 08:11:55 UTC (rev 41431)
+++ branches/bmesh/blender/source/blender/blenkernel/intern/armature.c 2011-11-01 09:05:38 UTC (rev 41432)
@@ -157,12 +157,11 @@
id_clear_lib_data(bmain, &arm->id);
}
else if(is_local && is_lib) {
- char *bpath_user_data[2]= {bmain->name, arm->id.lib->filepath};
bArmature *armn= copy_armature(arm);
armn->id.us= 0;
/* Remap paths of new ID using old library as base. */
- bpath_traverse_id(bmain, &armn->id, bpath_relocate_visitor, 0, bpath_user_data);
+ BKE_id_lib_local_paths(bmain, &armn->id);
for(ob= bmain->object.first; ob; ob= ob->id.next) {
if(ob->data == arm) {
Modified: branches/bmesh/blender/source/blender/blenkernel/intern/blender.c
===================================================================
--- branches/bmesh/blender/source/blender/blenkernel/intern/blender.c 2011-11-01 08:11:55 UTC (rev 41431)
+++ branches/bmesh/blender/source/blender/blenkernel/intern/blender.c 2011-11-01 09:05:38 UTC (rev 41432)
@@ -173,7 +173,7 @@
{
Scene *scene;
- bpath_traverse_main(main, clean_paths_visit_cb, 0, NULL);
+ bpath_traverse_main(main, clean_paths_visit_cb, BPATH_TRAVERSE_SKIP_MULTIFILE, NULL);
for(scene= main->scene.first; scene; scene= scene->id.next) {
BLI_clean(scene->r.pic);
Modified: branches/bmesh/blender/source/blender/blenkernel/intern/brush.c
===================================================================
--- branches/bmesh/blender/source/blender/blenkernel/intern/brush.c 2011-11-01 08:11:55 UTC (rev 41431)
+++ branches/bmesh/blender/source/blender/blenkernel/intern/brush.c 2011-11-01 09:05:38 UTC (rev 41432)
@@ -224,13 +224,12 @@
}
}
else if(is_local && is_lib) {
- char *bpath_user_data[2]= {bmain->name, brush->id.lib->filepath};
Brush *brushn= copy_brush(brush);
brushn->id.us= 1; /* only keep fake user */
brushn->id.flag |= LIB_FAKEUSER;
/* Remap paths of new ID using old library as base. */
- bpath_traverse_id(bmain, &brushn->id, bpath_relocate_visitor, 0, bpath_user_data);
+ BKE_id_lib_local_paths(bmain, &brush->id);
for(scene= bmain->scene.first; scene; scene=scene->id.next) {
if(paint_brush(&scene->toolsettings->imapaint.paint)==brush) {
Modified: branches/bmesh/blender/source/blender/blenkernel/intern/constraint.c
===================================================================
--- branches/bmesh/blender/source/blender/blenkernel/intern/constraint.c 2011-11-01 08:11:55 UTC (rev 41431)
+++ branches/bmesh/blender/source/blender/blenkernel/intern/constraint.c 2011-11-01 09:05:38 UTC (rev 41432)
@@ -703,7 +703,7 @@
ct->type = CONSTRAINT_OBTYPE_BONE; \
ct->rotOrder= (pchan) ? (pchan->rotmode) : EULER_ORDER_DEFAULT; \
}\
- else if (ELEM(ct->tar->type, OB_MESH, OB_LATTICE) && (ct->subtarget[0])) { \
+ else if (OB_TYPE_SUPPORT_VGROUP(ct->tar->type) && (ct->subtarget[0])) { \
ct->type = CONSTRAINT_OBTYPE_VERT; \
ct->rotOrder = EULER_ORDER_DEFAULT; \
} \
Modified: branches/bmesh/blender/source/blender/blenkernel/intern/curve.c
===================================================================
--- branches/bmesh/blender/source/blender/blenkernel/intern/curve.c 2011-11-01 08:11:55 UTC (rev 41431)
+++ branches/bmesh/blender/source/blender/blenkernel/intern/curve.c 2011-11-01 09:05:38 UTC (rev 41432)
@@ -274,14 +274,11 @@
extern_local_curve(cu);
}
else if(is_local && is_lib) {
- char *bpath_user_data[2]= {bmain->name, cu->id.lib->filepath};
Curve *cun= copy_curve(cu);
cun->id.us= 0;
+ BKE_id_lib_local_paths(bmain, &cun->id);
- /* Remap paths of new ID using old library as base. */
- bpath_traverse_id(bmain, &cun->id, bpath_relocate_visitor, 0, bpath_user_data);
-
for(ob= bmain->object.first; ob; ob= ob->id.next) {
if(ob->data==cu) {
if(ob->id.lib==NULL) {
Modified: branches/bmesh/blender/source/blender/blenkernel/intern/deform.c
===================================================================
--- branches/bmesh/blender/source/blender/blenkernel/intern/deform.c 2011-11-01 08:11:55 UTC (rev 41431)
+++ branches/bmesh/blender/source/blender/blenkernel/intern/deform.c 2011-11-01 09:05:38 UTC (rev 41432)
@@ -260,17 +260,19 @@
/* note, must be freed */
int *defgroup_flip_map(Object *ob, int *flip_map_len, int use_default)
{
- bDeformGroup *dg;
int totdg= *flip_map_len= BLI_countlist(&ob->defbase);
if(totdg==0) {
return NULL;
}
else {
+ bDeformGroup *dg;
char name[sizeof(dg->name)];
int i, flip_num, *map= MEM_mallocN(totdg * sizeof(int), __func__);
- memset(map, -1, totdg * sizeof(int));
+ for (i=0; i < totdg; i++) {
+ map[i]= -1;
+ }
for (dg=ob->defbase.first, i=0; dg; dg=dg->next, i++) {
if(map[i] == -1) { /* may be calculated previously */
@@ -279,7 +281,7 @@
if(use_default)
map[i]= i;
- flip_side_name(name, dg->name, 0);
+ flip_side_name(name, dg->name, FALSE);
if(strcmp(name, dg->name)) {
flip_num= defgroup_name_index(ob, name);
if(flip_num >= 0) {
@@ -293,6 +295,40 @@
}
}
+/* note, must be freed */
+int *defgroup_flip_map_single(Object *ob, int *flip_map_len, int use_default, int defgroup)
+{
+ int totdg= *flip_map_len= BLI_countlist(&ob->defbase);
+
+ if(totdg==0) {
+ return NULL;
+ }
+ else {
+ bDeformGroup *dg;
+ char name[sizeof(dg->name)];
+ int i, flip_num, *map= MEM_mallocN(totdg * sizeof(int), __func__);
+
+ for (i=0; i < totdg; i++) {
+ if (use_default) map[i]= i;
+ else map[i]= -1;
+ }
+
+ dg= BLI_findlink(&ob->defbase, defgroup);
+
+ flip_side_name(name, dg->name, FALSE);
+ if(strcmp(name, dg->name)) {
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list