change clip utility function arguments to take space data and region rather then...
[blender.git] / source / blender / editors / mask / mask_select.c
index 565beaf34ef1b659ff6b8724b938940ecb16645b..2f5fef1d59a13e55b94be1bd27ff2017b4b13743 100644 (file)
@@ -343,9 +343,12 @@ static int select_exec(bContext *C, wmOperator *op)
 
 static int select_invoke(bContext *C, wmOperator *op, wmEvent *event)
 {
+       ScrArea *sa = CTX_wm_area(C);
+       ARegion *ar = CTX_wm_region(C);
+
        float co[2];
 
-       ED_mask_mouse_pos(C, event, co);
+       ED_mask_mouse_pos(sa, ar, event, co);
 
        RNA_float_set_array(op->ptr, "location", co);
 
@@ -380,6 +383,9 @@ void MASK_OT_select(wmOperatorType *ot)
 
 static int border_select_exec(bContext *C, wmOperator *op)
 {
+       ScrArea *sa = CTX_wm_area(C);
+       ARegion *ar = CTX_wm_region(C);
+
        Mask *mask = CTX_data_edit_mask(C);
        MaskLayer *masklay;
        int i;
@@ -394,8 +400,8 @@ static int border_select_exec(bContext *C, wmOperator *op)
        rect.xmax = RNA_int_get(op->ptr, "xmax");
        rect.ymax = RNA_int_get(op->ptr, "ymax");
 
-       ED_mask_point_pos(C, rect.xmin, rect.ymin, &rectf.xmin, &rectf.ymin);
-       ED_mask_point_pos(C, rect.xmax, rect.ymax, &rectf.xmax, &rectf.ymax);
+       ED_mask_point_pos(sa, ar, rect.xmin, rect.ymin, &rectf.xmin, &rectf.ymin);
+       ED_mask_point_pos(sa, ar, rect.xmax, rect.ymax, &rectf.xmax, &rectf.ymax);
 
        mode = RNA_int_get(op->ptr, "gesture_mode");
        extend = RNA_boolean_get(op->ptr, "extend");
@@ -465,6 +471,9 @@ void MASK_OT_select_border(wmOperatorType *ot)
 
 static int do_lasso_select_mask(bContext *C, int mcords[][2], short moves, short select)
 {
+       ScrArea *sa = CTX_wm_area(C);
+       ARegion *ar = CTX_wm_region(C);
+
        Mask *mask = CTX_data_edit_mask(C);
        MaskLayer *masklay;
        int i;
@@ -496,7 +505,7 @@ static int do_lasso_select_mask(bContext *C, int mcords[][2], short moves, short
                                float screen_co[2];
 
                                /* marker in screen coords */
-                               ED_mask_point_pos__reverse(C,
+                               ED_mask_point_pos__reverse(sa, ar,
                                                           point_deform->bezt.vec[1][0], point_deform->bezt.vec[1][1],
                                                           &screen_co[0], &screen_co[1]);
 
@@ -578,6 +587,9 @@ static int mask_spline_point_inside_ellipse(BezTriple *bezt, float offset[2], fl
 
 static int circle_select_exec(bContext *C, wmOperator *op)
 {
+       ScrArea *sa = CTX_wm_area(C);
+       ARegion *ar = CTX_wm_region(C);
+
        Mask *mask = CTX_data_edit_mask(C);
        MaskLayer *masklay;
        int i;
@@ -593,14 +605,14 @@ static int circle_select_exec(bContext *C, wmOperator *op)
        mode = RNA_int_get(op->ptr, "gesture_mode");
 
        /* compute ellipse and position in unified coordinates */
-       ED_mask_size(C, &width, &height);
-       ED_mask_zoom(C, &zoomx, &zoomy);
+       ED_mask_get_size(sa, &width, &height);
+       ED_mask_zoom(sa, ar, &zoomx, &zoomy);
        width = height = MAX2(width, height);
 
        ellipse[0] = width * zoomx / radius;
        ellipse[1] = height * zoomy / radius;
 
-       ED_mask_point_pos(C, x, y, &offset[0], &offset[1]);
+       ED_mask_point_pos(sa, ar, x, y, &offset[0], &offset[1]);
 
        /* do actual selection */
        for (masklay = mask->masklayers.first; masklay; masklay = masklay->next) {
@@ -663,6 +675,9 @@ void MASK_OT_select_circle(wmOperatorType *ot)
 
 static int mask_select_linked_pick_invoke(bContext *C, wmOperator *op, wmEvent *event)
 {
+       ScrArea *sa = CTX_wm_area(C);
+       ARegion *ar = CTX_wm_region(C);
+
        Mask *mask = CTX_data_edit_mask(C);
        MaskLayer *masklay;
        MaskSpline *spline;
@@ -674,7 +689,7 @@ static int mask_select_linked_pick_invoke(bContext *C, wmOperator *op, wmEvent *
        const float threshold = 19;
        int change = FALSE;
 
-       ED_mask_mouse_pos(C, event, co);
+       ED_mask_mouse_pos(sa, ar, event, co);
 
        point = ED_mask_point_find_nearest(C, mask, co, threshold, &masklay, &spline, &is_handle, NULL);