Changeset View
Changeset View
Standalone View
Standalone View
source/blender/windowmanager/gizmo/intern/wm_gizmo_map.c
| Show First 20 Lines • Show All 992 Lines • ▼ Show 20 Lines | |||||
| WM_cursor_grab_enable(win, WM_CURSOR_WRAP_XY, true, NULL); | WM_cursor_grab_enable(win, WM_CURSOR_WRAP_XY, true, NULL); | ||||
| copy_v2_v2_int(gzmap->gzmap_context.event_xy, &event->x); | copy_v2_v2_int(gzmap->gzmap_context.event_xy, &event->x); | ||||
| gzmap->gzmap_context.event_grabcursor = win->grabcursor; | gzmap->gzmap_context.event_grabcursor = win->grabcursor; | ||||
| } | } | ||||
| else { | else { | ||||
| gzmap->gzmap_context.event_xy[0] = INT_MAX; | gzmap->gzmap_context.event_xy[0] = INT_MAX; | ||||
| } | } | ||||
| struct wmGizmoOpElem *gzop = WM_gizmo_operator_get(gz, gz->highlight_part); | struct wmGizmoOpElem *gzop = NULL; | ||||
| if (event->shift) { | |||||
| gzop = WM_gizmo_operator_get(gz, 16); | |||||
| } | |||||
| if (!gzop) { | |||||
| gzop = WM_gizmo_operator_get(gz, gz->highlight_part); | |||||
| } | |||||
| if (gzop && gzop->type) { | if (gzop && gzop->type) { | ||||
| const int retval = WM_gizmo_operator_invoke(C, gz, gzop); | const int retval = WM_gizmo_operator_invoke(C, gz, gzop); | ||||
| if ((retval & OPERATOR_RUNNING_MODAL) == 0) { | if ((retval & OPERATOR_RUNNING_MODAL) == 0) { | ||||
| wm_gizmomap_modal_set(gzmap, C, gz, event, false); | wm_gizmomap_modal_set(gzmap, C, gz, event, false); | ||||
| } | } | ||||
| /* we failed to hook the gizmo to the operator handler or operator was cancelled, return */ | /* we failed to hook the gizmo to the operator handler or operator was cancelled, return */ | ||||
| if (!gzmap->gzmap_context.modal) { | if (!gzmap->gzmap_context.modal) { | ||||
| ▲ Show 20 Lines • Show All 313 Lines • Show Last 20 Lines | |||||