Gizmo: activate some gizmos on drag instead of press
Use drag-only keyamp to adjust gizmos which use drag motion to change a value. By default gizmos still activate on press. This allows for left click select to be used with transform without the gizmos getting in the way. Even though this isn't necessary for right click select it allows click events to pass through and be used by tools which can be useful. Resolves T63996
This commit is contained in:
@@ -152,6 +152,7 @@ static void WM_GGT_value_operator_redo(wmGizmoGroupType *gzgt)
|
||||
gzgt->gzmap_params.regionid = RGN_TYPE_WINDOW;
|
||||
|
||||
gzgt->setup = WIDGETGROUP_value_operator_redo_setup;
|
||||
gzgt->setup_keymap = WM_gizmogroup_setup_keymap_generic_drag;
|
||||
gzgt->refresh = WIDGETGROUP_value_operator_redo_refresh;
|
||||
}
|
||||
|
||||
|
||||
@@ -461,6 +461,7 @@ static void IMAGE_GGT_gizmo2d(wmGizmoGroupType *gzgt)
|
||||
|
||||
gzgt->poll = ED_widgetgroup_gizmo2d_poll;
|
||||
gzgt->setup = ED_widgetgroup_gizmo2d_setup;
|
||||
gzgt->setup_keymap = WM_gizmogroup_setup_keymap_generic_drag;
|
||||
gzgt->refresh = ED_widgetgroup_gizmo2d_refresh;
|
||||
gzgt->draw_prepare = ED_widgetgroup_gizmo2d_draw_prepare;
|
||||
}
|
||||
|
||||
@@ -190,6 +190,7 @@ void NODE_GGT_backdrop_transform(wmGizmoGroupType *gzgt)
|
||||
|
||||
gzgt->poll = WIDGETGROUP_node_transform_poll;
|
||||
gzgt->setup = WIDGETGROUP_node_transform_setup;
|
||||
gzgt->setup_keymap = WM_gizmogroup_setup_keymap_generic_drag;
|
||||
gzgt->refresh = WIDGETGROUP_node_transform_refresh;
|
||||
}
|
||||
|
||||
@@ -410,6 +411,7 @@ void NODE_GGT_backdrop_crop(wmGizmoGroupType *gzgt)
|
||||
|
||||
gzgt->poll = WIDGETGROUP_node_crop_poll;
|
||||
gzgt->setup = WIDGETGROUP_node_crop_setup;
|
||||
gzgt->setup_keymap = WM_gizmogroup_setup_keymap_generic_drag;
|
||||
gzgt->draw_prepare = WIDGETGROUP_node_crop_draw_prepare;
|
||||
gzgt->refresh = WIDGETGROUP_node_crop_refresh;
|
||||
}
|
||||
@@ -514,6 +516,7 @@ void NODE_GGT_backdrop_sun_beams(wmGizmoGroupType *gzgt)
|
||||
|
||||
gzgt->poll = WIDGETGROUP_node_sbeam_poll;
|
||||
gzgt->setup = WIDGETGROUP_node_sbeam_setup;
|
||||
gzgt->setup_keymap = WM_gizmogroup_setup_keymap_generic_drag;
|
||||
gzgt->draw_prepare = WIDGETGROUP_node_sbeam_draw_prepare;
|
||||
gzgt->refresh = WIDGETGROUP_node_sbeam_refresh;
|
||||
}
|
||||
@@ -634,6 +637,7 @@ void NODE_GGT_backdrop_corner_pin(wmGizmoGroupType *gzgt)
|
||||
|
||||
gzgt->poll = WIDGETGROUP_node_corner_pin_poll;
|
||||
gzgt->setup = WIDGETGROUP_node_corner_pin_setup;
|
||||
gzgt->setup_keymap = WM_gizmogroup_setup_keymap_generic_drag;
|
||||
gzgt->draw_prepare = WIDGETGROUP_node_corner_pin_draw_prepare;
|
||||
gzgt->refresh = WIDGETGROUP_node_corner_pin_refresh;
|
||||
}
|
||||
|
||||
@@ -220,6 +220,7 @@ void VIEW3D_GGT_armature_spline(wmGizmoGroupType *gzgt)
|
||||
|
||||
gzgt->poll = WIDGETGROUP_armature_spline_poll;
|
||||
gzgt->setup = WIDGETGROUP_armature_spline_setup;
|
||||
gzgt->setup_keymap = WM_gizmogroup_setup_keymap_generic_drag;
|
||||
gzgt->refresh = WIDGETGROUP_armature_spline_refresh;
|
||||
}
|
||||
|
||||
|
||||
@@ -315,6 +315,7 @@ void VIEW3D_GGT_camera(wmGizmoGroupType *gzgt)
|
||||
|
||||
gzgt->poll = WIDGETGROUP_camera_poll;
|
||||
gzgt->setup = WIDGETGROUP_camera_setup;
|
||||
gzgt->setup_keymap = WM_gizmogroup_setup_keymap_generic_drag;
|
||||
gzgt->refresh = WIDGETGROUP_camera_refresh;
|
||||
gzgt->message_subscribe = WIDGETGROUP_camera_message_subscribe;
|
||||
}
|
||||
|
||||
@@ -200,6 +200,7 @@ void VIEW3D_GGT_empty_image(wmGizmoGroupType *gzgt)
|
||||
|
||||
gzgt->poll = WIDGETGROUP_empty_image_poll;
|
||||
gzgt->setup = WIDGETGROUP_empty_image_setup;
|
||||
gzgt->setup_keymap = WM_gizmogroup_setup_keymap_generic_drag;
|
||||
gzgt->refresh = WIDGETGROUP_empty_image_refresh;
|
||||
}
|
||||
|
||||
|
||||
@@ -117,6 +117,7 @@ void VIEW3D_GGT_force_field(wmGizmoGroupType *gzgt)
|
||||
|
||||
gzgt->poll = WIDGETGROUP_forcefield_poll;
|
||||
gzgt->setup = WIDGETGROUP_forcefield_setup;
|
||||
gzgt->setup_keymap = WM_gizmogroup_setup_keymap_generic_drag;
|
||||
gzgt->refresh = WIDGETGROUP_forcefield_refresh;
|
||||
}
|
||||
|
||||
|
||||
@@ -114,6 +114,7 @@ void VIEW3D_GGT_light_spot(wmGizmoGroupType *gzgt)
|
||||
|
||||
gzgt->poll = WIDGETGROUP_light_spot_poll;
|
||||
gzgt->setup = WIDGETGROUP_light_spot_setup;
|
||||
gzgt->setup_keymap = WM_gizmogroup_setup_keymap_generic_drag;
|
||||
gzgt->refresh = WIDGETGROUP_light_spot_refresh;
|
||||
}
|
||||
|
||||
@@ -230,6 +231,7 @@ void VIEW3D_GGT_light_area(wmGizmoGroupType *gzgt)
|
||||
|
||||
gzgt->poll = WIDGETGROUP_light_area_poll;
|
||||
gzgt->setup = WIDGETGROUP_light_area_setup;
|
||||
gzgt->setup_keymap = WM_gizmogroup_setup_keymap_generic_drag;
|
||||
gzgt->refresh = WIDGETGROUP_light_area_refresh;
|
||||
}
|
||||
|
||||
@@ -317,6 +319,7 @@ void VIEW3D_GGT_light_target(wmGizmoGroupType *gzgt)
|
||||
|
||||
gzgt->poll = WIDGETGROUP_light_target_poll;
|
||||
gzgt->setup = WIDGETGROUP_light_target_setup;
|
||||
gzgt->setup_keymap = WM_gizmogroup_setup_keymap_generic_drag;
|
||||
gzgt->draw_prepare = WIDGETGROUP_light_target_draw_prepare;
|
||||
}
|
||||
|
||||
|
||||
@@ -1993,6 +1993,7 @@ void VIEW3D_GGT_xform_gizmo(wmGizmoGroupType *gzgt)
|
||||
|
||||
gzgt->poll = WIDGETGROUP_gizmo_poll_tool;
|
||||
gzgt->setup = WIDGETGROUP_gizmo_setup;
|
||||
gzgt->setup_keymap = WM_gizmogroup_setup_keymap_generic_drag;
|
||||
gzgt->refresh = WIDGETGROUP_gizmo_refresh;
|
||||
gzgt->message_subscribe = WIDGETGROUP_gizmo_message_subscribe;
|
||||
gzgt->draw_prepare = WIDGETGROUP_gizmo_draw_prepare;
|
||||
@@ -2023,6 +2024,7 @@ void VIEW3D_GGT_xform_gizmo_context(wmGizmoGroupType *gzgt)
|
||||
|
||||
gzgt->poll = WIDGETGROUP_gizmo_poll_context;
|
||||
gzgt->setup = WIDGETGROUP_gizmo_setup;
|
||||
gzgt->setup_keymap = WM_gizmogroup_setup_keymap_generic_drag;
|
||||
gzgt->refresh = WIDGETGROUP_gizmo_refresh;
|
||||
gzgt->message_subscribe = WIDGETGROUP_gizmo_message_subscribe;
|
||||
gzgt->draw_prepare = WIDGETGROUP_gizmo_draw_prepare;
|
||||
@@ -2226,6 +2228,7 @@ void VIEW3D_GGT_xform_cage(wmGizmoGroupType *gzgt)
|
||||
|
||||
gzgt->poll = WIDGETGROUP_xform_cage_poll;
|
||||
gzgt->setup = WIDGETGROUP_xform_cage_setup;
|
||||
gzgt->setup_keymap = WM_gizmogroup_setup_keymap_generic_drag;
|
||||
gzgt->refresh = WIDGETGROUP_xform_cage_refresh;
|
||||
gzgt->message_subscribe = WIDGETGROUP_xform_cage_message_subscribe;
|
||||
gzgt->draw_prepare = WIDGETGROUP_xform_cage_draw_prepare;
|
||||
@@ -2409,6 +2412,7 @@ void VIEW3D_GGT_xform_shear(wmGizmoGroupType *gzgt)
|
||||
|
||||
gzgt->poll = WIDGETGROUP_xform_shear_poll;
|
||||
gzgt->setup = WIDGETGROUP_xform_shear_setup;
|
||||
gzgt->setup_keymap = WM_gizmogroup_setup_keymap_generic_drag;
|
||||
gzgt->refresh = WIDGETGROUP_xform_shear_refresh;
|
||||
gzgt->message_subscribe = WIDGETGROUP_xform_shear_message_subscribe;
|
||||
gzgt->draw_prepare = WIDGETGROUP_xform_shear_draw_prepare;
|
||||
|
||||
@@ -463,6 +463,7 @@ void VIEW3D_GGT_xform_extrude(struct wmGizmoGroupType *gzgt)
|
||||
|
||||
gzgt->poll = ED_gizmo_poll_or_unlink_delayed_from_tool;
|
||||
gzgt->setup = gizmo_mesh_extrude_setup;
|
||||
gzgt->setup_keymap = WM_gizmogroup_setup_keymap_generic_drag;
|
||||
gzgt->refresh = gizmo_mesh_extrude_refresh;
|
||||
gzgt->draw_prepare = gizmo_mesh_extrude_draw_prepare;
|
||||
gzgt->invoke_prepare = gizmo_mesh_extrude_invoke_prepare;
|
||||
|
||||
Reference in New Issue
Block a user