Revision: 42483
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=42483
Author:   nazgul
Date:     2011-12-07 09:55:37 +0000 (Wed, 07 Dec 2011)
Log Message:
-----------
Fix #29432: Marquee Select Bug

Moved tweak threshold value to user preferences

This threshold might be needed to be tweaked when working with tables, i.e.
to prevent tap+slight movement be treated as tweak event.

Modified Paths:
--------------
    trunk/blender/release/scripts/startup/bl_ui/space_userpref.py
    trunk/blender/source/blender/editors/interface/resources.c
    trunk/blender/source/blender/makesdna/DNA_userdef_types.h
    trunk/blender/source/blender/makesrna/intern/rna_userdef.c
    trunk/blender/source/blender/windowmanager/intern/wm_gesture.c

Modified: trunk/blender/release/scripts/startup/bl_ui/space_userpref.py
===================================================================
--- trunk/blender/release/scripts/startup/bl_ui/space_userpref.py       
2011-12-07 09:24:45 UTC (rev 42482)
+++ trunk/blender/release/scripts/startup/bl_ui/space_userpref.py       
2011-12-07 09:55:37 UTC (rev 42483)
@@ -889,6 +889,8 @@
         sub.label(text="NDOF Device:")
         sub.prop(inputs, "ndof_sensitivity", text="NDOF Sensitivity")
 
+        col.prop(inputs, "tweak_threshold")
+
         row.separator()
 
     def draw(self, context):

Modified: trunk/blender/source/blender/editors/interface/resources.c
===================================================================
--- trunk/blender/source/blender/editors/interface/resources.c  2011-12-07 
09:24:45 UTC (rev 42482)
+++ trunk/blender/source/blender/editors/interface/resources.c  2011-12-07 
09:55:37 UTC (rev 42483)
@@ -1715,6 +1715,8 @@
                U.ndof_flag = NDOF_LOCK_HORIZON |
                        NDOF_SHOULD_PAN | NDOF_SHOULD_ZOOM | NDOF_SHOULD_ROTATE;
        }
+       if (U.tweak_threshold == 0 )
+               U.tweak_threshold= 10;
 
        /* funny name, but it is GE stuff, moves userdef stuff to engine */
 // XXX space_set_commmandline_options();

Modified: trunk/blender/source/blender/makesdna/DNA_userdef_types.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_userdef_types.h   2011-12-07 
09:24:45 UTC (rev 42482)
+++ trunk/blender/source/blender/makesdna/DNA_userdef_types.h   2011-12-07 
09:55:37 UTC (rev 42483)
@@ -408,8 +408,10 @@
        struct ColorBand coba_weight;   /* from texture.h */
 
        float sculpt_paint_overlay_col[3];
-       int pad3;
 
+       short tweak_threshold;
+       short pad3;
+
        char author[80];        /* author name for file formats supporting it */
 } UserDef;
 

Modified: trunk/blender/source/blender/makesrna/intern/rna_userdef.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_userdef.c  2011-12-07 
09:24:45 UTC (rev 42482)
+++ trunk/blender/source/blender/makesrna/intern/rna_userdef.c  2011-12-07 
09:55:37 UTC (rev 42483)
@@ -2929,6 +2929,11 @@
        RNA_def_property_range(prop, 3, 40);
        RNA_def_property_ui_text(prop, "Drag Threshold", "Amount of pixels you 
have to drag before dragging UI items happens");
 
+       prop= RNA_def_property(srna, "tweak_threshold", PROP_INT, PROP_NONE);
+       RNA_def_property_int_sdna(prop, NULL, "tweak_threshold");
+       RNA_def_property_range(prop, 3, 1024);
+       RNA_def_property_ui_text(prop, "Tweak Threshold", "Number of pixels you 
have to drag before tweak event is triggered");
+
        /* 3D mouse settings */
        /* global options */
        prop= RNA_def_property(srna, "ndof_sensitivity", PROP_FLOAT, PROP_NONE);

Modified: trunk/blender/source/blender/windowmanager/intern/wm_gesture.c
===================================================================
--- trunk/blender/source/blender/windowmanager/intern/wm_gesture.c      
2011-12-07 09:24:45 UTC (rev 42482)
+++ trunk/blender/source/blender/windowmanager/intern/wm_gesture.c      
2011-12-07 09:55:37 UTC (rev 42483)
@@ -124,14 +124,13 @@
 
 
 /* tweak and line gestures */
-#define TWEAK_THRESHOLD                10
 int wm_gesture_evaluate(wmGesture *gesture)
 {
        if(gesture->type==WM_GESTURE_TWEAK) {
                rcti *rect= gesture->customdata;
                int dx= rect->xmax - rect->xmin;
                int dy= rect->ymax - rect->ymin;
-               if(ABS(dx)+ABS(dy) > TWEAK_THRESHOLD) {
+               if(ABS(dx)+ABS(dy) > U.tweak_threshold) {
                        int theta= (int)floor(4.0f*atan2f((float)dy, 
(float)dx)/(float)M_PI + 0.5f);
                        int val= EVT_GESTURE_W;
                        

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to