Bugreports #19724 and #19725 for Lasso Select
authorJoshua Leung <aligorith@gmail.com>
Mon, 26 Oct 2009 03:35:37 +0000 (03:35 +0000)
committerJoshua Leung <aligorith@gmail.com>
Mon, 26 Oct 2009 03:35:37 +0000 (03:35 +0000)
Fixes for these were provided by the submitter, Clark Tucker (ctucker_toc). Thanks!

- #19724: Fix for problems with lasso select with 'occlude background geometry' turned off. Removed a duplicate call to ED_view3d_init_mats_rv3d().
(NOTE: I couldn't reproduce the error on my system, but the duplicate call does look rather fishy. Removing it doesn't seem to have any negative effects at least)
- #19725: Lasso select does not update 'selected vertex count' in 'INFO bar'. Added a notifier here to get the counter refreshed.

source/blender/editors/space_view3d/view3d_select.c

index 12b26e1d8151e3c7d9b0a22bffea06d8f0bfc847..1f186f0d931f5c4cef65e6383ec4717099f7d3ac 100644 (file)
@@ -146,10 +146,6 @@ void view3d_get_transformation(ViewContext *vc, Object *ob, bglMats *mats)
 
 /* ********************** view3d_select: selection manipulations ********************* */
 
-/* XXX to solve *************** */
-static void BIF_undo_push() {}
-/* XXX end ********************* */
-
 /* local prototypes */
 
 void EM_backbuf_checkAndSelectVerts(EditMesh *em, int select)
@@ -461,8 +457,6 @@ static void do_lasso_select_mesh(ViewContext *vc, short mcords[][2], short moves
        bbsel= EM_mask_init_backbuf_border(vc, mcords, moves, rect.xmin, rect.ymin, rect.xmax, rect.ymax);
        ED_view3d_init_mats_rv3d(vc->obedit, vc->rv3d); /* for foreach's screen/vert projection */
        
-       ED_view3d_init_mats_rv3d(vc->obedit, vc->rv3d); /* for foreach's screen/vert projection */
-
        if(ts->selectmode & SCE_SELECT_VERTEX) {
                if (bbsel) {
                        EM_backbuf_checkAndSelectVerts(vc->em, select);
@@ -723,9 +717,8 @@ void view3d_lasso_select(bContext *C, ViewContext *vc, short mcords[][2], short
                do_lasso_select_lattice(vc, mcords, moves, select);
        else if(vc->obedit->type==OB_ARMATURE)
                do_lasso_select_armature(vc, mcords, moves, select);
-
-       BIF_undo_push("Lasso select");
        
+       WM_event_add_notifier(C, NC_GEOM|ND_SELECT, vc->obedit->data);
 }