Cleanup: rename uiBlock.mx,my to bounds_offset
authorCampbell Barton <ideasman42@gmail.com>
Wed, 13 Mar 2019 05:35:24 +0000 (16:35 +1100)
committerCampbell Barton <ideasman42@gmail.com>
Wed, 13 Mar 2019 05:41:35 +0000 (16:41 +1100)
Use a name that related to block bounds calculation
(mx/my are typically used for mouse x,y).

source/blender/editors/include/UI_interface.h
source/blender/editors/interface/interface.c
source/blender/editors/interface/interface_context_menu.c
source/blender/editors/interface/interface_intern.h
source/blender/editors/interface/interface_region_menu_pie.c
source/blender/editors/interface/interface_region_menu_popup.c
source/blender/editors/interface/interface_region_popover.c
source/blender/editors/interface/interface_widgets.c
source/blender/editors/space_node/node_select.c
source/blender/windowmanager/intern/wm_operators.c

index d9b2b09..ec8c2e0 100644 (file)
@@ -594,8 +594,8 @@ typedef enum {
 
 void UI_block_bounds_set_normal(struct uiBlock *block, int addval);
 void UI_block_bounds_set_text(uiBlock *block, int addval);
-void UI_block_bounds_set_popup(uiBlock *block, int addval, int mx, int my);
-void UI_block_bounds_set_menu(uiBlock *block, int addvall, int mx, int my);
+void UI_block_bounds_set_popup(uiBlock *block, int addval, const int bounds_offset[2]);
+void UI_block_bounds_set_menu(uiBlock *block, int addval, const int bounds_offset[2]);
 void UI_block_bounds_set_centered(uiBlock *block, int addval);
 void UI_block_bounds_set_explicit(uiBlock *block, int minx, int miny, int maxx, int maxy);
 
index e8c63fb..840c68e 100644 (file)
@@ -495,8 +495,8 @@ static void ui_block_bounds_calc_popup(
 
        /* offset block based on mouse position, user offset is scaled
         * along in case we resized the block in ui_block_bounds_calc_text */
-       raw_x = rect.xmin = xy[0] + block->rect.xmin + (block->mx * width) / oldwidth;
-       raw_y = rect.ymin = xy[1] + block->rect.ymin + (block->my * height) / oldheight;
+       raw_x = rect.xmin = xy[0] + block->rect.xmin + (block->bounds_offset[0] * width) / oldwidth;
+       raw_y = rect.ymin = xy[1] + block->rect.ymin + (block->bounds_offset[1] * height) / oldheight;
        rect.xmax = rect.xmin + width;
        rect.ymax = rect.ymin + height;
 
@@ -538,21 +538,33 @@ void UI_block_bounds_set_text(uiBlock *block, int addval)
 }
 
 /* used for block popups */
-void UI_block_bounds_set_popup(uiBlock *block, int addval, int mx, int my)
+void UI_block_bounds_set_popup(uiBlock *block, int addval, const int bounds_offset[2])
 {
        block->bounds = addval;
        block->bounds_type = UI_BLOCK_BOUNDS_POPUP_MOUSE;
-       block->mx = mx;
-       block->my = my;
+       if (bounds_offset != NULL) {
+               block->bounds_offset[0] = bounds_offset[0];
+               block->bounds_offset[1] = bounds_offset[1];
+       }
+       else {
+               block->bounds_offset[0] = 0;
+               block->bounds_offset[1] = 0;
+       }
 }
 
 /* used for menu popups */
-void UI_block_bounds_set_menu(uiBlock *block, int addval, int mx, int my)
+void UI_block_bounds_set_menu(uiBlock *block, int addval, const int bounds_offset[2])
 {
        block->bounds = addval;
        block->bounds_type = UI_BLOCK_BOUNDS_POPUP_MENU;
-       block->mx = mx;
-       block->my = my;
+       if (bounds_offset != NULL) {
+               block->bounds_offset[0] = bounds_offset[0];
+               block->bounds_offset[1] = bounds_offset[1];
+       }
+       else {
+               block->bounds_offset[0] = 0;
+               block->bounds_offset[1] = 0;
+       }
 }
 
 /* used for centered popups, i.e. splash */
index 7ed80aa..d075052 100644 (file)
@@ -110,7 +110,7 @@ static uiBlock *menu_change_shortcut(bContext *C, ARegion *ar, void *arg)
 
        uiItemR(layout, &ptr, "type", UI_ITEM_R_FULL_EVENT | UI_ITEM_R_IMMEDIATE, "", ICON_NONE);
 
-       UI_block_bounds_set_popup(block, 6, -50, 26);
+       UI_block_bounds_set_popup(block, 6, (const int[2]){-50, 26});
 
        return block;
 }
@@ -159,7 +159,7 @@ static uiBlock *menu_add_shortcut(bContext *C, ARegion *ar, void *arg)
 
        uiItemR(layout, &ptr, "type", UI_ITEM_R_FULL_EVENT | UI_ITEM_R_IMMEDIATE, "", ICON_NONE);
 
-       UI_block_bounds_set_popup(block, 6, -50, 26);
+       UI_block_bounds_set_popup(block, 6, (const int[2]){-50, 26});
 
 #ifdef USE_KEYMAP_ADD_HACK
        g_kmi_id_hack = kmi_id;
index 82d6115..9d3f208 100644 (file)
@@ -440,7 +440,8 @@ struct uiBlock {
 
        /** for doing delayed */
        eBlockBoundsCalc bounds_type;
-       int mx, my;
+       /** Offset to use when calculating bounds (in pixels). */
+       int bounds_offset[2];
        /** for doing delayed */
        int bounds, minbounds;
 
@@ -613,7 +614,7 @@ struct uiPopupBlockHandle {
        rctf prev_block_rect;
        rctf prev_butrct;
        short prev_dir1, prev_dir2;
-       int prev_mx, prev_my;
+       int prev_bounds_offset[2];
 
        /* Maximum estimated size to avoid having to reposition on refresh. */
        float max_size_x, max_size_y;
index 2631f38..06ea9a7 100644 (file)
@@ -85,8 +85,8 @@ static uiBlock *ui_block_func_PIE(bContext *UNUSED(C), uiPopupBlockHandle *handl
 
        block->minbounds = minwidth;
        block->bounds = 1;
-       block->mx = 0;
-       block->my = 0;
+       block->bounds_offset[0] = 0;
+       block->bounds_offset[1] = 0;
        block->bounds_type = UI_BLOCK_BOUNDS_PIE_CENTER;
 
        block->pie_data.pie_center_spawned[0] = pie->mx;
index 73847d6..3ec2fd2 100644 (file)
@@ -272,7 +272,7 @@ static uiBlock *ui_block_func_POPUP(bContext *C, uiPopupBlockHandle *handle, voi
                }
 
                block->minbounds = minwidth;
-               UI_block_bounds_set_menu(block, 1, offset[0], offset[1]);
+               UI_block_bounds_set_menu(block, 1, offset);
        }
        else {
                /* for a header menu we set the direction automatic */
index 4fd25c4..e6e7cb3 100644 (file)
@@ -48,6 +48,7 @@
 
 #include "BLI_rect.h"
 #include "BLI_utildefines.h"
+#include "BLI_math_vector.h"
 
 #include "BKE_context.h"
 #include "BKE_screen.h"
@@ -161,12 +162,12 @@ static uiBlock *ui_block_func_POPOVER(bContext *C, uiPopupBlockHandle *handle, v
                        ui_block_to_window_fl(handle->ctx_region, pup->but->block, &center[0], &center[1]);
                        /* These variables aren't used for popovers,
                         * we could add new variables if there is a conflict. */
-                       handle->prev_mx = block->mx = (int)center[0];
-                       handle->prev_my = block->my = (int)center[1];
+                       block->bounds_offset[0] = (int)center[0];
+                       block->bounds_offset[1] = (int)center[1];
+                       copy_v2_v2_int(handle->prev_bounds_offset, block->bounds_offset);
                }
                else {
-                       block->mx = handle->prev_mx;
-                       block->my = handle->prev_my;
+                       copy_v2_v2_int(block->bounds_offset, handle->prev_bounds_offset);
                }
 
                if (!slideout) {
@@ -213,7 +214,7 @@ static uiBlock *ui_block_func_POPOVER(bContext *C, uiPopupBlockHandle *handle, v
                        }
                }
 
-               UI_block_bounds_set_popup(block, block_margin, offset[0], offset[1]);
+               UI_block_bounds_set_popup(block, block_margin, offset);
        }
 
        return block;
index 7e43ac8..04a329b 100644 (file)
@@ -4498,7 +4498,7 @@ void ui_draw_popover_back(ARegion *ar, uiStyle *UNUSED(style), uiBlock *block, r
        uiWidgetType *wt = widget_type(UI_WTYPE_MENU_BACK);
 
        if (block) {
-               float mval_origin[2] = {block->mx, block->my};
+               float mval_origin[2] = {UNPACK2(block->bounds_offset)};
                ui_window_to_block_fl(ar, block, &mval_origin[0], &mval_origin[1]);
                ui_draw_popover_back_impl(wt->wcol_theme, rect, block->direction, U.widget_unit / block->aspect,  mval_origin);
        }
index ae5413f..fae5f7b 100644 (file)
@@ -1086,7 +1086,8 @@ static uiBlock *node_find_menu(bContext *C, ARegion *ar, void *arg_op)
        /* fake button, it holds space for search items */
        uiDefBut(block, UI_BTYPE_LABEL, 0, "", 10, 10 - UI_searchbox_size_y(), UI_searchbox_size_x(), UI_searchbox_size_y(), NULL, 0, 0, 0, 0, NULL);
 
-       UI_block_bounds_set_popup(block, 6, 0, -UI_UNIT_Y); /* move it downwards, mouse over button */
+       /* Move it downwards, mouse over button. */
+       UI_block_bounds_set_popup(block, 6, (const int[2]){0, -UI_UNIT_Y});
 
        //      UI_but_active_only(C, ar, block, but); XXX using this here makes Blender hang - investigate
        wm_event_init_from_window(win, &event);
index a6e0c86..ff3d160 100644 (file)
@@ -789,7 +789,9 @@ static uiBlock *wm_enum_search_menu(bContext *C, ARegion *ar, void *arg)
        /* fake button, it holds space for search items */
        uiDefBut(block, UI_BTYPE_LABEL, 0, "", 10, 10 - UI_searchbox_size_y(), width, height, NULL, 0, 0, 0, 0, NULL);
 
-       UI_block_bounds_set_popup(block, 6, 0, -UI_UNIT_Y); /* move it downwards, mouse over button */
+       /* Move it downwards, mouse over button. */
+       UI_block_bounds_set_popup(block, 6, (const int[2]){0, -UI_UNIT_Y});
+
        UI_but_focus_on_enter_event(win, but);
 
        return block;
@@ -1062,7 +1064,7 @@ static uiBlock *wm_block_create_redo(bContext *C, ARegion *ar, void *arg_op)
                        UI_TEMPLATE_OP_PROPS_SHOW_TITLE);
        }
 
-       UI_block_bounds_set_popup(block, 4, 0, 0);
+       UI_block_bounds_set_popup(block, 4, NULL);
 
        return block;
 }
@@ -1150,7 +1152,7 @@ static uiBlock *wm_block_dialog_create(bContext *C, ARegion *ar, void *userData)
        }
 
        /* center around the mouse */
-       UI_block_bounds_set_popup(block, 4, data->width / -2, data->height / 2);
+       UI_block_bounds_set_popup(block, 4, (const int[2]){data->width / -2, data->height / 2});
 
        return block;
 }
@@ -1175,7 +1177,7 @@ static uiBlock *wm_operator_ui_create(bContext *C, ARegion *ar, void *userData)
 
        UI_block_func_set(block, NULL, NULL, NULL);
 
-       UI_block_bounds_set_popup(block, 4, 0, 0);
+       UI_block_bounds_set_popup(block, 4, NULL);
 
        return block;
 }
@@ -1597,7 +1599,8 @@ static uiBlock *wm_block_search_menu(bContext *C, ARegion *ar, void *userdata)
        uiDefBut(block, UI_BTYPE_LABEL, 0, "", 10, 10 - init_data->size[1],
                 init_data->size[0], init_data->size[1], NULL, 0, 0, 0, 0, NULL);
 
-       UI_block_bounds_set_popup(block, 6, 0, -UI_UNIT_Y); /* move it downwards, mouse over button */
+       /* Move it downwards, mouse over button. */
+       UI_block_bounds_set_popup(block, 6, (const int[2]){0, -UI_UNIT_Y});
 
        wm_event_init_from_window(win, &event);
        event.type = EVT_BUT_OPEN;