Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2019-05-30 08:20:20 +0300
committerCampbell Barton <ideasman42@gmail.com>2019-05-30 08:22:19 +0300
commit8778dd0c8b461780fdf9de688047d1a9c24dd641 (patch)
tree7deaca909a365188e37ce8e203e2a3ae1e6bdabe
parent0c8c1602029b5a0a34b7750c03b03fe990104c0e (diff)
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
-rw-r--r--source/blender/editors/gizmo_library/gizmo_group_types/value2d_gizmo_group.c1
-rw-r--r--source/blender/editors/space_image/space_image.c1
-rw-r--r--source/blender/editors/space_node/node_gizmo.c4
-rw-r--r--source/blender/editors/space_view3d/view3d_gizmo_armature.c1
-rw-r--r--source/blender/editors/space_view3d/view3d_gizmo_camera.c1
-rw-r--r--source/blender/editors/space_view3d/view3d_gizmo_empty.c1
-rw-r--r--source/blender/editors/space_view3d/view3d_gizmo_forcefield.c1
-rw-r--r--source/blender/editors/space_view3d/view3d_gizmo_light.c3
-rw-r--r--source/blender/editors/transform/transform_gizmo_3d.c4
-rw-r--r--source/blender/editors/transform/transform_gizmo_extrude_3d.c1
10 files changed, 18 insertions, 0 deletions
diff --git a/source/blender/editors/gizmo_library/gizmo_group_types/value2d_gizmo_group.c b/source/blender/editors/gizmo_library/gizmo_group_types/value2d_gizmo_group.c
index 3b61aed5e27..2749eab0548 100644
--- a/source/blender/editors/gizmo_library/gizmo_group_types/value2d_gizmo_group.c
+++ b/source/blender/editors/gizmo_library/gizmo_group_types/value2d_gizmo_group.c
@@ -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;
}
diff --git a/source/blender/editors/space_image/space_image.c b/source/blender/editors/space_image/space_image.c
index 73baf1540f7..539c9c09389 100644
--- a/source/blender/editors/space_image/space_image.c
+++ b/source/blender/editors/space_image/space_image.c
@@ -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;
}
diff --git a/source/blender/editors/space_node/node_gizmo.c b/source/blender/editors/space_node/node_gizmo.c
index dbbef222250..4a929a660d9 100644
--- a/source/blender/editors/space_node/node_gizmo.c
+++ b/source/blender/editors/space_node/node_gizmo.c
@@ -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;
}
diff --git a/source/blender/editors/space_view3d/view3d_gizmo_armature.c b/source/blender/editors/space_view3d/view3d_gizmo_armature.c
index 3ea127b364f..b24b678cb7a 100644
--- a/source/blender/editors/space_view3d/view3d_gizmo_armature.c
+++ b/source/blender/editors/space_view3d/view3d_gizmo_armature.c
@@ -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;
}
diff --git a/source/blender/editors/space_view3d/view3d_gizmo_camera.c b/source/blender/editors/space_view3d/view3d_gizmo_camera.c
index 5fe62a74d4b..11a8988f83b 100644
--- a/source/blender/editors/space_view3d/view3d_gizmo_camera.c
+++ b/source/blender/editors/space_view3d/view3d_gizmo_camera.c
@@ -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;
}
diff --git a/source/blender/editors/space_view3d/view3d_gizmo_empty.c b/source/blender/editors/space_view3d/view3d_gizmo_empty.c
index 6a3979ae458..a54d59b961f 100644
--- a/source/blender/editors/space_view3d/view3d_gizmo_empty.c
+++ b/source/blender/editors/space_view3d/view3d_gizmo_empty.c
@@ -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;
}
diff --git a/source/blender/editors/space_view3d/view3d_gizmo_forcefield.c b/source/blender/editors/space_view3d/view3d_gizmo_forcefield.c
index 7d3e22b4d70..1c7c0284fe3 100644
--- a/source/blender/editors/space_view3d/view3d_gizmo_forcefield.c
+++ b/source/blender/editors/space_view3d/view3d_gizmo_forcefield.c
@@ -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;
}
diff --git a/source/blender/editors/space_view3d/view3d_gizmo_light.c b/source/blender/editors/space_view3d/view3d_gizmo_light.c
index 8c6f783de61..0338fe5bead 100644
--- a/source/blender/editors/space_view3d/view3d_gizmo_light.c
+++ b/source/blender/editors/space_view3d/view3d_gizmo_light.c
@@ -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;
}
diff --git a/source/blender/editors/transform/transform_gizmo_3d.c b/source/blender/editors/transform/transform_gizmo_3d.c
index bf2e369d78d..eef57824d7a 100644
--- a/source/blender/editors/transform/transform_gizmo_3d.c
+++ b/source/blender/editors/transform/transform_gizmo_3d.c
@@ -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;
diff --git a/source/blender/editors/transform/transform_gizmo_extrude_3d.c b/source/blender/editors/transform/transform_gizmo_extrude_3d.c
index 24ef92b3153..9e8258bffb1 100644
--- a/source/blender/editors/transform/transform_gizmo_extrude_3d.c
+++ b/source/blender/editors/transform/transform_gizmo_extrude_3d.c
@@ -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;