Fix T39123: Border select without "extend" does nor clear selection of bezier nodes in 3D view

This is a regression introduced in fbc7ab30f and caused by the wrong object
being passed to the function.

Not sure passing editnurb as an argument is a good thing to do..
This commit is contained in:
Sergey Sharybin 2014-03-12 14:07:26 +06:00
parent b23a4395c7
commit 0a3850fde4
Notes: blender-bot 2023-02-14 11:01:27 +01:00
Referenced by issue #39123, Border select without "extend" does nor clear selection of bezier nodes in 3D view
1 changed files with 8 additions and 4 deletions

View File

@ -573,8 +573,10 @@ static void do_lasso_select_curve(ViewContext *vc, const int mcords[][2], short
view3d_userdata_lassoselect_init(&data, vc, &rect, mcords, moves, select);
if (extend == false && select)
ED_curve_deselect_all(vc->obedit->data);
if (extend == false && select) {
Curve *curve = (Curve *) vc->obedit->data;
ED_curve_deselect_all(curve->editnurb);
}
ED_view3d_init_mats_rv3d(vc->obedit, vc->rv3d); /* for foreach's screen/vert projection */
nurbs_foreachScreenVert(vc, do_lasso_select_curve__doSelect, &data, V3D_PROJ_TEST_CLIP_DEFAULT);
@ -1740,8 +1742,10 @@ static int do_nurbs_box_select(ViewContext *vc, rcti *rect, bool select, bool ex
view3d_userdata_boxselect_init(&data, vc, rect, select);
if (extend == false && select)
ED_curve_deselect_all(vc->obedit->data);
if (extend == false && select) {
Curve *curve = (Curve *) vc->obedit->data;
ED_curve_deselect_all(curve->editnurb);
}
ED_view3d_init_mats_rv3d(vc->obedit, vc->rv3d); /* for foreach's screen/vert projection */
nurbs_foreachScreenVert(vc, do_nurbs_box_select__doSelect, &data, V3D_PROJ_TEST_CLIP_DEFAULT);