diff options
author | Campbell Barton <ideasman42@gmail.com> | 2011-12-16 14:39:43 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2011-12-16 14:39:43 +0400 |
commit | ce8f64d9f92e81629facea34b7f9e18e1f6b3d0c (patch) | |
tree | cdf7e806132bca62e915621fbc8e2632de7bdff6 /source/blender/editors/space_view3d/view3d_buttons.c | |
parent | 68dd3980638b6a1f0c766a1e023b393c0f36cacd (diff) |
de-duplicate parent loop checking function
Diffstat (limited to 'source/blender/editors/space_view3d/view3d_buttons.c')
-rw-r--r-- | source/blender/editors/space_view3d/view3d_buttons.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/source/blender/editors/space_view3d/view3d_buttons.c b/source/blender/editors/space_view3d/view3d_buttons.c index d2689fad8c2..1b923c7a0cd 100644 --- a/source/blender/editors/space_view3d/view3d_buttons.c +++ b/source/blender/editors/space_view3d/view3d_buttons.c @@ -59,6 +59,7 @@ #include "BKE_mesh.h" #include "BKE_screen.h" #include "BKE_deform.h" +#include "BKE_object.h" #include "WM_api.h" #include "WM_types.h" @@ -1105,14 +1106,6 @@ static void v3d_editmetaball_buts(uiLayout *layout, Object *ob) } } -/* test if 'ob' is a parent somewhere in par's parents */ -static int test_parent_loop(Object *par, Object *ob) -{ - if(par == NULL) return 0; - if(ob == par) return 1; - return test_parent_loop(par->parent, ob); -} - static void do_view3d_region_buttons(bContext *C, void *UNUSED(index), int event) { Main *bmain= CTX_data_main(C); @@ -1144,7 +1137,7 @@ static void do_view3d_region_buttons(bContext *C, void *UNUSED(index), int event /* note; this case also used for parbone */ case B_OBJECTPANELPARENT: if(ob) { - if(ob->id.lib || test_parent_loop(ob->parent, ob) ) + if (ob->id.lib || BKE_object_parent_loop_check(ob->parent, ob)) ob->parent= NULL; else { DAG_scene_sort(bmain, scene); |