forked from bartvdbraak/blender
fix for 3 bugs in bone renaming
- renaming a bone could crash if the area had to spaces in it (reported by Sebastian Koenig). - renaming bones wouldn't update inactive 3d views locked bone names. - selecting locked bones in the UI didnt work in editmode.
This commit is contained in:
parent
f6a2b8d724
commit
9a9513a9f0
@ -2073,9 +2073,11 @@ class VIEW3D_PT_view3d_properties(Panel):
|
|||||||
col.prop(view, "lens")
|
col.prop(view, "lens")
|
||||||
col.label(text="Lock to Object:")
|
col.label(text="Lock to Object:")
|
||||||
col.prop(view, "lock_object", text="")
|
col.prop(view, "lock_object", text="")
|
||||||
if view.lock_object and view.lock_object.type == 'ARMATURE':
|
lock_object = view.lock_object
|
||||||
col.prop_search(view, "lock_bone", view.lock_object.data, "bones", text="")
|
if lock_object:
|
||||||
elif not view.lock_object:
|
if lock_object.type == 'ARMATURE':
|
||||||
|
col.prop_search(view, "lock_bone", lock_object.data, "edit_bones" if lock_object.mode == 'EDIT' else "bones", text="")
|
||||||
|
else:
|
||||||
col.prop(view, "lock_cursor", text="Lock to Cursor")
|
col.prop(view, "lock_cursor", text="Lock to Cursor")
|
||||||
|
|
||||||
col = layout.column()
|
col = layout.column()
|
||||||
|
@ -5402,12 +5402,14 @@ void ED_armature_bone_rename(bArmature *arm, char *oldnamep, char *newnamep)
|
|||||||
ScrArea *sa;
|
ScrArea *sa;
|
||||||
/* add regions */
|
/* add regions */
|
||||||
for(sa= screen->areabase.first; sa; sa= sa->next) {
|
for(sa= screen->areabase.first; sa; sa= sa->next) {
|
||||||
SpaceLink *sl= sa->spacedata.first;
|
SpaceLink *sl;
|
||||||
if(sl->spacetype == SPACE_VIEW3D) {
|
for (sl= sa->spacedata.first; sl; sl= sl->next) {
|
||||||
View3D *v3d= (View3D *)sl;
|
if(sl->spacetype==SPACE_VIEW3D) {
|
||||||
if(v3d->ob_centre && v3d->ob_centre->data == arm) {
|
View3D *v3d= (View3D *)sl;
|
||||||
if (!strcmp(v3d->ob_centre_bone, oldname)) {
|
if(v3d->ob_centre && v3d->ob_centre->data == arm) {
|
||||||
BLI_strncpy(v3d->ob_centre_bone, newname, MAXBONENAME);
|
if (!strcmp(v3d->ob_centre_bone, oldname)) {
|
||||||
|
BLI_strncpy(v3d->ob_centre_bone, newname, MAXBONENAME);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user