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>2018-07-15 00:49:00 +0300
committerCampbell Barton <ideasman42@gmail.com>2018-07-15 00:49:00 +0300
commit5ebebcfbfff4c218ab4101ee7f6a66617ee9b01f (patch)
tree86f319a9291847c2608bfd0b89bae3d504e378cf /source/blender/editors
parentcd1600413246a62156441f6e7910489b19ae5a28 (diff)
WM: rename manipulator to gizmo internally
Diffstat (limited to 'source/blender/editors')
-rw-r--r--source/blender/editors/gizmo_library/geometry/geom_arrow_gizmo.c2
-rw-r--r--source/blender/editors/gizmo_library/geometry/geom_cube_gizmo.c2
-rw-r--r--source/blender/editors/gizmo_library/geometry/geom_dial_gizmo.c2
-rw-r--r--source/blender/editors/gizmo_library/gizmo_draw_utils.c10
-rw-r--r--source/blender/editors/gizmo_library/gizmo_geometry.h22
-rw-r--r--source/blender/editors/gizmo_library/gizmo_library_intern.h56
-rw-r--r--source/blender/editors/gizmo_library/gizmo_library_presets.c44
-rw-r--r--source/blender/editors/gizmo_library/gizmo_library_utils.c78
-rw-r--r--source/blender/editors/gizmo_library/gizmo_types/arrow2d_gizmo.c56
-rw-r--r--source/blender/editors/gizmo_library/gizmo_types/arrow3d_gizmo.c246
-rw-r--r--source/blender/editors/gizmo_library/gizmo_types/button2d_gizmo.c76
-rw-r--r--source/blender/editors/gizmo_library/gizmo_types/cage2d_gizmo.c322
-rw-r--r--source/blender/editors/gizmo_library/gizmo_types/cage3d_gizmo.c214
-rw-r--r--source/blender/editors/gizmo_library/gizmo_types/dial3d_gizmo.c128
-rw-r--r--source/blender/editors/gizmo_library/gizmo_types/grab3d_gizmo.c144
-rw-r--r--source/blender/editors/gizmo_library/gizmo_types/primitive3d_gizmo.c76
-rw-r--r--source/blender/editors/include/ED_gizmo_library.h206
-rw-r--r--source/blender/editors/include/ED_transform.h20
-rw-r--r--source/blender/editors/include/UI_interface.h4
-rw-r--r--source/blender/editors/include/UI_resources.h10
-rw-r--r--source/blender/editors/interface/interface_region_tooltip.c14
-rw-r--r--source/blender/editors/interface/resources.c28
-rw-r--r--source/blender/editors/mesh/editmesh_add_gizmo.c138
-rw-r--r--source/blender/editors/mesh/editmesh_bevel.c2
-rw-r--r--source/blender/editors/mesh/editmesh_bisect.c180
-rw-r--r--source/blender/editors/mesh/editmesh_extrude.c120
-rw-r--r--source/blender/editors/mesh/editmesh_extrude_spin.c208
-rw-r--r--source/blender/editors/mesh/editmesh_inset.c2
-rw-r--r--source/blender/editors/mesh/editmesh_polybuild.c2
-rw-r--r--source/blender/editors/mesh/mesh_intern.h4
-rw-r--r--source/blender/editors/mesh/mesh_ops.c2
-rw-r--r--source/blender/editors/screen/area.c4
-rw-r--r--source/blender/editors/screen/screen_edit.c4
-rw-r--r--source/blender/editors/space_api/spacetypes.c28
-rw-r--r--source/blender/editors/space_image/space_image.c40
-rw-r--r--source/blender/editors/space_node/node_draw.c2
-rw-r--r--source/blender/editors/space_node/node_gizmo.c170
-rw-r--r--source/blender/editors/space_node/node_intern.h8
-rw-r--r--source/blender/editors/space_node/space_node.c34
-rw-r--r--source/blender/editors/space_sequencer/sequencer_select.c2
-rw-r--r--source/blender/editors/space_view3d/space_view3d.c70
-rw-r--r--source/blender/editors/space_view3d/view3d_draw.c6
-rw-r--r--source/blender/editors/space_view3d/view3d_edit.c8
-rw-r--r--source/blender/editors/space_view3d/view3d_gizmo_armature.c52
-rw-r--r--source/blender/editors/space_view3d/view3d_gizmo_camera.c156
-rw-r--r--source/blender/editors/space_view3d/view3d_gizmo_empty.c56
-rw-r--r--source/blender/editors/space_view3d/view3d_gizmo_forcefield.c52
-rw-r--r--source/blender/editors/space_view3d/view3d_gizmo_lamp.c128
-rw-r--r--source/blender/editors/space_view3d/view3d_gizmo_navigate.c98
-rw-r--r--source/blender/editors/space_view3d/view3d_gizmo_navigate_type.c34
-rw-r--r--source/blender/editors/space_view3d/view3d_gizmo_ruler.c92
-rw-r--r--source/blender/editors/space_view3d/view3d_header.c6
-rw-r--r--source/blender/editors/space_view3d/view3d_intern.h30
-rw-r--r--source/blender/editors/space_view3d/view3d_ops.c2
-rw-r--r--source/blender/editors/transform/transform.c12
-rw-r--r--source/blender/editors/transform/transform.h6
-rw-r--r--source/blender/editors/transform/transform_conversions.c2
-rw-r--r--source/blender/editors/transform/transform_generics.c6
-rw-r--r--source/blender/editors/transform/transform_gizmo_2d.c150
-rw-r--r--source/blender/editors/transform/transform_gizmo_3d.c336
-rw-r--r--source/blender/editors/transform/transform_ops.c4
61 files changed, 2008 insertions, 2008 deletions
diff --git a/source/blender/editors/gizmo_library/geometry/geom_arrow_gizmo.c b/source/blender/editors/gizmo_library/geometry/geom_arrow_gizmo.c
index e8804238590..11708f5b5ce 100644
--- a/source/blender/editors/gizmo_library/geometry/geom_arrow_gizmo.c
+++ b/source/blender/editors/gizmo_library/geometry/geom_arrow_gizmo.c
@@ -132,7 +132,7 @@ static unsigned short indices[] = {
3, 1, 17,
};
-ManipulatorGeomInfo wm_manipulator_geom_data_arrow = {
+GizmoGeomInfo wm_gizmo_geom_data_arrow = {
.nverts = 25,
.ntris = 46,
.verts = verts,
diff --git a/source/blender/editors/gizmo_library/geometry/geom_cube_gizmo.c b/source/blender/editors/gizmo_library/geometry/geom_cube_gizmo.c
index f2d03821302..28eb772c082 100644
--- a/source/blender/editors/gizmo_library/geometry/geom_cube_gizmo.c
+++ b/source/blender/editors/gizmo_library/geometry/geom_cube_gizmo.c
@@ -66,7 +66,7 @@ static const unsigned short indices[] = {
4, 0, 7,
};
-ManipulatorGeomInfo wm_manipulator_geom_data_cube = {
+GizmoGeomInfo wm_gizmo_geom_data_cube = {
.nverts = 8,
.ntris = 12,
.verts = verts,
diff --git a/source/blender/editors/gizmo_library/geometry/geom_dial_gizmo.c b/source/blender/editors/gizmo_library/geometry/geom_dial_gizmo.c
index bc3fb6fcaff..0225a662ff3 100644
--- a/source/blender/editors/gizmo_library/geometry/geom_dial_gizmo.c
+++ b/source/blender/editors/gizmo_library/geometry/geom_dial_gizmo.c
@@ -804,7 +804,7 @@ static const unsigned short indices[] = {
186, 191, 0,
};
-ManipulatorGeomInfo wm_manipulator_geom_data_dial = {
+GizmoGeomInfo wm_gizmo_geom_data_dial = {
.nverts = 192,
.ntris = 384,
.verts = verts,
diff --git a/source/blender/editors/gizmo_library/gizmo_draw_utils.c b/source/blender/editors/gizmo_library/gizmo_draw_utils.c
index 8ae21f61758..aaaee182c71 100644
--- a/source/blender/editors/gizmo_library/gizmo_draw_utils.c
+++ b/source/blender/editors/gizmo_library/gizmo_draw_utils.c
@@ -50,18 +50,18 @@
#include "WM_api.h"
#include "WM_types.h"
-/* only for own init/exit calls (wm_manipulatortype_init/wm_manipulatortype_free) */
+/* only for own init/exit calls (wm_gizmotype_init/wm_gizmotype_free) */
#include "wm.h"
/* own includes */
#include "gizmo_library_intern.h"
/**
- * Main draw call for ManipulatorGeomInfo data
+ * Main draw call for GizmoGeomInfo data
*/
-void wm_manipulator_geometryinfo_draw(const ManipulatorGeomInfo *info, const bool UNUSED(select), const float color[4])
+void wm_gizmo_geometryinfo_draw(const GizmoGeomInfo *info, const bool UNUSED(select), const float color[4])
{
- /* TODO store the Batches inside the ManipulatorGeomInfo and updated it when geom changes
+ /* TODO store the Batches inside the GizmoGeomInfo and updated it when geom changes
* So we don't need to re-created and discard it every time */
Gwn_VertBuf *vbo;
@@ -108,7 +108,7 @@ void wm_manipulator_geometryinfo_draw(const ManipulatorGeomInfo *info, const boo
GWN_batch_discard(batch);
}
-void wm_manipulator_vec_draw(
+void wm_gizmo_vec_draw(
const float color[4], const float (*verts)[3], uint vert_count,
uint pos, uint primitive_type)
{
diff --git a/source/blender/editors/gizmo_library/gizmo_geometry.h b/source/blender/editors/gizmo_library/gizmo_geometry.h
index de976bbad48..254fb6b0957 100644
--- a/source/blender/editors/gizmo_library/gizmo_geometry.h
+++ b/source/blender/editors/gizmo_library/gizmo_geometry.h
@@ -24,31 +24,31 @@
/** \file gizmo_geometry.h
* \ingroup wm
*
- * \name Manipulator Geometry
+ * \name Gizmo Geometry
*
- * \brief Prototypes for arrays defining the manipulator geometry. The actual definitions can be found in files usually
- * called geom_xxx_manipulator.c
+ * \brief Prototypes for arrays defining the gizmo geometry. The actual definitions can be found in files usually
+ * called geom_xxx_gizmo.c
*/
#ifndef __GIZMO_GEOMETRY_H__
#define __GIZMO_GEOMETRY_H__
-typedef struct ManipulatorGeomInfo {
+typedef struct GizmoGeomInfo {
int nverts;
int ntris;
const float (*verts)[3];
const float (*normals)[3];
const unsigned short *indices;
-} ManipulatorGeomInfo;
+} GizmoGeomInfo;
-/* arrow manipulator */
-extern ManipulatorGeomInfo wm_manipulator_geom_data_arrow;
+/* arrow gizmo */
+extern GizmoGeomInfo wm_gizmo_geom_data_arrow;
-/* cube manipulator */
-extern ManipulatorGeomInfo wm_manipulator_geom_data_cube;
+/* cube gizmo */
+extern GizmoGeomInfo wm_gizmo_geom_data_cube;
-/* dial manipulator */
-extern ManipulatorGeomInfo wm_manipulator_geom_data_dial;
+/* dial gizmo */
+extern GizmoGeomInfo wm_gizmo_geom_data_dial;
#endif /* __GIZMO_GEOMETRY_H__ */
diff --git a/source/blender/editors/gizmo_library/gizmo_library_intern.h b/source/blender/editors/gizmo_library/gizmo_library_intern.h
index 17121d3752e..f1689ee93db 100644
--- a/source/blender/editors/gizmo_library/gizmo_library_intern.h
+++ b/source/blender/editors/gizmo_library/gizmo_library_intern.h
@@ -30,25 +30,25 @@
#ifndef __GIZMO_LIBRARY_INTERN_H__
#define __GIZMO_LIBRARY_INTERN_H__
-/* distance around which manipulators respond to input (and get highlighted) */
-#define MANIPULATOR_HOTSPOT 14.0f
+/* distance around which gizmos respond to input (and get highlighted) */
+#define GIZMO_HOTSPOT 14.0f
/**
- * Data for common interactions. Used in manipulator_library_utils.c functions.
+ * Data for common interactions. Used in gizmo_library_utils.c functions.
*/
-typedef struct ManipulatorCommonData {
+typedef struct GizmoCommonData {
int flag;
float range_fac; /* factor for arrow min/max distance */
float offset;
- /* property range for constrained manipulators */
+ /* property range for constrained gizmos */
float range;
- /* min/max value for constrained manipulators */
+ /* min/max value for constrained gizmos */
float min, max;
-} ManipulatorCommonData;
+} GizmoCommonData;
-typedef struct ManipulatorInteraction {
+typedef struct GizmoInteraction {
float init_value; /* initial property value */
float init_mval[2];
float init_offset;
@@ -60,50 +60,50 @@ typedef struct ManipulatorInteraction {
/* Total offset added by precision tweaking.
* Needed to allow toggling precision on/off without causing jumps */
float precision_offset;
-} ManipulatorInteraction;
+} GizmoInteraction;
-/* ManipulatorCommonData->flag */
+/* GizmoCommonData->flag */
enum {
- MANIPULATOR_CUSTOM_RANGE_SET = (1 << 0),
+ GIZMO_CUSTOM_RANGE_SET = (1 << 0),
};
-float manipulator_offset_from_value(
- ManipulatorCommonData *data, const float value,
+float gizmo_offset_from_value(
+ GizmoCommonData *data, const float value,
const bool constrained, const bool inverted);
-float manipulator_value_from_offset(
- ManipulatorCommonData *data, ManipulatorInteraction *inter, const float offset,
+float gizmo_value_from_offset(
+ GizmoCommonData *data, GizmoInteraction *inter, const float offset,
const bool constrained, const bool inverted, const bool use_precision);
-void manipulator_property_data_update(
- struct wmManipulator *mpr, ManipulatorCommonData *data, wmManipulatorProperty *mpr_prop,
+void gizmo_property_data_update(
+ struct wmGizmo *mpr, GizmoCommonData *data, wmGizmoProperty *mpr_prop,
const bool constrained, const bool inverted);
-void manipulator_property_value_reset(
- bContext *C, const struct wmManipulator *mpr, ManipulatorInteraction *inter, wmManipulatorProperty *mpr_prop);
+void gizmo_property_value_reset(
+ bContext *C, const struct wmGizmo *mpr, GizmoInteraction *inter, wmGizmoProperty *mpr_prop);
/* -------------------------------------------------------------------- */
-void manipulator_color_get(
- const struct wmManipulator *mpr, const bool highlight,
+void gizmo_color_get(
+ const struct wmGizmo *mpr, const bool highlight,
float r_color[4]);
-bool manipulator_window_project_2d(
- bContext *C, const struct wmManipulator *mpr, const float mval[2], int axis, bool use_offset,
+bool gizmo_window_project_2d(
+ bContext *C, const struct wmGizmo *mpr, const float mval[2], int axis, bool use_offset,
float r_co[2]);
-bool manipulator_window_project_3d(
- bContext *C, const struct wmManipulator *mpr, const float mval[2], bool use_offset,
+bool gizmo_window_project_3d(
+ bContext *C, const struct wmGizmo *mpr, const float mval[2], bool use_offset,
float r_co[3]);
/* -------------------------------------------------------------------- */
-/* Manipulator drawing */
+/* Gizmo drawing */
#include "gizmo_geometry.h"
-void wm_manipulator_geometryinfo_draw(const struct ManipulatorGeomInfo *info, const bool select, const float color[4]);
-void wm_manipulator_vec_draw(
+void wm_gizmo_geometryinfo_draw(const struct GizmoGeomInfo *info, const bool select, const float color[4]);
+void wm_gizmo_vec_draw(
const float color[4], const float (*verts)[3], uint vert_count,
uint pos, uint primitive_type);
diff --git a/source/blender/editors/gizmo_library/gizmo_library_presets.c b/source/blender/editors/gizmo_library/gizmo_library_presets.c
index d58e0c9dc85..8a6b92e48d6 100644
--- a/source/blender/editors/gizmo_library/gizmo_library_presets.c
+++ b/source/blender/editors/gizmo_library/gizmo_library_presets.c
@@ -21,9 +21,9 @@
/** \file blender/editors/gizmo_library/gizmo_library_presets.c
* \ingroup wm
*
- * \name Manipulator Lib Presets
+ * \name Gizmo Lib Presets
*
- * \brief Preset shapes that can be drawn from any manipulator type.
+ * \brief Preset shapes that can be drawn from any gizmo type.
*/
#include "MEM_guardedalloc.h"
@@ -57,7 +57,7 @@
#include "ED_gizmo_library.h" /* own include */
#include "gizmo_library_intern.h" /* own include */
-/* TODO, this is to be used by RNA. might move to ED_manipulator_library */
+/* TODO, this is to be used by RNA. might move to ED_gizmo_library */
/**
* Given a single axis, orient the matrix to a different direction.
@@ -80,15 +80,15 @@ static void single_axis_convert(
/**
* Use for all geometry.
*/
-static void ed_manipulator_draw_preset_geometry(
- const struct wmManipulator *mpr, float mat[4][4], int select_id,
- const ManipulatorGeomInfo *info)
+static void ed_gizmo_draw_preset_geometry(
+ const struct wmGizmo *mpr, float mat[4][4], int select_id,
+ const GizmoGeomInfo *info)
{
const bool is_select = (select_id != -1);
- const bool is_highlight = is_select && (mpr->state & WM_MANIPULATOR_STATE_HIGHLIGHT) != 0;
+ const bool is_highlight = is_select && (mpr->state & WM_GIZMO_STATE_HIGHLIGHT) != 0;
float color[4];
- manipulator_color_get(mpr, is_highlight, color);
+ gizmo_color_get(mpr, is_highlight, color);
if (is_select) {
GPU_select_load_id(select_id);
@@ -96,7 +96,7 @@ static void ed_manipulator_draw_preset_geometry(
gpuPushMatrix();
gpuMultMatrix(mat);
- wm_manipulator_geometryinfo_draw(info, is_select, color);
+ wm_gizmo_geometryinfo_draw(info, is_select, color);
gpuPopMatrix();
if (is_select) {
@@ -104,36 +104,36 @@ static void ed_manipulator_draw_preset_geometry(
}
}
-void ED_manipulator_draw_preset_box(
- const struct wmManipulator *mpr, float mat[4][4], int select_id)
+void ED_gizmo_draw_preset_box(
+ const struct wmGizmo *mpr, float mat[4][4], int select_id)
{
- ed_manipulator_draw_preset_geometry(mpr, mat, select_id, &wm_manipulator_geom_data_cube);
+ ed_gizmo_draw_preset_geometry(mpr, mat, select_id, &wm_gizmo_geom_data_cube);
}
-void ED_manipulator_draw_preset_arrow(
- const struct wmManipulator *mpr, float mat[4][4], int axis, int select_id)
+void ED_gizmo_draw_preset_arrow(
+ const struct wmGizmo *mpr, float mat[4][4], int axis, int select_id)
{
float mat_rotate[4][4];
single_axis_convert(OB_POSZ, mat, axis, mat_rotate);
- ed_manipulator_draw_preset_geometry(mpr, mat_rotate, select_id, &wm_manipulator_geom_data_arrow);
+ ed_gizmo_draw_preset_geometry(mpr, mat_rotate, select_id, &wm_gizmo_geom_data_arrow);
}
-void ED_manipulator_draw_preset_circle(
- const struct wmManipulator *mpr, float mat[4][4], int axis, int select_id)
+void ED_gizmo_draw_preset_circle(
+ const struct wmGizmo *mpr, float mat[4][4], int axis, int select_id)
{
float mat_rotate[4][4];
single_axis_convert(OB_POSZ, mat, axis, mat_rotate);
- ed_manipulator_draw_preset_geometry(mpr, mat_rotate, select_id, &wm_manipulator_geom_data_dial);
+ ed_gizmo_draw_preset_geometry(mpr, mat_rotate, select_id, &wm_gizmo_geom_data_dial);
}
-void ED_manipulator_draw_preset_facemap(
- const bContext *C, const struct wmManipulator *mpr, struct Scene *scene, Object *ob, const int facemap, int select_id)
+void ED_gizmo_draw_preset_facemap(
+ const bContext *C, const struct wmGizmo *mpr, struct Scene *scene, Object *ob, const int facemap, int select_id)
{
const bool is_select = (select_id != -1);
- const bool is_highlight = is_select && (mpr->state & WM_MANIPULATOR_STATE_HIGHLIGHT) != 0;
+ const bool is_highlight = is_select && (mpr->state & WM_GIZMO_STATE_HIGHLIGHT) != 0;
float color[4];
- manipulator_color_get(mpr, is_highlight, color);
+ gizmo_color_get(mpr, is_highlight, color);
if (is_select) {
GPU_select_load_id(select_id);
diff --git a/source/blender/editors/gizmo_library/gizmo_library_utils.c b/source/blender/editors/gizmo_library/gizmo_library_utils.c
index 794728dd03c..6e6bc2ed824 100644
--- a/source/blender/editors/gizmo_library/gizmo_library_utils.c
+++ b/source/blender/editors/gizmo_library/gizmo_library_utils.c
@@ -26,9 +26,9 @@
/** \file gizmo_library_utils.c
* \ingroup wm
*
- * \name Manipulator Library Utilities
+ * \name Gizmo Library Utilities
*
- * \brief This file contains functions for common behaviors of manipulators.
+ * \brief This file contains functions for common behaviors of gizmos.
*/
#include "BLI_math.h"
@@ -50,34 +50,34 @@
#include "gizmo_library_intern.h"
/* factor for precision tweaking */
-#define MANIPULATOR_PRECISION_FAC 0.05f
+#define GIZMO_PRECISION_FAC 0.05f
-BLI_INLINE float manipulator_offset_from_value_constr(
+BLI_INLINE float gizmo_offset_from_value_constr(
const float range_fac, const float min, const float range, const float value,
const bool inverted)
{
return inverted ? (range_fac * (min + range - value) / range) : (range_fac * (value / range));
}
-BLI_INLINE float manipulator_value_from_offset_constr(
+BLI_INLINE float gizmo_value_from_offset_constr(
const float range_fac, const float min, const float range, const float value,
const bool inverted)
{
return inverted ? (min + range - (value * range / range_fac)) : (value * range / range_fac);
}
-float manipulator_offset_from_value(
- ManipulatorCommonData *data, const float value, const bool constrained, const bool inverted)
+float gizmo_offset_from_value(
+ GizmoCommonData *data, const float value, const bool constrained, const bool inverted)
{
if (constrained)
- return manipulator_offset_from_value_constr(data->range_fac, data->min, data->range, value, inverted);
+ return gizmo_offset_from_value_constr(data->range_fac, data->min, data->range, value, inverted);
return value;
}
-float manipulator_value_from_offset(
- ManipulatorCommonData *data, ManipulatorInteraction *inter, const float offset,
+float gizmo_value_from_offset(
+ GizmoCommonData *data, GizmoInteraction *inter, const float offset,
const bool constrained, const bool inverted, const bool use_precision)
{
const float max = data->min + data->range;
@@ -88,26 +88,26 @@ float manipulator_value_from_offset(
}
inter->prev_offset = offset;
- float ofs_new = inter->init_offset + offset - inter->precision_offset * (1.0f - MANIPULATOR_PRECISION_FAC);
+ float ofs_new = inter->init_offset + offset - inter->precision_offset * (1.0f - GIZMO_PRECISION_FAC);
float value;
if (constrained) {
- value = manipulator_value_from_offset_constr(data->range_fac, data->min, data->range, ofs_new, inverted);
+ value = gizmo_value_from_offset_constr(data->range_fac, data->min, data->range, ofs_new, inverted);
}
else {
value = ofs_new;
}
/* clamp to custom range */
- if (data->flag & MANIPULATOR_CUSTOM_RANGE_SET) {
+ if (data->flag & GIZMO_CUSTOM_RANGE_SET) {
CLAMP(value, data->min, max);
}
return value;
}
-void manipulator_property_data_update(
- wmManipulator *mpr, ManipulatorCommonData *data, wmManipulatorProperty *mpr_prop,
+void gizmo_property_data_update(
+ wmGizmo *mpr, GizmoCommonData *data, wmGizmoProperty *mpr_prop,
const bool constrained, const bool inverted)
{
if (mpr_prop->custom_func.value_get_fn != NULL) {
@@ -121,12 +121,12 @@ void manipulator_property_data_update(
return;
}
- float value = WM_manipulator_target_property_value_get(mpr, mpr_prop);
+ float value = WM_gizmo_target_property_value_get(mpr, mpr_prop);
if (constrained) {
- if ((data->flag & MANIPULATOR_CUSTOM_RANGE_SET) == 0) {
+ if ((data->flag & GIZMO_CUSTOM_RANGE_SET) == 0) {
float range[2];
- if (WM_manipulator_target_property_range_get(mpr, mpr_prop, range)) {
+ if (WM_gizmo_target_property_range_get(mpr, mpr_prop, range)) {
data->range = range[1] - range[0];
data->min = range[0];
}
@@ -134,27 +134,27 @@ void manipulator_property_data_update(
BLI_assert(0);
}
}
- data->offset = manipulator_offset_from_value_constr(data->range_fac, data->min, data->range, value, inverted);
+ data->offset = gizmo_offset_from_value_constr(data->range_fac, data->min, data->range, value, inverted);
}
else {
data->offset = value;
}
}
-void manipulator_property_value_reset(
- bContext *C, const wmManipulator *mpr, ManipulatorInteraction *inter,
- wmManipulatorProperty *mpr_prop)
+void gizmo_property_value_reset(
+ bContext *C, const wmGizmo *mpr, GizmoInteraction *inter,
+ wmGizmoProperty *mpr_prop)
{
- WM_manipulator_target_property_value_set(C, mpr, mpr_prop, inter->init_value);
+ WM_gizmo_target_property_value_set(C, mpr, mpr_prop, inter->init_value);
}
/* -------------------------------------------------------------------- */
-void manipulator_color_get(
- const wmManipulator *mpr, const bool highlight,
+void gizmo_color_get(
+ const wmGizmo *mpr, const bool highlight,
float r_col[4])
{
- if (highlight && !(mpr->flag & WM_MANIPULATOR_DRAW_HOVER)) {
+ if (highlight && !(mpr->flag & WM_GIZMO_DRAW_HOVER)) {
copy_v4_v4(r_col, mpr->color_hi);
}
else {
@@ -165,26 +165,26 @@ void manipulator_color_get(
/* -------------------------------------------------------------------- */
/**
- * Takes mouse coordinates and returns them in relation to the manipulator.
- * Both 2D & 3D supported, use so we can use 2D manipulators in the 3D view.
+ * Takes mouse coordinates and returns them in relation to the gizmo.
+ * Both 2D & 3D supported, use so we can use 2D gizmos in the 3D view.
*/
-bool manipulator_window_project_2d(
- bContext *C, const struct wmManipulator *mpr, const float mval[2], int axis, bool use_offset,
+bool gizmo_window_project_2d(
+ bContext *C, const struct wmGizmo *mpr, const float mval[2], int axis, bool use_offset,
float r_co[2])
{
float mat[4][4];
{
float mat_identity[4][4];
- struct WM_ManipulatorMatrixParams params = {NULL};
+ struct WM_GizmoMatrixParams params = {NULL};
if (use_offset == false) {
unit_m4(mat_identity);
params.matrix_offset = mat_identity;
}
- WM_manipulator_calc_matrix_final_params(mpr, &params, mat);
+ WM_gizmo_calc_matrix_final_params(mpr, &params, mat);
}
/* rotate mouse in relation to the center and relocate it */
- if (mpr->parent_mgroup->type->flag & WM_MANIPULATORGROUPTYPE_3D) {
+ if (mpr->parent_mgroup->type->flag & WM_GIZMOGROUPTYPE_3D) {
/* For 3d views, transform 2D mouse pos onto plane. */
View3D *v3d = CTX_wm_view3d(C);
ARegion *ar = CTX_wm_region(C);
@@ -220,26 +220,26 @@ bool manipulator_window_project_2d(
}
}
-bool manipulator_window_project_3d(
- bContext *C, const struct wmManipulator *mpr, const float mval[2], bool use_offset,
+bool gizmo_window_project_3d(
+ bContext *C, const struct wmGizmo *mpr, const float mval[2], bool use_offset,
float r_co[3])
{
float mat[4][4];
{
float mat_identity[4][4];
- struct WM_ManipulatorMatrixParams params = {NULL};
+ struct WM_GizmoMatrixParams params = {NULL};
if (use_offset == false) {
unit_m4(mat_identity);
params.matrix_offset = mat_identity;
}
- WM_manipulator_calc_matrix_final_params(mpr, &params, mat);
+ WM_gizmo_calc_matrix_final_params(mpr, &params, mat);
}
- if (mpr->parent_mgroup->type->flag & WM_MANIPULATORGROUPTYPE_3D) {
+ if (mpr->parent_mgroup->type->flag & WM_GIZMOGROUPTYPE_3D) {
View3D *v3d = CTX_wm_view3d(C);
ARegion *ar = CTX_wm_region(C);
/* Note: we might want a custom reference point passed in,
- * instead of the manipulator center. */
+ * instead of the gizmo center. */
ED_view3d_win_to_3d(v3d, ar, mat[3], mval, r_co);
invert_m4(mat);
mul_m4_v3(mat, r_co);
diff --git a/source/blender/editors/gizmo_library/gizmo_types/arrow2d_gizmo.c b/source/blender/editors/gizmo_library/gizmo_types/arrow2d_gizmo.c
index fbb30b95562..dfa2eeeb38b 100644
--- a/source/blender/editors/gizmo_library/gizmo_types/arrow2d_gizmo.c
+++ b/source/blender/editors/gizmo_library/gizmo_types/arrow2d_gizmo.c
@@ -26,9 +26,9 @@
/** \file arrow2d_gizmo.c
* \ingroup wm
*
- * \name 2D Arrow Manipulator
+ * \name 2D Arrow Gizmo
*
- * \brief Simple arrow manipulator which is dragged into a certain direction.
+ * \brief Simple arrow gizmo which is dragged into a certain direction.
*/
#include "BLI_listbase.h"
@@ -61,7 +61,7 @@
#include "../gizmo_library_intern.h"
-static void arrow2d_draw_geom(wmManipulator *mpr, const float matrix[4][4], const float color[4])
+static void arrow2d_draw_geom(wmGizmo *mpr, const float matrix[4][4], const float color[4])
{
const float size = 0.11f;
const float size_breadth = size / 2.0f;
@@ -96,24 +96,24 @@ static void arrow2d_draw_geom(wmManipulator *mpr, const float matrix[4][4], cons
gpuPopMatrix();
}
-static void manipulator_arrow2d_draw(const bContext *UNUSED(C), wmManipulator *mpr)
+static void gizmo_arrow2d_draw(const bContext *UNUSED(C), wmGizmo *mpr)
{
float color[4];
float matrix_final[4][4];
- manipulator_color_get(mpr, mpr->state & WM_MANIPULATOR_STATE_HIGHLIGHT, color);
+ gizmo_color_get(mpr, mpr->state & WM_GIZMO_STATE_HIGHLIGHT, color);
GPU_line_width(mpr->line_width);
- WM_manipulator_calc_matrix_final(mpr, matrix_final);
+ WM_gizmo_calc_matrix_final(mpr, matrix_final);
GPU_blend(true);
arrow2d_draw_geom(mpr, matrix_final, color);
GPU_blend(false);
if (mpr->interaction_data) {
- ManipulatorInteraction *inter = mpr->interaction_data;
+ GizmoInteraction *inter = mpr->interaction_data;
GPU_blend(true);
arrow2d_draw_geom(mpr, inter->init_matrix_final, (const float[4]){0.5f, 0.5f, 0.5f, 0.5f});
@@ -121,26 +121,26 @@ static void manipulator_arrow2d_draw(const bContext *UNUSED(C), wmManipulator *m
}
}
-static void manipulator_arrow2d_setup(wmManipulator *mpr)
+static void gizmo_arrow2d_setup(wmGizmo *mpr)
{
- mpr->flag |= WM_MANIPULATOR_DRAW_MODAL;
+ mpr->flag |= WM_GIZMO_DRAW_MODAL;
}
-static int manipulator_arrow2d_invoke(
- bContext *UNUSED(C), wmManipulator *mpr, const wmEvent *UNUSED(event))
+static int gizmo_arrow2d_invoke(
+ bContext *UNUSED(C), wmGizmo *mpr, const wmEvent *UNUSED(event))
{
- ManipulatorInteraction *inter = MEM_callocN(sizeof(ManipulatorInteraction), __func__);
+ GizmoInteraction *inter = MEM_callocN(sizeof(GizmoInteraction), __func__);
copy_m4_m4(inter->init_matrix_basis, mpr->matrix_basis);
- WM_manipulator_calc_matrix_final(mpr, inter->init_matrix_final);
+ WM_gizmo_calc_matrix_final(mpr, inter->init_matrix_final);
mpr->interaction_data = inter;
return OPERATOR_RUNNING_MODAL;
}
-static int manipulator_arrow2d_test_select(
- bContext *UNUSED(C), wmManipulator *mpr, const wmEvent *event)
+static int gizmo_arrow2d_test_select(
+ bContext *UNUSED(C), wmGizmo *mpr, const wmEvent *event)
{
const float mval[2] = {event->mval[0], event->mval[1]};
const float arrow_length = RNA_float_get(mpr->ptr, "length");
@@ -165,14 +165,14 @@ static int manipulator_arrow2d_test_select(
/* arrow line intersection check */
float isect_1[2], isect_2[2];
const int isect = isect_line_sphere_v2(
- line[0], line[1], mval_local, MANIPULATOR_HOTSPOT + mpr->line_width * 0.5f,
+ line[0], line[1], mval_local, GIZMO_HOTSPOT + mpr->line_width * 0.5f,
isect_1, isect_2);
if (isect > 0) {
float line_ext[2][2]; /* extended line for segment check including hotspot */
copy_v2_v2(line_ext[0], line[0]);
- line_ext[1][0] = line[1][0] + MANIPULATOR_HOTSPOT * ((line[1][0] - line[0][0]) / line_len);
- line_ext[1][1] = line[1][1] + MANIPULATOR_HOTSPOT * ((line[1][1] - line[0][1]) / line_len);
+ line_ext[1][0] = line[1][0] + GIZMO_HOTSPOT * ((line[1][0] - line[0][0]) / line_len);
+ line_ext[1][1] = line[1][1] + GIZMO_HOTSPOT * ((line[1][1] - line[0][1]) / line_len);
const float lambda_1 = line_point_factor_v2(isect_1, line_ext[0], line_ext[1]);
if (isect == 1) {
@@ -193,22 +193,22 @@ static int manipulator_arrow2d_test_select(
}
/* -------------------------------------------------------------------- */
-/** \name 2D Arrow Manipulator API
+/** \name 2D Arrow Gizmo API
*
* \{ */
-static void MANIPULATOR_WT_arrow_2d(wmManipulatorType *wt)
+static void GIZMO_WT_arrow_2d(wmGizmoType *wt)
{
/* identifiers */
- wt->idname = "MANIPULATOR_WT_arrow_2d";
+ wt->idname = "GIZMO_WT_arrow_2d";
/* api callbacks */
- wt->draw = manipulator_arrow2d_draw;
- wt->setup = manipulator_arrow2d_setup;
- wt->invoke = manipulator_arrow2d_invoke;
- wt->test_select = manipulator_arrow2d_test_select;
+ wt->draw = gizmo_arrow2d_draw;
+ wt->setup = gizmo_arrow2d_setup;
+ wt->invoke = gizmo_arrow2d_invoke;
+ wt->test_select = gizmo_arrow2d_test_select;
- wt->struct_size = sizeof(wmManipulator);
+ wt->struct_size = sizeof(wmGizmo);
/* rna */
RNA_def_float(wt->srna, "length", 1.0f, 0.0f, FLT_MAX, "Arrow Line Length", "", 0.0f, FLT_MAX);
@@ -217,9 +217,9 @@ static void MANIPULATOR_WT_arrow_2d(wmManipulatorType *wt)
"Roll", "", DEG2RADF(-360.0f), DEG2RADF(360.0f));
}
-void ED_manipulatortypes_arrow_2d(void)
+void ED_gizmotypes_arrow_2d(void)
{
- WM_manipulatortype_append(MANIPULATOR_WT_arrow_2d);
+ WM_gizmotype_append(GIZMO_WT_arrow_2d);
}
/** \} */
diff --git a/source/blender/editors/gizmo_library/gizmo_types/arrow3d_gizmo.c b/source/blender/editors/gizmo_library/gizmo_types/arrow3d_gizmo.c
index 72b24e03c00..9807a111d26 100644
--- a/source/blender/editors/gizmo_library/gizmo_types/arrow3d_gizmo.c
+++ b/source/blender/editors/gizmo_library/gizmo_types/arrow3d_gizmo.c
@@ -26,15 +26,15 @@
/** \file arrow3d_gizmo.c
* \ingroup wm
*
- * \name Arrow Manipulator
+ * \name Arrow Gizmo
*
- * 3D Manipulator
+ * 3D Gizmo
*
- * \brief Simple arrow manipulator which is dragged into a certain direction.
+ * \brief Simple arrow gizmo which is dragged into a certain direction.
* The arrow head can have varying shapes, e.g. cone, box, etc.
*
* - `matrix[0]` is derived from Y and Z.
- * - `matrix[1]` is 'up' for manipulator types that have an up.
+ * - `matrix[1]` is 'up' for gizmo types that have an up.
* - `matrix[2]` is the arrow direction (for all arrowes).
*/
@@ -69,35 +69,35 @@
#include "../gizmo_geometry.h"
#include "../gizmo_library_intern.h"
-/* to use custom arrows exported to geom_arrow_manipulator.c */
-//#define USE_MANIPULATOR_CUSTOM_ARROWS
+/* to use custom arrows exported to geom_arrow_gizmo.c */
+//#define USE_GIZMO_CUSTOM_ARROWS
-typedef struct ArrowManipulator3D {
- wmManipulator manipulator;
- ManipulatorCommonData data;
-} ArrowManipulator3D;
+typedef struct ArrowGizmo3D {
+ wmGizmo gizmo;
+ GizmoCommonData data;
+} ArrowGizmo3D;
/* -------------------------------------------------------------------- */
-static void manipulator_arrow_matrix_basis_get(const wmManipulator *mpr, float r_matrix[4][4])
+static void gizmo_arrow_matrix_basis_get(const wmGizmo *mpr, float r_matrix[4][4])
{
- ArrowManipulator3D *arrow = (ArrowManipulator3D *)mpr;
+ ArrowGizmo3D *arrow = (ArrowGizmo3D *)mpr;
- copy_m4_m4(r_matrix, arrow->manipulator.matrix_basis);
- madd_v3_v3fl(r_matrix[3], arrow->manipulator.matrix_basis[2], arrow->data.offset);
+ copy_m4_m4(r_matrix, arrow->gizmo.matrix_basis);
+ madd_v3_v3fl(r_matrix[3], arrow->gizmo.matrix_basis[2], arrow->data.offset);
}
-static void arrow_draw_geom(const ArrowManipulator3D *arrow, const bool select, const float color[4])
+static void arrow_draw_geom(const ArrowGizmo3D *arrow, const bool select, const float color[4])
{
uint pos = GWN_vertformat_attr_add(immVertexFormat(), "pos", GWN_COMP_F32, 3, GWN_FETCH_FLOAT);
bool unbind_shader = true;
- const int draw_style = RNA_enum_get(arrow->manipulator.ptr, "draw_style");
- const int draw_options = RNA_enum_get(arrow->manipulator.ptr, "draw_options");
+ const int draw_style = RNA_enum_get(arrow->gizmo.ptr, "draw_style");
+ const int draw_options = RNA_enum_get(arrow->gizmo.ptr, "draw_options");
immBindBuiltinProgram(GPU_SHADER_3D_UNIFORM_COLOR);
- if (draw_style == ED_MANIPULATOR_ARROW_STYLE_CROSS) {
+ if (draw_style == ED_GIZMO_ARROW_STYLE_CROSS) {
immUniformColor4fv(color);
immBegin(GWN_PRIM_LINES, 4);
@@ -107,9 +107,9 @@ static void arrow_draw_geom(const ArrowManipulator3D *arrow, const bool select,
immVertex3f(pos, 0.0f, 1.0f, 0.0f);
immEnd();
}
- else if (draw_style == ED_MANIPULATOR_ARROW_STYLE_CONE) {
+ else if (draw_style == ED_GIZMO_ARROW_STYLE_CONE) {
float aspect[2];
- RNA_float_get_array(arrow->manipulator.ptr, "aspect", aspect);
+ RNA_float_get_array(arrow->gizmo.ptr, "aspect", aspect);
const float unitx = aspect[0];
const float unity = aspect[1];
const float vec[4][3] = {
@@ -119,23 +119,23 @@ static void arrow_draw_geom(const ArrowManipulator3D *arrow, const bool select,
{-unitx, unity, 0},
};
- GPU_line_width(arrow->manipulator.line_width);
- wm_manipulator_vec_draw(color, vec, ARRAY_SIZE(vec), pos, GWN_PRIM_LINE_LOOP);
+ GPU_line_width(arrow->gizmo.line_width);
+ wm_gizmo_vec_draw(color, vec, ARRAY_SIZE(vec), pos, GWN_PRIM_LINE_LOOP);
}
else {
-#ifdef USE_MANIPULATOR_CUSTOM_ARROWS
- wm_manipulator_geometryinfo_draw(&wm_manipulator_geom_data_arrow, select, color);
+#ifdef USE_GIZMO_CUSTOM_ARROWS
+ wm_gizmo_geometryinfo_draw(&wm_gizmo_geom_data_arrow, select, color);
#else
- const float arrow_length = RNA_float_get(arrow->manipulator.ptr, "length");
+ const float arrow_length = RNA_float_get(arrow->gizmo.ptr, "length");
const float vec[2][3] = {
{0.0f, 0.0f, 0.0f},
{0.0f, 0.0f, arrow_length},
};
- if (draw_options & ED_MANIPULATOR_ARROW_DRAW_FLAG_STEM) {
- GPU_line_width(arrow->manipulator.line_width);
- wm_manipulator_vec_draw(color, vec, ARRAY_SIZE(vec), pos, GWN_PRIM_LINE_STRIP);
+ if (draw_options & ED_GIZMO_ARROW_DRAW_FLAG_STEM) {
+ GPU_line_width(arrow->gizmo.line_width);
+ wm_gizmo_vec_draw(color, vec, ARRAY_SIZE(vec), pos, GWN_PRIM_LINE_STRIP);
}
else {
immUniformColor4fv(color);
@@ -145,7 +145,7 @@ static void arrow_draw_geom(const ArrowManipulator3D *arrow, const bool select,
gpuPushMatrix();
- if (draw_style == ED_MANIPULATOR_ARROW_STYLE_BOX) {
+ if (draw_style == ED_GIZMO_ARROW_STYLE_BOX) {
const float size = 0.05f;
/* translate to line end with some extra offset so box starts exactly where line ends */
@@ -156,10 +156,10 @@ static void arrow_draw_geom(const ArrowManipulator3D *arrow, const bool select,
/* draw cube */
immUnbindProgram();
unbind_shader = false;
- wm_manipulator_geometryinfo_draw(&wm_manipulator_geom_data_cube, select, color);
+ wm_gizmo_geometryinfo_draw(&wm_gizmo_geom_data_cube, select, color);
}
else {
- BLI_assert(draw_style == ED_MANIPULATOR_ARROW_STYLE_NORMAL);
+ BLI_assert(draw_style == ED_GIZMO_ARROW_STYLE_NORMAL);
const float len = 0.25f;
const float width = 0.06f;
@@ -172,7 +172,7 @@ static void arrow_draw_geom(const ArrowManipulator3D *arrow, const bool select,
}
gpuPopMatrix();
-#endif /* USE_MANIPULATOR_CUSTOM_ARROWS */
+#endif /* USE_GIZMO_CUSTOM_ARROWS */
}
if (unbind_shader) {
@@ -180,15 +180,15 @@ static void arrow_draw_geom(const ArrowManipulator3D *arrow, const bool select,
}
}
-static void arrow_draw_intern(ArrowManipulator3D *arrow, const bool select, const bool highlight)
+static void arrow_draw_intern(ArrowGizmo3D *arrow, const bool select, const bool highlight)
{
- wmManipulator *mpr = &arrow->manipulator;
+ wmGizmo *mpr = &arrow->gizmo;
float color[4];
float matrix_final[4][4];
- manipulator_color_get(mpr, highlight, color);
+ gizmo_color_get(mpr, highlight, color);
- WM_manipulator_calc_matrix_final(mpr, matrix_final);
+ WM_gizmo_calc_matrix_final(mpr, matrix_final);
gpuPushMatrix();
gpuMultMatrix(matrix_final);
@@ -199,7 +199,7 @@ static void arrow_draw_intern(ArrowManipulator3D *arrow, const bool select, cons
gpuPopMatrix();
if (mpr->interaction_data) {
- ManipulatorInteraction *inter = mpr->interaction_data;
+ GizmoInteraction *inter = mpr->interaction_data;
gpuPushMatrix();
gpuMultMatrix(inter->init_matrix_final);
@@ -213,29 +213,29 @@ static void arrow_draw_intern(ArrowManipulator3D *arrow, const bool select, cons
}
}
-static void manipulator_arrow_draw_select(
- const bContext *UNUSED(C), wmManipulator *mpr,
+static void gizmo_arrow_draw_select(
+ const bContext *UNUSED(C), wmGizmo *mpr,
int select_id)
{
GPU_select_load_id(select_id);
- arrow_draw_intern((ArrowManipulator3D *)mpr, true, false);
+ arrow_draw_intern((ArrowGizmo3D *)mpr, true, false);
}
-static void manipulator_arrow_draw(const bContext *UNUSED(C), wmManipulator *mpr)
+static void gizmo_arrow_draw(const bContext *UNUSED(C), wmGizmo *mpr)
{
- arrow_draw_intern((ArrowManipulator3D *)mpr, false, (mpr->state & WM_MANIPULATOR_STATE_HIGHLIGHT) != 0);
+ arrow_draw_intern((ArrowGizmo3D *)mpr, false, (mpr->state & WM_GIZMO_STATE_HIGHLIGHT) != 0);
}
/**
* Calculate arrow offset independent from prop min value,
* meaning the range will not be offset by min value first.
*/
-static int manipulator_arrow_modal(
- bContext *C, wmManipulator *mpr, const wmEvent *event,
- eWM_ManipulatorTweak tweak_flag)
+static int gizmo_arrow_modal(
+ bContext *C, wmGizmo *mpr, const wmEvent *event,
+ eWM_GizmoFlagTweak tweak_flag)
{
- ArrowManipulator3D *arrow = (ArrowManipulator3D *)mpr;
- ManipulatorInteraction *inter = mpr->interaction_data;
+ ArrowGizmo3D *arrow = (ArrowGizmo3D *)mpr;
+ GizmoInteraction *inter = mpr->interaction_data;
View3D *v3d = CTX_wm_view3d(C);
ARegion *ar = CTX_wm_region(C);
RegionView3D *rv3d = ar->regiondata;
@@ -256,7 +256,7 @@ static int manipulator_arrow_modal(
float arrow_co[3];
float arrow_no[3];
copy_v3_v3(arrow_co, inter->init_matrix_basis[3]);
- normalize_v3_v3(arrow_no, arrow->manipulator.matrix_basis[2]);
+ normalize_v3_v3(arrow_no, arrow->gizmo.matrix_basis[2]);
int ok = 0;
@@ -268,7 +268,7 @@ static int manipulator_arrow_modal(
{
/* Force Y axis if we're view aligned */
if (j == 0) {
- if (RAD2DEGF(acosf(dot_v3v3(proj[j].ray_direction, arrow->manipulator.matrix_basis[2]))) < 5.0f) {
+ if (RAD2DEGF(acosf(dot_v3v3(proj[j].ray_direction, arrow->gizmo.matrix_basis[2]))) < 5.0f) {
normalize_v3_v3(arrow_no, rv3d->viewinv[1]);
}
}
@@ -296,24 +296,24 @@ static int manipulator_arrow_modal(
sub_v3_v3v3(offset, proj[1].location, proj[0].location);
facdir = dot_v3v3(arrow_no, offset) < 0.0f ? -1 : 1;
- ManipulatorCommonData *data = &arrow->data;
+ GizmoCommonData *data = &arrow->data;
const float ofs_new = facdir * len_v3(offset);
- wmManipulatorProperty *mpr_prop = WM_manipulator_target_property_find(mpr, "offset");
+ wmGizmoProperty *mpr_prop = WM_gizmo_target_property_find(mpr, "offset");
/* set the property for the operator and call its modal function */
- if (WM_manipulator_target_property_is_valid(mpr_prop)) {
- const int transform_flag = RNA_enum_get(arrow->manipulator.ptr, "transform");
- const bool constrained = (transform_flag & ED_MANIPULATOR_ARROW_XFORM_FLAG_CONSTRAINED) != 0;
- const bool inverted = (transform_flag & ED_MANIPULATOR_ARROW_XFORM_FLAG_INVERTED) != 0;
- const bool use_precision = (tweak_flag & WM_MANIPULATOR_TWEAK_PRECISE) != 0;
- float value = manipulator_value_from_offset(data, inter, ofs_new, constrained, inverted, use_precision);
-
- WM_manipulator_target_property_value_set(C, mpr, mpr_prop, value);
+ if (WM_gizmo_target_property_is_valid(mpr_prop)) {
+ const int transform_flag = RNA_enum_get(arrow->gizmo.ptr, "transform");
+ const bool constrained = (transform_flag & ED_GIZMO_ARROW_XFORM_FLAG_CONSTRAINED) != 0;
+ const bool inverted = (transform_flag & ED_GIZMO_ARROW_XFORM_FLAG_INVERTED) != 0;
+ const bool use_precision = (tweak_flag & WM_GIZMO_TWEAK_PRECISE) != 0;
+ float value = gizmo_value_from_offset(data, inter, ofs_new, constrained, inverted, use_precision);
+
+ WM_gizmo_target_property_value_set(C, mpr, mpr_prop, value);
/* get clamped value */
- value = WM_manipulator_target_property_value_get(mpr, mpr_prop);
+ value = WM_gizmo_target_property_value_get(mpr, mpr_prop);
- data->offset = manipulator_offset_from_value(data, value, constrained, inverted);
+ data->offset = gizmo_offset_from_value(data, value, constrained, inverted);
}
else {
data->offset = ofs_new;
@@ -326,25 +326,25 @@ static int manipulator_arrow_modal(
return OPERATOR_RUNNING_MODAL;
}
-static void manipulator_arrow_setup(wmManipulator *mpr)
+static void gizmo_arrow_setup(wmGizmo *mpr)
{
- ArrowManipulator3D *arrow = (ArrowManipulator3D *)mpr;
+ ArrowGizmo3D *arrow = (ArrowGizmo3D *)mpr;
- arrow->manipulator.flag |= WM_MANIPULATOR_DRAW_MODAL;
+ arrow->gizmo.flag |= WM_GIZMO_DRAW_MODAL;
arrow->data.range_fac = 1.0f;
}
-static int manipulator_arrow_invoke(
- bContext *UNUSED(C), wmManipulator *mpr, const wmEvent *event)
+static int gizmo_arrow_invoke(
+ bContext *UNUSED(C), wmGizmo *mpr, const wmEvent *event)
{
- ArrowManipulator3D *arrow = (ArrowManipulator3D *)mpr;
- ManipulatorInteraction *inter = MEM_callocN(sizeof(ManipulatorInteraction), __func__);
- wmManipulatorProperty *mpr_prop = WM_manipulator_target_property_find(mpr, "offset");
+ ArrowGizmo3D *arrow = (ArrowGizmo3D *)mpr;
+ GizmoInteraction *inter = MEM_callocN(sizeof(GizmoInteraction), __func__);
+ wmGizmoProperty *mpr_prop = WM_gizmo_target_property_find(mpr, "offset");
- /* Some manipulators don't use properties. */
- if (WM_manipulator_target_property_is_valid(mpr_prop)) {
- inter->init_value = WM_manipulator_target_property_value_get(mpr, mpr_prop);
+ /* Some gizmos don't use properties. */
+ if (WM_gizmo_target_property_is_valid(mpr_prop)) {
+ inter->init_value = WM_gizmo_target_property_value_get(mpr, mpr_prop);
}
inter->init_offset = arrow->data.offset;
@@ -352,126 +352,126 @@ static int manipulator_arrow_invoke(
inter->init_mval[0] = event->mval[0];
inter->init_mval[1] = event->mval[1];
- manipulator_arrow_matrix_basis_get(mpr, inter->init_matrix_basis);
- WM_manipulator_calc_matrix_final(mpr, inter->init_matrix_final);
+ gizmo_arrow_matrix_basis_get(mpr, inter->init_matrix_basis);
+ WM_gizmo_calc_matrix_final(mpr, inter->init_matrix_final);
mpr->interaction_data = inter;
return OPERATOR_RUNNING_MODAL;
}
-static void manipulator_arrow_property_update(wmManipulator *mpr, wmManipulatorProperty *mpr_prop)
+static void gizmo_arrow_property_update(wmGizmo *mpr, wmGizmoProperty *mpr_prop)
{
- ArrowManipulator3D *arrow = (ArrowManipulator3D *)mpr;
- const int transform_flag = RNA_enum_get(arrow->manipulator.ptr, "transform");
- const bool constrained = (transform_flag & ED_MANIPULATOR_ARROW_XFORM_FLAG_CONSTRAINED) != 0;
- const bool inverted = (transform_flag & ED_MANIPULATOR_ARROW_XFORM_FLAG_INVERTED) != 0;
- manipulator_property_data_update(mpr, &arrow->data, mpr_prop, constrained, inverted);
+ ArrowGizmo3D *arrow = (ArrowGizmo3D *)mpr;
+ const int transform_flag = RNA_enum_get(arrow->gizmo.ptr, "transform");
+ const bool constrained = (transform_flag & ED_GIZMO_ARROW_XFORM_FLAG_CONSTRAINED) != 0;
+ const bool inverted = (transform_flag & ED_GIZMO_ARROW_XFORM_FLAG_INVERTED) != 0;
+ gizmo_property_data_update(mpr, &arrow->data, mpr_prop, constrained, inverted);
}
-static void manipulator_arrow_exit(bContext *C, wmManipulator *mpr, const bool cancel)
+static void gizmo_arrow_exit(bContext *C, wmGizmo *mpr, const bool cancel)
{
- ArrowManipulator3D *arrow = (ArrowManipulator3D *)mpr;
- ManipulatorCommonData *data = &arrow->data;
- wmManipulatorProperty *mpr_prop = WM_manipulator_target_property_find(mpr, "offset");
- const bool is_prop_valid = WM_manipulator_target_property_is_valid(mpr_prop);
+ ArrowGizmo3D *arrow = (ArrowGizmo3D *)mpr;
+ GizmoCommonData *data = &arrow->data;
+ wmGizmoProperty *mpr_prop = WM_gizmo_target_property_find(mpr, "offset");
+ const bool is_prop_valid = WM_gizmo_target_property_is_valid(mpr_prop);
if (!cancel) {
/* Assign incase applying the opetration needs an updated offset
* editmesh bisect needs this. */
if (is_prop_valid) {
- data->offset = WM_manipulator_target_property_value_get(mpr, mpr_prop);
+ data->offset = WM_gizmo_target_property_value_get(mpr, mpr_prop);
}
return;
}
- ManipulatorInteraction *inter = mpr->interaction_data;
+ GizmoInteraction *inter = mpr->interaction_data;
if (is_prop_valid) {
- manipulator_property_value_reset(C, mpr, inter, mpr_prop);
+ gizmo_property_value_reset(C, mpr, inter, mpr_prop);
}
data->offset = inter->init_offset;
}
/* -------------------------------------------------------------------- */
-/** \name Arrow Manipulator API
+/** \name Arrow Gizmo API
*
* \{ */
/**
* Define a custom property UI range
*
- * \note Needs to be called before WM_manipulator_target_property_def_rna!
+ * \note Needs to be called before WM_gizmo_target_property_def_rna!
*/
-void ED_manipulator_arrow3d_set_ui_range(wmManipulator *mpr, const float min, const float max)
+void ED_gizmo_arrow3d_set_ui_range(wmGizmo *mpr, const float min, const float max)
{
- ArrowManipulator3D *arrow = (ArrowManipulator3D *)mpr;
+ ArrowGizmo3D *arrow = (ArrowGizmo3D *)mpr;
BLI_assert(min < max);
- BLI_assert(!(WM_manipulator_target_property_is_valid(WM_manipulator_target_property_find(mpr, "offset")) &&
- "Make sure this function is called before WM_manipulator_target_property_def_rna"));
+ BLI_assert(!(WM_gizmo_target_property_is_valid(WM_gizmo_target_property_find(mpr, "offset")) &&
+ "Make sure this function is called before WM_gizmo_target_property_def_rna"));
arrow->data.range = max - min;
arrow->data.min = min;
- arrow->data.flag |= MANIPULATOR_CUSTOM_RANGE_SET;
+ arrow->data.flag |= GIZMO_CUSTOM_RANGE_SET;
}
/**
* Define a custom factor for arrow min/max distance
*
- * \note Needs to be called before WM_manipulator_target_property_def_rna!
+ * \note Needs to be called before WM_gizmo_target_property_def_rna!
*/
-void ED_manipulator_arrow3d_set_range_fac(wmManipulator *mpr, const float range_fac)
+void ED_gizmo_arrow3d_set_range_fac(wmGizmo *mpr, const float range_fac)
{
- ArrowManipulator3D *arrow = (ArrowManipulator3D *)mpr;
- BLI_assert(!(WM_manipulator_target_property_is_valid(WM_manipulator_target_property_find(mpr, "offset")) &&
- "Make sure this function is called before WM_manipulator_target_property_def_rna"));
+ ArrowGizmo3D *arrow = (ArrowGizmo3D *)mpr;
+ BLI_assert(!(WM_gizmo_target_property_is_valid(WM_gizmo_target_property_find(mpr, "offset")) &&
+ "Make sure this function is called before WM_gizmo_target_property_def_rna"));
arrow->data.range_fac = range_fac;
}
-static void MANIPULATOR_WT_arrow_3d(wmManipulatorType *wt)
+static void GIZMO_WT_arrow_3d(wmGizmoType *wt)
{
/* identifiers */
- wt->idname = "MANIPULATOR_WT_arrow_3d";
+ wt->idname = "GIZMO_WT_arrow_3d";
/* api callbacks */
- wt->draw = manipulator_arrow_draw;
- wt->draw_select = manipulator_arrow_draw_select;
- wt->matrix_basis_get = manipulator_arrow_matrix_basis_get;
- wt->modal = manipulator_arrow_modal;
- wt->setup = manipulator_arrow_setup;
- wt->invoke = manipulator_arrow_invoke;
- wt->property_update = manipulator_arrow_property_update;
- wt->exit = manipulator_arrow_exit;
+ wt->draw = gizmo_arrow_draw;
+ wt->draw_select = gizmo_arrow_draw_select;
+ wt->matrix_basis_get = gizmo_arrow_matrix_basis_get;
+ wt->modal = gizmo_arrow_modal;
+ wt->setup = gizmo_arrow_setup;
+ wt->invoke = gizmo_arrow_invoke;
+ wt->property_update = gizmo_arrow_property_update;
+ wt->exit = gizmo_arrow_exit;
- wt->struct_size = sizeof(ArrowManipulator3D);
+ wt->struct_size = sizeof(ArrowGizmo3D);
/* rna */
static EnumPropertyItem rna_enum_draw_style_items[] = {
- {ED_MANIPULATOR_ARROW_STYLE_NORMAL, "NORMAL", 0, "Normal", ""},
- {ED_MANIPULATOR_ARROW_STYLE_CROSS, "CROSS", 0, "Cross", ""},
- {ED_MANIPULATOR_ARROW_STYLE_BOX, "BOX", 0, "Box", ""},
- {ED_MANIPULATOR_ARROW_STYLE_CONE, "CONE", 0, "Cone", ""},
+ {ED_GIZMO_ARROW_STYLE_NORMAL, "NORMAL", 0, "Normal", ""},
+ {ED_GIZMO_ARROW_STYLE_CROSS, "CROSS", 0, "Cross", ""},
+ {ED_GIZMO_ARROW_STYLE_BOX, "BOX", 0, "Box", ""},
+ {ED_GIZMO_ARROW_STYLE_CONE, "CONE", 0, "Cone", ""},
{0, NULL, 0, NULL, NULL}
};
static EnumPropertyItem rna_enum_draw_options_items[] = {
- {ED_MANIPULATOR_ARROW_DRAW_FLAG_STEM, "STEM", 0, "Stem", ""},
+ {ED_GIZMO_ARROW_DRAW_FLAG_STEM, "STEM", 0, "Stem", ""},
{0, NULL, 0, NULL, NULL}
};
static EnumPropertyItem rna_enum_transform_items[] = {
- {ED_MANIPULATOR_ARROW_XFORM_FLAG_INVERTED, "INVERT", 0, "Inverted", ""},
- {ED_MANIPULATOR_ARROW_XFORM_FLAG_CONSTRAINED, "CONSTRAIN", 0, "Constrained", ""},
+ {ED_GIZMO_ARROW_XFORM_FLAG_INVERTED, "INVERT", 0, "Inverted", ""},
+ {ED_GIZMO_ARROW_XFORM_FLAG_CONSTRAINED, "CONSTRAIN", 0, "Constrained", ""},
{0, NULL, 0, NULL, NULL}
};
RNA_def_enum(
wt->srna, "draw_style", rna_enum_draw_style_items,
- ED_MANIPULATOR_ARROW_STYLE_NORMAL,
+ ED_GIZMO_ARROW_STYLE_NORMAL,
"Draw Style", "");
RNA_def_enum_flag(
wt->srna, "draw_options", rna_enum_draw_options_items,
- ED_MANIPULATOR_ARROW_DRAW_FLAG_STEM,
+ ED_GIZMO_ARROW_DRAW_FLAG_STEM,
"Draw Options", "");
RNA_def_enum_flag(
wt->srna, "transform", rna_enum_transform_items,
@@ -481,12 +481,12 @@ static void MANIPULATOR_WT_arrow_3d(wmManipulatorType *wt)
RNA_def_float(wt->srna, "length", 1.0f, 0.0f, FLT_MAX, "Arrow Line Length", "", 0.0f, FLT_MAX);
RNA_def_float_vector(wt->srna, "aspect", 2, NULL, 0, FLT_MAX, "Aspect", "Cone/box style only", 0.0f, FLT_MAX);
- WM_manipulatortype_target_property_def(wt, "offset", PROP_FLOAT, 1);
+ WM_gizmotype_target_property_def(wt, "offset", PROP_FLOAT, 1);
}
-void ED_manipulatortypes_arrow_3d(void)
+void ED_gizmotypes_arrow_3d(void)
{
- WM_manipulatortype_append(MANIPULATOR_WT_arrow_3d);
+ WM_gizmotype_append(GIZMO_WT_arrow_3d);
}
/** \} */
diff --git a/source/blender/editors/gizmo_library/gizmo_types/button2d_gizmo.c b/source/blender/editors/gizmo_library/gizmo_types/button2d_gizmo.c
index 78f374064e6..33639dd7ec7 100644
--- a/source/blender/editors/gizmo_library/gizmo_types/button2d_gizmo.c
+++ b/source/blender/editors/gizmo_library/gizmo_types/button2d_gizmo.c
@@ -21,11 +21,11 @@
/** \file button2d_gizmo.c
* \ingroup wm
*
- * \name Button Manipulator
+ * \name Button Gizmo
*
- * 2D Manipulator, also works in 3D views.
+ * 2D Gizmo, also works in 3D views.
*
- * \brief Single click button action for use in manipulator groups.
+ * \brief Single click button action for use in gizmo groups.
*
* \note Currently only basic icon & vector-shape buttons are supported.
*
@@ -66,20 +66,20 @@
#include "../gizmo_geometry.h"
#include "../gizmo_library_intern.h"
-typedef struct ButtonManipulator2D {
- wmManipulator manipulator;
+typedef struct ButtonGizmo2D {
+ wmGizmo gizmo;
bool is_init;
/* Use an icon or shape */
int icon;
Gwn_Batch *shape_batch[2];
-} ButtonManipulator2D;
+} ButtonGizmo2D;
#define CIRCLE_RESOLUTION 32
/* -------------------------------------------------------------------- */
static void button2d_geom_draw_backdrop(
- const wmManipulator *mpr, const float color[4], const bool select)
+ const wmGizmo *mpr, const float color[4], const bool select)
{
GPU_line_width(mpr->line_width);
@@ -99,10 +99,10 @@ static void button2d_geom_draw_backdrop(
}
static void button2d_draw_intern(
- const bContext *C, wmManipulator *mpr,
+ const bContext *C, wmGizmo *mpr,
const bool select, const bool highlight)
{
- ButtonManipulator2D *button = (ButtonManipulator2D *)mpr;
+ ButtonGizmo2D *button = (ButtonGizmo2D *)mpr;
const int draw_options = RNA_enum_get(mpr->ptr, "draw_options");
if (button->is_init == false) {
@@ -126,16 +126,16 @@ static void button2d_draw_intern(
float color[4];
float matrix_final[4][4];
- manipulator_color_get(mpr, highlight, color);
- WM_manipulator_calc_matrix_final(mpr, matrix_final);
+ gizmo_color_get(mpr, highlight, color);
+ WM_gizmo_calc_matrix_final(mpr, matrix_final);
- bool is_3d = (mpr->parent_mgroup->type->flag & WM_MANIPULATORGROUPTYPE_3D) != 0;
+ bool is_3d = (mpr->parent_mgroup->type->flag & WM_GIZMOGROUPTYPE_3D) != 0;
- if (draw_options & ED_MANIPULATOR_BUTTON_SHOW_HELPLINE) {
+ if (draw_options & ED_GIZMO_BUTTON_SHOW_HELPLINE) {
float matrix_final_no_offset[4][4];
- WM_manipulator_calc_matrix_final_no_offset(mpr, matrix_final_no_offset);
+ WM_gizmo_calc_matrix_final_no_offset(mpr, matrix_final_no_offset);
uint pos = GWN_vertformat_attr_add(immVertexFormat(), "pos", GWN_COMP_F32, 3, GWN_FETCH_FLOAT);
immBindBuiltinProgram(GPU_SHADER_3D_UNIFORM_COLOR);
immUniformColor4fv(color);
@@ -180,7 +180,7 @@ static void button2d_draw_intern(
GWN_batch_uniform_4f(button->shape_batch[i], "color", UNPACK4(color));
GWN_batch_draw(button->shape_batch[i]);
- if (draw_options & ED_MANIPULATOR_BUTTON_SHOW_OUTLINE) {
+ if (draw_options & ED_GIZMO_BUTTON_SHOW_OUTLINE) {
color[0] = 1.0f - color[0];
color[1] = 1.0f - color[1];
color[2] = 1.0f - color[2];
@@ -215,29 +215,29 @@ static void button2d_draw_intern(
}
}
-static void manipulator_button2d_draw_select(const bContext *C, wmManipulator *mpr, int select_id)
+static void gizmo_button2d_draw_select(const bContext *C, wmGizmo *mpr, int select_id)
{
GPU_select_load_id(select_id);
button2d_draw_intern(C, mpr, true, false);
}
-static void manipulator_button2d_draw(const bContext *C, wmManipulator *mpr)
+static void gizmo_button2d_draw(const bContext *C, wmGizmo *mpr)
{
- const bool is_highlight = (mpr->state & WM_MANIPULATOR_STATE_HIGHLIGHT) != 0;
+ const bool is_highlight = (mpr->state & WM_GIZMO_STATE_HIGHLIGHT) != 0;
GPU_blend(true);
button2d_draw_intern(C, mpr, false, is_highlight);
GPU_blend(false);
}
-static int manipulator_button2d_test_select(
- bContext *C, wmManipulator *mpr, const wmEvent *event)
+static int gizmo_button2d_test_select(
+ bContext *C, wmGizmo *mpr, const wmEvent *event)
{
float point_local[2];
if (0) {
/* correct, but unnecessarily slow. */
- if (manipulator_window_project_2d(
+ if (gizmo_window_project_2d(
C, mpr, (const float[2]){UNPACK2(event->mval)}, 2, true, point_local) == false)
{
return -1;
@@ -256,7 +256,7 @@ static int manipulator_button2d_test_select(
return -1;
}
-static int manipulator_button2d_cursor_get(wmManipulator *mpr)
+static int gizmo_button2d_cursor_get(wmGizmo *mpr)
{
if (RNA_boolean_get(mpr->ptr, "show_drag")) {
return BC_NSEW_SCROLLCURSOR;
@@ -264,9 +264,9 @@ static int manipulator_button2d_cursor_get(wmManipulator *mpr)
return CURSOR_STD;
}
-static void manipulator_button2d_free(wmManipulator *mpr)
+static void gizmo_button2d_free(wmGizmo *mpr)
{
- ButtonManipulator2D *shape = (ButtonManipulator2D *)mpr;
+ ButtonGizmo2D *shape = (ButtonGizmo2D *)mpr;
for (uint i = 0; i < ARRAY_SIZE(shape->shape_batch); i++) {
GWN_BATCH_DISCARD_SAFE(shape->shape_batch[i]);
@@ -276,28 +276,28 @@ static void manipulator_button2d_free(wmManipulator *mpr)
/** \} */
/* -------------------------------------------------------------------- */
-/** \name Button Manipulator API
+/** \name Button Gizmo API
*
* \{ */
-static void MANIPULATOR_WT_button_2d(wmManipulatorType *wt)
+static void GIZMO_WT_button_2d(wmGizmoType *wt)
{
/* identifiers */
- wt->idname = "MANIPULATOR_WT_button_2d";
+ wt->idname = "GIZMO_WT_button_2d";
/* api callbacks */
- wt->draw = manipulator_button2d_draw;
- wt->draw_select = manipulator_button2d_draw_select;
- wt->test_select = manipulator_button2d_test_select;
- wt->cursor_get = manipulator_button2d_cursor_get;
- wt->free = manipulator_button2d_free;
+ wt->draw = gizmo_button2d_draw;
+ wt->draw_select = gizmo_button2d_draw_select;
+ wt->test_select = gizmo_button2d_test_select;
+ wt->cursor_get = gizmo_button2d_cursor_get;
+ wt->free = gizmo_button2d_free;
- wt->struct_size = sizeof(ButtonManipulator2D);
+ wt->struct_size = sizeof(ButtonGizmo2D);
/* rna */
static EnumPropertyItem rna_enum_draw_options[] = {
- {ED_MANIPULATOR_BUTTON_SHOW_OUTLINE, "OUTLINE", 0, "Outline", ""},
- {ED_MANIPULATOR_BUTTON_SHOW_HELPLINE, "HELPLINE", 0, "Help Line", ""},
+ {ED_GIZMO_BUTTON_SHOW_OUTLINE, "OUTLINE", 0, "Outline", ""},
+ {ED_GIZMO_BUTTON_SHOW_HELPLINE, "HELPLINE", 0, "Help Line", ""},
{0, NULL, 0, NULL, NULL}
};
PropertyRNA *prop;
@@ -314,9 +314,9 @@ static void MANIPULATOR_WT_button_2d(wmManipulatorType *wt)
RNA_def_boolean(wt->srna, "show_drag", true, "Show Drag", "");
}
-void ED_manipulatortypes_button_2d(void)
+void ED_gizmotypes_button_2d(void)
{
- WM_manipulatortype_append(MANIPULATOR_WT_button_2d);
+ WM_gizmotype_append(GIZMO_WT_button_2d);
}
-/** \} */ // Button Manipulator API
+/** \} */ // Button Gizmo API
diff --git a/source/blender/editors/gizmo_library/gizmo_types/cage2d_gizmo.c b/source/blender/editors/gizmo_library/gizmo_types/cage2d_gizmo.c
index 382733d298f..a037727de58 100644
--- a/source/blender/editors/gizmo_library/gizmo_types/cage2d_gizmo.c
+++ b/source/blender/editors/gizmo_library/gizmo_types/cage2d_gizmo.c
@@ -26,12 +26,12 @@
/** \file cage2d_gizmo.c
* \ingroup wm
*
- * \name Cage Manipulator
+ * \name Cage Gizmo
*
- * 2D Manipulator
+ * 2D Gizmo
*
- * \brief Rectangular manipulator acting as a 'cage' around its content.
- * Interacting scales or translates the manipulator.
+ * \brief Rectangular gizmo acting as a 'cage' around its content.
+ * Interacting scales or translates the gizmo.
*/
#include "MEM_guardedalloc.h"
@@ -64,11 +64,11 @@
/* own includes */
#include "../gizmo_library_intern.h"
-#define MANIPULATOR_RESIZER_SIZE 10.0f
-#define MANIPULATOR_MARGIN_OFFSET_SCALE 1.5f
+#define GIZMO_RESIZER_SIZE 10.0f
+#define GIZMO_MARGIN_OFFSET_SCALE 1.5f
-static void manipulator_calc_rect_view_scale(
- const wmManipulator *mpr, const float dims[2], float scale[2])
+static void gizmo_calc_rect_view_scale(
+ const wmGizmo *mpr, const float dims[2], float scale[2])
{
float matrix_final_no_offset[4][4];
float asp[2] = {1.0f, 1.0f};
@@ -79,7 +79,7 @@ static void manipulator_calc_rect_view_scale(
asp[1] = dims[0] / dims[1];
}
float x_axis[3], y_axis[3];
- WM_manipulator_calc_matrix_final_no_offset(mpr, matrix_final_no_offset);
+ WM_gizmo_calc_matrix_final_no_offset(mpr, matrix_final_no_offset);
mul_v3_mat3_m4v3(x_axis, matrix_final_no_offset, mpr->matrix_offset[0]);
mul_v3_mat3_m4v3(y_axis, matrix_final_no_offset, mpr->matrix_offset[1]);
@@ -90,37 +90,37 @@ static void manipulator_calc_rect_view_scale(
scale[1] = 1.0f / len_v3(y_axis);
}
-static void manipulator_calc_rect_view_margin(
- const wmManipulator *mpr, const float dims[2], float margin[2])
+static void gizmo_calc_rect_view_margin(
+ const wmGizmo *mpr, const float dims[2], float margin[2])
{
float handle_size;
- if (mpr->parent_mgroup->type->flag & WM_MANIPULATORGROUPTYPE_3D) {
+ if (mpr->parent_mgroup->type->flag & WM_GIZMOGROUPTYPE_3D) {
handle_size = 0.15f;
}
else {
- handle_size = MANIPULATOR_RESIZER_SIZE;
+ handle_size = GIZMO_RESIZER_SIZE;
}
handle_size *= mpr->scale_final;
float scale_xy[2];
- manipulator_calc_rect_view_scale(mpr, dims, scale_xy);
+ gizmo_calc_rect_view_scale(mpr, dims, scale_xy);
margin[0] = ((handle_size * scale_xy[0]));
margin[1] = ((handle_size * scale_xy[1]));
}
/* -------------------------------------------------------------------- */
-static void manipulator_rect_pivot_from_scale_part(int part, float r_pt[2], bool r_constrain_axis[2])
+static void gizmo_rect_pivot_from_scale_part(int part, float r_pt[2], bool r_constrain_axis[2])
{
bool x = true, y = true;
switch (part) {
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X: { ARRAY_SET_ITEMS(r_pt, 0.5, 0.0); x = false; break; }
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X: { ARRAY_SET_ITEMS(r_pt, -0.5, 0.0); x = false; break; }
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_Y: { ARRAY_SET_ITEMS(r_pt, 0.0, 0.5); y = false; break; }
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_Y: { ARRAY_SET_ITEMS(r_pt, 0.0, -0.5); y = false; break; }
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X_MIN_Y: { ARRAY_SET_ITEMS(r_pt, 0.5, 0.5); x = y = false; break; }
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X_MAX_Y: { ARRAY_SET_ITEMS(r_pt, 0.5, -0.5); x = y = false; break; }
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X_MIN_Y: { ARRAY_SET_ITEMS(r_pt, -0.5, 0.5); x = y = false; break; }
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X_MAX_Y: { ARRAY_SET_ITEMS(r_pt, -0.5, -0.5); x = y = false; break; }
+ case ED_GIZMO_CAGE2D_PART_SCALE_MIN_X: { ARRAY_SET_ITEMS(r_pt, 0.5, 0.0); x = false; break; }
+ case ED_GIZMO_CAGE2D_PART_SCALE_MAX_X: { ARRAY_SET_ITEMS(r_pt, -0.5, 0.0); x = false; break; }
+ case ED_GIZMO_CAGE2D_PART_SCALE_MIN_Y: { ARRAY_SET_ITEMS(r_pt, 0.0, 0.5); y = false; break; }
+ case ED_GIZMO_CAGE2D_PART_SCALE_MAX_Y: { ARRAY_SET_ITEMS(r_pt, 0.0, -0.5); y = false; break; }
+ case ED_GIZMO_CAGE2D_PART_SCALE_MIN_X_MIN_Y: { ARRAY_SET_ITEMS(r_pt, 0.5, 0.5); x = y = false; break; }
+ case ED_GIZMO_CAGE2D_PART_SCALE_MIN_X_MAX_Y: { ARRAY_SET_ITEMS(r_pt, 0.5, -0.5); x = y = false; break; }
+ case ED_GIZMO_CAGE2D_PART_SCALE_MAX_X_MIN_Y: { ARRAY_SET_ITEMS(r_pt, -0.5, 0.5); x = y = false; break; }
+ case ED_GIZMO_CAGE2D_PART_SCALE_MAX_X_MAX_Y: { ARRAY_SET_ITEMS(r_pt, -0.5, -0.5); x = y = false; break; }
default: BLI_assert(0);
}
r_constrain_axis[0] = x;
@@ -130,7 +130,7 @@ static void manipulator_rect_pivot_from_scale_part(int part, float r_pt[2], bool
/* -------------------------------------------------------------------- */
/** \name Box Draw Style
*
- * Useful for 3D views, see: #ED_MANIPULATOR_CAGE2D_STYLE_BOX
+ * Useful for 3D views, see: #ED_GIZMO_CAGE2D_STYLE_BOX
* \{ */
static void cage2d_draw_box_corners(
@@ -179,7 +179,7 @@ static void cage2d_draw_box_interaction(
Gwn_PrimType prim_type = GWN_PRIM_NONE;
switch (highlighted) {
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X:
+ case ED_GIZMO_CAGE2D_PART_SCALE_MIN_X:
{
rctf r = {
.xmin = -size[0], .xmax = -size[0] + margin[0],
@@ -199,7 +199,7 @@ static void cage2d_draw_box_interaction(
}
break;
}
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X:
+ case ED_GIZMO_CAGE2D_PART_SCALE_MAX_X:
{
rctf r = {
.xmin = size[0] - margin[0], .xmax = size[0],
@@ -219,7 +219,7 @@ static void cage2d_draw_box_interaction(
}
break;
}
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_Y:
+ case ED_GIZMO_CAGE2D_PART_SCALE_MIN_Y:
{
rctf r = {
.xmin = -size[0] + margin[0], .xmax = size[0] - margin[0],
@@ -239,7 +239,7 @@ static void cage2d_draw_box_interaction(
}
break;
}
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_Y:
+ case ED_GIZMO_CAGE2D_PART_SCALE_MAX_Y:
{
rctf r = {
.xmin = -size[0] + margin[0], .xmax = size[0] - margin[0],
@@ -259,7 +259,7 @@ static void cage2d_draw_box_interaction(
}
break;
}
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X_MIN_Y:
+ case ED_GIZMO_CAGE2D_PART_SCALE_MIN_X_MIN_Y:
{
rctf r = {
.xmin = -size[0], .xmax = -size[0] + margin[0],
@@ -279,7 +279,7 @@ static void cage2d_draw_box_interaction(
}
break;
}
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X_MAX_Y:
+ case ED_GIZMO_CAGE2D_PART_SCALE_MIN_X_MAX_Y:
{
rctf r = {
.xmin = -size[0], .xmax = -size[0] + margin[0],
@@ -299,7 +299,7 @@ static void cage2d_draw_box_interaction(
}
break;
}
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X_MIN_Y:
+ case ED_GIZMO_CAGE2D_PART_SCALE_MAX_X_MIN_Y:
{
rctf r = {
.xmin = size[0] - margin[0], .xmax = size[0],
@@ -319,7 +319,7 @@ static void cage2d_draw_box_interaction(
}
break;
}
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X_MAX_Y:
+ case ED_GIZMO_CAGE2D_PART_SCALE_MAX_X_MAX_Y:
{
rctf r = {
.xmin = size[0] - margin[0], .xmax = size[0],
@@ -339,7 +339,7 @@ static void cage2d_draw_box_interaction(
}
break;
}
- case ED_MANIPULATOR_CAGE2D_PART_ROTATE:
+ case ED_GIZMO_CAGE2D_PART_ROTATE:
{
const float rotate_pt[2] = {0.0f, size[1] + margin[1]};
const rctf r_rotate = {
@@ -363,8 +363,8 @@ static void cage2d_draw_box_interaction(
break;
}
- case ED_MANIPULATOR_CAGE2D_PART_TRANSLATE:
- if (draw_options & ED_MANIPULATOR_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE) {
+ case ED_GIZMO_CAGE2D_PART_TRANSLATE:
+ if (draw_options & ED_GIZMO_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE) {
ARRAY_SET_ITEMS(verts[0], -margin[0] / 2, -margin[1] / 2);
ARRAY_SET_ITEMS(verts[1], margin[0] / 2, margin[1] / 2);
ARRAY_SET_ITEMS(verts[2], -margin[0] / 2, margin[1] / 2);
@@ -449,7 +449,7 @@ static void cage2d_draw_box_interaction(
/* -------------------------------------------------------------------- */
/** \name Circle Draw Style
*
- * Useful for 2D views, see: #ED_MANIPULATOR_CAGE2D_STYLE_CIRCLE
+ * Useful for 2D views, see: #ED_GIZMO_CAGE2D_STYLE_CIRCLE
* \{ */
static void imm_draw_point_aspect_2d(
@@ -479,15 +479,15 @@ static void cage2d_draw_circle_wire(
immVertex2f(pos, r->xmin, r->ymax);
immEnd();
- if (transform_flag & ED_MANIPULATOR_CAGE2D_XFORM_FLAG_ROTATE) {
+ if (transform_flag & ED_GIZMO_CAGE2D_XFORM_FLAG_ROTATE) {
immBegin(GWN_PRIM_LINE_LOOP, 2);
immVertex2f(pos, BLI_rctf_cent_x(r), r->ymax);
immVertex2f(pos, BLI_rctf_cent_x(r), r->ymax + margin[1]);
immEnd();
}
- if (transform_flag & ED_MANIPULATOR_CAGE2D_XFORM_FLAG_TRANSLATE) {
- if (draw_options & ED_MANIPULATOR_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE) {
+ if (transform_flag & ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE) {
+ if (draw_options & ED_GIZMO_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE) {
const float rad[2] = {margin[0] / 2, margin[1] / 2};
const float center[2] = {BLI_rctf_cent_x(r), BLI_rctf_cent_y(r)};
@@ -525,8 +525,8 @@ static void cage2d_draw_circle_handles(
imm_draw_point_aspect_2d(pos, r->xmin, r->ymax, rad[0], rad[1], solid);
}
- if (transform_flag & ED_MANIPULATOR_CAGE2D_XFORM_FLAG_ROTATE) {
- const float handle[2] = {BLI_rctf_cent_x(r), r->ymax + (margin[1] * MANIPULATOR_MARGIN_OFFSET_SCALE)};
+ if (transform_flag & ED_GIZMO_CAGE2D_XFORM_FLAG_ROTATE) {
+ const float handle[2] = {BLI_rctf_cent_x(r), r->ymax + (margin[1] * GIZMO_MARGIN_OFFSET_SCALE)};
circle_fn(pos, handle[0], handle[1], rad[0], rad[1], resolu);
}
@@ -535,10 +535,10 @@ static void cage2d_draw_circle_handles(
/** \} */
-static void manipulator_cage2d_draw_intern(
- wmManipulator *mpr, const bool select, const bool highlight, const int select_id)
+static void gizmo_cage2d_draw_intern(
+ wmGizmo *mpr, const bool select, const bool highlight, const int select_id)
{
- // const bool use_clamp = (mpr->parent_mgroup->type->flag & WM_MANIPULATORGROUPTYPE_3D) == 0;
+ // const bool use_clamp = (mpr->parent_mgroup->type->flag & WM_GIZMOGROUPTYPE_3D) == 0;
float dims[2];
RNA_float_get_array(mpr->ptr, "dimensions", dims);
float matrix_final[4][4];
@@ -549,13 +549,13 @@ static void manipulator_cage2d_draw_intern(
const float size_real[2] = {dims[0] / 2.0f, dims[1] / 2.0f};
- WM_manipulator_calc_matrix_final(mpr, matrix_final);
+ WM_gizmo_calc_matrix_final(mpr, matrix_final);
gpuPushMatrix();
gpuMultMatrix(matrix_final);
float margin[2];
- manipulator_calc_rect_view_margin(mpr, dims, margin);
+ gizmo_calc_rect_view_margin(mpr, dims, margin);
/* Handy for quick testing draw (if it's outside bounds). */
if (false) {
@@ -573,17 +573,17 @@ static void manipulator_cage2d_draw_intern(
/* expand for hotspot */
const float size[2] = {size_real[0] + margin[0] / 2, size_real[1] + margin[1] / 2};
- if (transform_flag & ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE) {
+ if (transform_flag & ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE) {
int scale_parts[] = {
- ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X,
- ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X,
- ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_Y,
- ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_Y,
-
- ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X_MIN_Y,
- ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X_MAX_Y,
- ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X_MIN_Y,
- ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X_MAX_Y,
+ ED_GIZMO_CAGE2D_PART_SCALE_MIN_X,
+ ED_GIZMO_CAGE2D_PART_SCALE_MAX_X,
+ ED_GIZMO_CAGE2D_PART_SCALE_MIN_Y,
+ ED_GIZMO_CAGE2D_PART_SCALE_MAX_Y,
+
+ ED_GIZMO_CAGE2D_PART_SCALE_MIN_X_MIN_Y,
+ ED_GIZMO_CAGE2D_PART_SCALE_MIN_X_MAX_Y,
+ ED_GIZMO_CAGE2D_PART_SCALE_MAX_X_MIN_Y,
+ ED_GIZMO_CAGE2D_PART_SCALE_MAX_X_MAX_Y,
};
for (int i = 0; i < ARRAY_SIZE(scale_parts); i++) {
GPU_select_load_id(select_id | scale_parts[i]);
@@ -591,15 +591,15 @@ static void manipulator_cage2d_draw_intern(
mpr->color, scale_parts[i], size, margin, mpr->line_width, true, draw_options);
}
}
- if (transform_flag & ED_MANIPULATOR_CAGE2D_XFORM_FLAG_TRANSLATE) {
- const int transform_part = ED_MANIPULATOR_CAGE2D_PART_TRANSLATE;
+ if (transform_flag & ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE) {
+ const int transform_part = ED_GIZMO_CAGE2D_PART_TRANSLATE;
GPU_select_load_id(select_id | transform_part);
cage2d_draw_box_interaction(
mpr->color, transform_part, size, margin, mpr->line_width, true, draw_options);
}
- if (transform_flag & ED_MANIPULATOR_CAGE2D_XFORM_FLAG_ROTATE) {
+ if (transform_flag & ED_GIZMO_CAGE2D_XFORM_FLAG_ROTATE) {
cage2d_draw_box_interaction(
- mpr->color, ED_MANIPULATOR_CAGE2D_PART_ROTATE, size_real, margin, mpr->line_width, true, draw_options);
+ mpr->color, ED_GIZMO_CAGE2D_PART_ROTATE, size_real, margin, mpr->line_width, true, draw_options);
}
}
else {
@@ -609,22 +609,22 @@ static void manipulator_cage2d_draw_intern(
.xmax = size_real[0],
.ymax = size_real[1],
};
- if (draw_style == ED_MANIPULATOR_CAGE2D_STYLE_BOX) {
- /* corner manipulators */
+ if (draw_style == ED_GIZMO_CAGE2D_STYLE_BOX) {
+ /* corner gizmos */
GPU_line_width(mpr->line_width + 3.0f);
cage2d_draw_box_corners(&r, margin, (const float[3]){0, 0, 0});
- /* corner manipulators */
+ /* corner gizmos */
float color[4];
- manipulator_color_get(mpr, highlight, color);
+ gizmo_color_get(mpr, highlight, color);
GPU_line_width(mpr->line_width);
cage2d_draw_box_corners(&r, margin, color);
bool show = false;
- if (mpr->highlight_part == ED_MANIPULATOR_CAGE2D_PART_TRANSLATE) {
+ if (mpr->highlight_part == ED_GIZMO_CAGE2D_PART_TRANSLATE) {
/* Only show if we're drawing the center handle
* otherwise the entire rectangle is the hotspot. */
- if (draw_options & ED_MANIPULATOR_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE) {
+ if (draw_options & ED_GIZMO_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE) {
show = true;
}
}
@@ -637,14 +637,14 @@ static void manipulator_cage2d_draw_intern(
mpr->color, mpr->highlight_part, size_real, margin, mpr->line_width, false, draw_options);
}
- if (transform_flag & ED_MANIPULATOR_CAGE2D_XFORM_FLAG_ROTATE) {
+ if (transform_flag & ED_GIZMO_CAGE2D_XFORM_FLAG_ROTATE) {
cage2d_draw_box_interaction(
- mpr->color, ED_MANIPULATOR_CAGE2D_PART_ROTATE, size_real, margin, mpr->line_width, false, draw_options);
+ mpr->color, ED_GIZMO_CAGE2D_PART_ROTATE, size_real, margin, mpr->line_width, false, draw_options);
}
}
- else if (draw_style == ED_MANIPULATOR_CAGE2D_STYLE_CIRCLE) {
+ else if (draw_style == ED_GIZMO_CAGE2D_STYLE_CIRCLE) {
float color[4];
- manipulator_color_get(mpr, highlight, color);
+ gizmo_color_get(mpr, highlight, color);
GPU_line_smooth(true);
GPU_blend(true);
@@ -655,7 +655,7 @@ static void manipulator_cage2d_draw_intern(
cage2d_draw_circle_wire(&r, margin, color, transform_flag, draw_options);
- /* corner manipulators */
+ /* corner gizmos */
cage2d_draw_circle_handles(&r, margin, color, transform_flag, true);
cage2d_draw_circle_handles(&r, margin, (const float[3]){0, 0, 0}, transform_flag, false);
@@ -674,74 +674,74 @@ static void manipulator_cage2d_draw_intern(
/**
* For when we want to draw 2d cage in 3d views.
*/
-static void manipulator_cage2d_draw_select(const bContext *UNUSED(C), wmManipulator *mpr, int select_id)
+static void gizmo_cage2d_draw_select(const bContext *UNUSED(C), wmGizmo *mpr, int select_id)
{
- manipulator_cage2d_draw_intern(mpr, true, false, select_id);
+ gizmo_cage2d_draw_intern(mpr, true, false, select_id);
}
-static void manipulator_cage2d_draw(const bContext *UNUSED(C), wmManipulator *mpr)
+static void gizmo_cage2d_draw(const bContext *UNUSED(C), wmGizmo *mpr)
{
- const bool is_highlight = (mpr->state & WM_MANIPULATOR_STATE_HIGHLIGHT) != 0;
- manipulator_cage2d_draw_intern(mpr, false, is_highlight, -1);
+ const bool is_highlight = (mpr->state & WM_GIZMO_STATE_HIGHLIGHT) != 0;
+ gizmo_cage2d_draw_intern(mpr, false, is_highlight, -1);
}
-static int manipulator_cage2d_get_cursor(wmManipulator *mpr)
+static int gizmo_cage2d_get_cursor(wmGizmo *mpr)
{
int highlight_part = mpr->highlight_part;
- if (mpr->parent_mgroup->type->flag & WM_MANIPULATORGROUPTYPE_3D) {
+ if (mpr->parent_mgroup->type->flag & WM_GIZMOGROUPTYPE_3D) {
return BC_NSEW_SCROLLCURSOR;
}
switch (highlight_part) {
- case ED_MANIPULATOR_CAGE2D_PART_TRANSLATE:
+ case ED_GIZMO_CAGE2D_PART_TRANSLATE:
return BC_NSEW_SCROLLCURSOR;
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X:
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X:
+ case ED_GIZMO_CAGE2D_PART_SCALE_MIN_X:
+ case ED_GIZMO_CAGE2D_PART_SCALE_MAX_X:
return CURSOR_X_MOVE;
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_Y:
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_Y:
+ case ED_GIZMO_CAGE2D_PART_SCALE_MIN_Y:
+ case ED_GIZMO_CAGE2D_PART_SCALE_MAX_Y:
return CURSOR_Y_MOVE;
/* TODO diagonal cursor */
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X_MIN_Y:
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X_MIN_Y:
+ case ED_GIZMO_CAGE2D_PART_SCALE_MIN_X_MIN_Y:
+ case ED_GIZMO_CAGE2D_PART_SCALE_MAX_X_MIN_Y:
return BC_NSEW_SCROLLCURSOR;
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X_MAX_Y:
- case ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X_MAX_Y:
+ case ED_GIZMO_CAGE2D_PART_SCALE_MIN_X_MAX_Y:
+ case ED_GIZMO_CAGE2D_PART_SCALE_MAX_X_MAX_Y:
return BC_NSEW_SCROLLCURSOR;
- case ED_MANIPULATOR_CAGE2D_PART_ROTATE:
+ case ED_GIZMO_CAGE2D_PART_ROTATE:
return BC_CROSSCURSOR;
default:
return CURSOR_STD;
}
}
-static int manipulator_cage2d_test_select(
- bContext *C, wmManipulator *mpr, const wmEvent *event)
+static int gizmo_cage2d_test_select(
+ bContext *C, wmGizmo *mpr, const wmEvent *event)
{
float point_local[2];
float dims[2];
RNA_float_get_array(mpr->ptr, "dimensions", dims);
const float size_real[2] = {dims[0] / 2.0f, dims[1] / 2.0f};
- if (manipulator_window_project_2d(
+ if (gizmo_window_project_2d(
C, mpr, (const float[2]){UNPACK2(event->mval)}, 2, true, point_local) == false)
{
return -1;
}
float margin[2];
- manipulator_calc_rect_view_margin(mpr, dims, margin);
+ gizmo_calc_rect_view_margin(mpr, dims, margin);
/* expand for hotspot */
const float size[2] = {size_real[0] + margin[0] / 2, size_real[1] + margin[1] / 2};
const int transform_flag = RNA_enum_get(mpr->ptr, "transform");
const int draw_options = RNA_enum_get(mpr->ptr, "draw_options");
- if (transform_flag & ED_MANIPULATOR_CAGE2D_XFORM_FLAG_TRANSLATE) {
+ if (transform_flag & ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE) {
rctf r;
- if (draw_options & ED_MANIPULATOR_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE) {
+ if (draw_options & ED_GIZMO_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE) {
r.xmin = -margin[0] / 2;
r.ymin = -margin[1] / 2;
r.xmax = margin[0] / 2;
@@ -755,12 +755,12 @@ static int manipulator_cage2d_test_select(
};
bool isect = BLI_rctf_isect_pt_v(&r, point_local);
if (isect) {
- return ED_MANIPULATOR_CAGE2D_PART_TRANSLATE;
+ return ED_GIZMO_CAGE2D_PART_TRANSLATE;
}
}
- /* if manipulator does not have a scale intersection, don't do it */
- if (transform_flag & (ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE | ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE_UNIFORM)) {
+ /* if gizmo does not have a scale intersection, don't do it */
+ if (transform_flag & (ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE | ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE_UNIFORM)) {
const rctf r_xmin = {.xmin = -size[0], .ymin = -size[1], .xmax = -size[0] + margin[0], .ymax = size[1]};
const rctf r_xmax = {.xmin = size[0] - margin[0], .ymin = -size[1], .xmax = size[0], .ymax = size[1]};
const rctf r_ymin = {.xmin = -size[0], .ymin = -size[1], .xmax = size[0], .ymax = -size[1] + margin[1]};
@@ -768,37 +768,37 @@ static int manipulator_cage2d_test_select(
if (BLI_rctf_isect_pt_v(&r_xmin, point_local)) {
if (BLI_rctf_isect_pt_v(&r_ymin, point_local)) {
- return ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X_MIN_Y;
+ return ED_GIZMO_CAGE2D_PART_SCALE_MIN_X_MIN_Y;
}
if (BLI_rctf_isect_pt_v(&r_ymax, point_local)) {
- return ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X_MAX_Y;
+ return ED_GIZMO_CAGE2D_PART_SCALE_MIN_X_MAX_Y;
}
- return ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X;
+ return ED_GIZMO_CAGE2D_PART_SCALE_MIN_X;
}
if (BLI_rctf_isect_pt_v(&r_xmax, point_local)) {
if (BLI_rctf_isect_pt_v(&r_ymin, point_local)) {
- return ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X_MIN_Y;
+ return ED_GIZMO_CAGE2D_PART_SCALE_MAX_X_MIN_Y;
}
if (BLI_rctf_isect_pt_v(&r_ymax, point_local)) {
- return ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X_MAX_Y;
+ return ED_GIZMO_CAGE2D_PART_SCALE_MAX_X_MAX_Y;
}
- return ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X;
+ return ED_GIZMO_CAGE2D_PART_SCALE_MAX_X;
}
if (BLI_rctf_isect_pt_v(&r_ymin, point_local)) {
- return ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_Y;
+ return ED_GIZMO_CAGE2D_PART_SCALE_MIN_Y;
}
if (BLI_rctf_isect_pt_v(&r_ymax, point_local)) {
- return ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_Y;
+ return ED_GIZMO_CAGE2D_PART_SCALE_MAX_Y;
}
}
- if (transform_flag & ED_MANIPULATOR_CAGE2D_XFORM_FLAG_ROTATE) {
+ if (transform_flag & ED_GIZMO_CAGE2D_XFORM_FLAG_ROTATE) {
/* Rotate:
* (*) <-- hot spot is here!
* +---+
* | |
* +---+ */
- const float r_rotate_pt[2] = {0.0f, size_real[1] + (margin[1] * MANIPULATOR_MARGIN_OFFSET_SCALE)};
+ const float r_rotate_pt[2] = {0.0f, size_real[1] + (margin[1] * GIZMO_MARGIN_OFFSET_SCALE)};
const rctf r_rotate = {
.xmin = r_rotate_pt[0] - margin[0] / 2.0f,
.xmax = r_rotate_pt[0] + margin[0] / 2.0f,
@@ -807,7 +807,7 @@ static int manipulator_cage2d_test_select(
};
if (BLI_rctf_isect_pt_v(&r_rotate, point_local)) {
- return ED_MANIPULATOR_CAGE2D_PART_ROTATE;
+ return ED_GIZMO_CAGE2D_PART_ROTATE;
}
}
@@ -821,20 +821,20 @@ typedef struct RectTransformInteraction {
Dial *dial;
} RectTransformInteraction;
-static void manipulator_cage2d_setup(wmManipulator *mpr)
+static void gizmo_cage2d_setup(wmGizmo *mpr)
{
- mpr->flag |= WM_MANIPULATOR_DRAW_MODAL | WM_MANIPULATOR_DRAW_NO_SCALE;
+ mpr->flag |= WM_GIZMO_DRAW_MODAL | WM_GIZMO_DRAW_NO_SCALE;
}
-static int manipulator_cage2d_invoke(
- bContext *C, wmManipulator *mpr, const wmEvent *event)
+static int gizmo_cage2d_invoke(
+ bContext *C, wmGizmo *mpr, const wmEvent *event)
{
RectTransformInteraction *data = MEM_callocN(sizeof(RectTransformInteraction), "cage_interaction");
copy_m4_m4(data->orig_matrix_offset, mpr->matrix_offset);
- WM_manipulator_calc_matrix_final_no_offset(mpr, data->orig_matrix_final_no_offset);
+ WM_gizmo_calc_matrix_final_no_offset(mpr, data->orig_matrix_final_no_offset);
- if (manipulator_window_project_2d(
+ if (gizmo_window_project_2d(
C, mpr, (const float[2]){UNPACK2(event->mval)}, 2, false, data->orig_mouse) == 0)
{
zero_v2(data->orig_mouse);
@@ -845,9 +845,9 @@ static int manipulator_cage2d_invoke(
return OPERATOR_RUNNING_MODAL;
}
-static int manipulator_cage2d_modal(
- bContext *C, wmManipulator *mpr, const wmEvent *event,
- eWM_ManipulatorTweak UNUSED(tweak_flag))
+static int gizmo_cage2d_modal(
+ bContext *C, wmGizmo *mpr, const wmEvent *event,
+ eWM_GizmoFlagTweak UNUSED(tweak_flag))
{
/* For transform logic to be managable we operate in -0.5..0.5 2D space,
* no matter the size of the rectangle, mouse coorts are scaled to unit space.
@@ -867,7 +867,7 @@ static int manipulator_cage2d_modal(
copy_m4_m4(matrix_back, mpr->matrix_offset);
copy_m4_m4(mpr->matrix_offset, data->orig_matrix_offset);
- bool ok = manipulator_window_project_2d(
+ bool ok = gizmo_window_project_2d(
C, mpr, (const float[2]){UNPACK2(event->mval)}, 2, false, point_local);
copy_m4_m4(mpr->matrix_offset, matrix_back);
if (!ok) {
@@ -876,20 +876,20 @@ static int manipulator_cage2d_modal(
}
const int transform_flag = RNA_enum_get(mpr->ptr, "transform");
- wmManipulatorProperty *mpr_prop;
+ wmGizmoProperty *mpr_prop;
- mpr_prop = WM_manipulator_target_property_find(mpr, "matrix");
+ mpr_prop = WM_gizmo_target_property_find(mpr, "matrix");
if (mpr_prop->type != NULL) {
- WM_manipulator_target_property_value_get_array(mpr, mpr_prop, &mpr->matrix_offset[0][0]);
+ WM_gizmo_target_property_value_get_array(mpr, mpr_prop, &mpr->matrix_offset[0][0]);
}
- if (mpr->highlight_part == ED_MANIPULATOR_CAGE2D_PART_TRANSLATE) {
+ if (mpr->highlight_part == ED_GIZMO_CAGE2D_PART_TRANSLATE) {
/* do this to prevent clamping from changing size */
copy_m4_m4(mpr->matrix_offset, data->orig_matrix_offset);
mpr->matrix_offset[3][0] = data->orig_matrix_offset[3][0] + (point_local[0] - data->orig_mouse[0]);
mpr->matrix_offset[3][1] = data->orig_matrix_offset[3][1] + (point_local[1] - data->orig_mouse[1]);
}
- else if (mpr->highlight_part == ED_MANIPULATOR_CAGE2D_PART_ROTATE) {
+ else if (mpr->highlight_part == ED_GIZMO_CAGE2D_PART_ROTATE) {
#define MUL_V2_V3_M4_FINAL(test_co, mouse_co) \
mul_v3_m4v3(test_co, data->orig_matrix_final_no_offset, ((const float[3]){UNPACK2(mouse_co), 0.0}))
@@ -935,8 +935,8 @@ static int manipulator_cage2d_modal(
float pivot[2];
bool constrain_axis[2] = {false};
- if (transform_flag & ED_MANIPULATOR_CAGE2D_XFORM_FLAG_TRANSLATE) {
- manipulator_rect_pivot_from_scale_part(mpr->highlight_part, pivot, constrain_axis);
+ if (transform_flag & ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE) {
+ gizmo_rect_pivot_from_scale_part(mpr->highlight_part, pivot, constrain_axis);
}
else {
zero_v2(pivot);
@@ -960,7 +960,7 @@ static int manipulator_cage2d_modal(
scale[i] = 1.0f + ((delta_curr[i] - delta_orig[i]) / len_v3(data->orig_matrix_offset[i]));
- if ((transform_flag & ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE_SIGNED) == 0) {
+ if ((transform_flag & ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE_SIGNED) == 0) {
if (sign != signum_i(scale[i])) {
scale[i] = 0.0f;
}
@@ -968,7 +968,7 @@ static int manipulator_cage2d_modal(
}
}
- if (transform_flag & ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE_UNIFORM) {
+ if (transform_flag & ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE_UNIFORM) {
if (constrain_axis[0] == false && constrain_axis[1] == false) {
scale[1] = scale[0] = (scale[1] + scale[0]) / 2.0f;
}
@@ -995,7 +995,7 @@ static int manipulator_cage2d_modal(
}
if (mpr_prop->type != NULL) {
- WM_manipulator_target_property_value_set_array(C, mpr, mpr_prop, &mpr->matrix_offset[0][0]);
+ WM_gizmo_target_property_value_set_array(C, mpr, mpr_prop, &mpr->matrix_offset[0][0]);
}
/* tag the region for redraw */
@@ -1005,11 +1005,11 @@ static int manipulator_cage2d_modal(
return OPERATOR_RUNNING_MODAL;
}
-static void manipulator_cage2d_property_update(wmManipulator *mpr, wmManipulatorProperty *mpr_prop)
+static void gizmo_cage2d_property_update(wmGizmo *mpr, wmGizmoProperty *mpr_prop)
{
if (STREQ(mpr_prop->type->idname, "matrix")) {
- if (WM_manipulator_target_property_array_length(mpr, mpr_prop) == 16) {
- WM_manipulator_target_property_value_get_array(mpr, mpr_prop, &mpr->matrix_offset[0][0]);
+ if (WM_gizmo_target_property_array_length(mpr, mpr_prop) == 16) {
+ WM_gizmo_target_property_value_get_array(mpr, mpr_prop, &mpr->matrix_offset[0][0]);
}
else {
BLI_assert(0);
@@ -1020,7 +1020,7 @@ static void manipulator_cage2d_property_update(wmManipulator *mpr, wmManipulator
}
}
-static void manipulator_cage2d_exit(bContext *C, wmManipulator *mpr, const bool cancel)
+static void gizmo_cage2d_exit(bContext *C, wmGizmo *mpr, const bool cancel)
{
RectTransformInteraction *data = mpr->interaction_data;
@@ -1029,12 +1029,12 @@ static void manipulator_cage2d_exit(bContext *C, wmManipulator *mpr, const bool
if (!cancel)
return;
- wmManipulatorProperty *mpr_prop;
+ wmGizmoProperty *mpr_prop;
/* reset properties */
- mpr_prop = WM_manipulator_target_property_find(mpr, "matrix");
+ mpr_prop = WM_gizmo_target_property_find(mpr, "matrix");
if (mpr_prop->type != NULL) {
- WM_manipulator_target_property_value_set_array(C, mpr, mpr_prop, &data->orig_matrix_offset[0][0]);
+ WM_gizmo_target_property_value_set_array(C, mpr, mpr_prop, &data->orig_matrix_offset[0][0]);
}
copy_m4_m4(mpr->matrix_offset, data->orig_matrix_offset);
@@ -1042,59 +1042,59 @@ static void manipulator_cage2d_exit(bContext *C, wmManipulator *mpr, const bool
/* -------------------------------------------------------------------- */
-/** \name Cage Manipulator API
+/** \name Cage Gizmo API
*
* \{ */
-static void MANIPULATOR_WT_cage_2d(wmManipulatorType *wt)
+static void GIZMO_WT_cage_2d(wmGizmoType *wt)
{
/* identifiers */
- wt->idname = "MANIPULATOR_WT_cage_2d";
+ wt->idname = "GIZMO_WT_cage_2d";
/* api callbacks */
- wt->draw = manipulator_cage2d_draw;
- wt->draw_select = manipulator_cage2d_draw_select;
- wt->test_select = manipulator_cage2d_test_select;
- wt->setup = manipulator_cage2d_setup;
- wt->invoke = manipulator_cage2d_invoke;
- wt->property_update = manipulator_cage2d_property_update;
- wt->modal = manipulator_cage2d_modal;
- wt->exit = manipulator_cage2d_exit;
- wt->cursor_get = manipulator_cage2d_get_cursor;
-
- wt->struct_size = sizeof(wmManipulator);
+ wt->draw = gizmo_cage2d_draw;
+ wt->draw_select = gizmo_cage2d_draw_select;
+ wt->test_select = gizmo_cage2d_test_select;
+ wt->setup = gizmo_cage2d_setup;
+ wt->invoke = gizmo_cage2d_invoke;
+ wt->property_update = gizmo_cage2d_property_update;
+ wt->modal = gizmo_cage2d_modal;
+ wt->exit = gizmo_cage2d_exit;
+ wt->cursor_get = gizmo_cage2d_get_cursor;
+
+ wt->struct_size = sizeof(wmGizmo);
/* rna */
static EnumPropertyItem rna_enum_draw_style[] = {
- {ED_MANIPULATOR_CAGE2D_STYLE_BOX, "BOX", 0, "Box", ""},
- {ED_MANIPULATOR_CAGE2D_STYLE_CIRCLE, "CIRCLE", 0, "Circle", ""},
+ {ED_GIZMO_CAGE2D_STYLE_BOX, "BOX", 0, "Box", ""},
+ {ED_GIZMO_CAGE2D_STYLE_CIRCLE, "CIRCLE", 0, "Circle", ""},
{0, NULL, 0, NULL, NULL}
};
static EnumPropertyItem rna_enum_transform[] = {
- {ED_MANIPULATOR_CAGE2D_XFORM_FLAG_TRANSLATE, "TRANSLATE", 0, "Translate", ""},
- {ED_MANIPULATOR_CAGE2D_XFORM_FLAG_ROTATE, "ROTATE", 0, "Rotate", ""},
- {ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE, "SCALE", 0, "Scale", ""},
- {ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE_UNIFORM, "SCALE_UNIFORM", 0, "Scale Uniform", ""},
+ {ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE, "TRANSLATE", 0, "Translate", ""},
+ {ED_GIZMO_CAGE2D_XFORM_FLAG_ROTATE, "ROTATE", 0, "Rotate", ""},
+ {ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE, "SCALE", 0, "Scale", ""},
+ {ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE_UNIFORM, "SCALE_UNIFORM", 0, "Scale Uniform", ""},
{0, NULL, 0, NULL, NULL}
};
static EnumPropertyItem rna_enum_draw_options[] = {
- {ED_MANIPULATOR_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE, "XFORM_CENTER_HANDLE", 0, "Center Handle", ""},
+ {ED_GIZMO_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE, "XFORM_CENTER_HANDLE", 0, "Center Handle", ""},
{0, NULL, 0, NULL, NULL}
};
static float unit_v2[2] = {1.0f, 1.0f};
RNA_def_float_vector(wt->srna, "dimensions", 2, unit_v2, 0, FLT_MAX, "Dimensions", "", 0.0f, FLT_MAX);
RNA_def_enum_flag(wt->srna, "transform", rna_enum_transform, 0, "Transform Options", "");
- RNA_def_enum(wt->srna, "draw_style", rna_enum_draw_style, ED_MANIPULATOR_CAGE2D_STYLE_CIRCLE, "Draw Style", "");
+ RNA_def_enum(wt->srna, "draw_style", rna_enum_draw_style, ED_GIZMO_CAGE2D_STYLE_CIRCLE, "Draw Style", "");
RNA_def_enum_flag(
wt->srna, "draw_options", rna_enum_draw_options,
- ED_MANIPULATOR_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE, "Draw Options", "");
+ ED_GIZMO_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE, "Draw Options", "");
- WM_manipulatortype_target_property_def(wt, "matrix", PROP_FLOAT, 16);
+ WM_gizmotype_target_property_def(wt, "matrix", PROP_FLOAT, 16);
}
-void ED_manipulatortypes_cage_2d(void)
+void ED_gizmotypes_cage_2d(void)
{
- WM_manipulatortype_append(MANIPULATOR_WT_cage_2d);
+ WM_gizmotype_append(GIZMO_WT_cage_2d);
}
/** \} */
diff --git a/source/blender/editors/gizmo_library/gizmo_types/cage3d_gizmo.c b/source/blender/editors/gizmo_library/gizmo_types/cage3d_gizmo.c
index 0f3e67d7585..e266514855b 100644
--- a/source/blender/editors/gizmo_library/gizmo_types/cage3d_gizmo.c
+++ b/source/blender/editors/gizmo_library/gizmo_types/cage3d_gizmo.c
@@ -26,12 +26,12 @@
/** \file cage3d_gizmo.c
* \ingroup wm
*
- * \name Cage Manipulator
+ * \name Cage Gizmo
*
- * 2D Manipulator
+ * 2D Gizmo
*
- * \brief Rectangular manipulator acting as a 'cage' around its content.
- * Interacting scales or translates the manipulator.
+ * \brief Rectangular gizmo acting as a 'cage' around its content.
+ * Interacting scales or translates the gizmo.
*/
#include "MEM_guardedalloc.h"
@@ -63,24 +63,24 @@
/* own includes */
#include "../gizmo_library_intern.h"
-#define MANIPULATOR_RESIZER_SIZE 10.0f
-#define MANIPULATOR_MARGIN_OFFSET_SCALE 1.5f
+#define GIZMO_RESIZER_SIZE 10.0f
+#define GIZMO_MARGIN_OFFSET_SCALE 1.5f
-static void manipulator_calc_matrix_final_no_offset(
- const wmManipulator *mpr, float orig_matrix_final_no_offset[4][4], bool use_space)
+static void gizmo_calc_matrix_final_no_offset(
+ const wmGizmo *mpr, float orig_matrix_final_no_offset[4][4], bool use_space)
{
float mat_identity[4][4];
- struct WM_ManipulatorMatrixParams params = {NULL};
+ struct WM_GizmoMatrixParams params = {NULL};
unit_m4(mat_identity);
if (use_space == false) {
params.matrix_basis = mat_identity;
}
params.matrix_offset = mat_identity;
- WM_manipulator_calc_matrix_final_params(mpr, &params, orig_matrix_final_no_offset);
+ WM_gizmo_calc_matrix_final_params(mpr, &params, orig_matrix_final_no_offset);
}
-static void manipulator_calc_rect_view_scale(
- const wmManipulator *mpr, const float dims[3], float scale[3])
+static void gizmo_calc_rect_view_scale(
+ const wmGizmo *mpr, const float dims[3], float scale[3])
{
UNUSED_VARS(dims);
@@ -88,7 +88,7 @@ static void manipulator_calc_rect_view_scale(
float matrix_final_no_offset[4][4];
float x_axis[3], y_axis[3], z_axis[3];
- manipulator_calc_matrix_final_no_offset(mpr, matrix_final_no_offset, false);
+ gizmo_calc_matrix_final_no_offset(mpr, matrix_final_no_offset, false);
mul_v3_mat3_m4v3(x_axis, matrix_final_no_offset, mpr->matrix_offset[0]);
mul_v3_mat3_m4v3(y_axis, matrix_final_no_offset, mpr->matrix_offset[1]);
mul_v3_mat3_m4v3(z_axis, matrix_final_no_offset, mpr->matrix_offset[2]);
@@ -98,21 +98,21 @@ static void manipulator_calc_rect_view_scale(
scale[2] = 1.0f / len_v3(z_axis);
}
-static void manipulator_calc_rect_view_margin(
- const wmManipulator *mpr, const float dims[3], float margin[3])
+static void gizmo_calc_rect_view_margin(
+ const wmGizmo *mpr, const float dims[3], float margin[3])
{
float handle_size;
- if (mpr->parent_mgroup->type->flag & WM_MANIPULATORGROUPTYPE_3D) {
+ if (mpr->parent_mgroup->type->flag & WM_GIZMOGROUPTYPE_3D) {
handle_size = 0.15f;
}
else {
- handle_size = MANIPULATOR_RESIZER_SIZE;
+ handle_size = GIZMO_RESIZER_SIZE;
}
// XXX, the scale isn't taking offset into account, we need to calculate scale per handle!
// handle_size *= mpr->scale_final;
float scale_xyz[3];
- manipulator_calc_rect_view_scale(mpr, dims, scale_xyz);
+ gizmo_calc_rect_view_scale(mpr, dims, scale_xyz);
margin[0] = ((handle_size * scale_xyz[0]));
margin[1] = ((handle_size * scale_xyz[1]));
margin[2] = ((handle_size * scale_xyz[2]));
@@ -120,12 +120,12 @@ static void manipulator_calc_rect_view_margin(
/* -------------------------------------------------------------------- */
-static void manipulator_rect_pivot_from_scale_part(int part, float r_pt[3], bool r_constrain_axis[3])
+static void gizmo_rect_pivot_from_scale_part(int part, float r_pt[3], bool r_constrain_axis[3])
{
- if (part >= ED_MANIPULATOR_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MIN_Z &&
- part <= ED_MANIPULATOR_CAGE3D_PART_SCALE_MAX_X_MAX_Y_MAX_Z)
+ if (part >= ED_GIZMO_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MIN_Z &&
+ part <= ED_GIZMO_CAGE3D_PART_SCALE_MAX_X_MAX_Y_MAX_Z)
{
- int index = (part - ED_MANIPULATOR_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MIN_Z);
+ int index = (part - ED_GIZMO_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MIN_Z);
int range[3];
range[2] = index % 3;
index = index / 3;
@@ -144,7 +144,7 @@ static void manipulator_rect_pivot_from_scale_part(int part, float r_pt[3], bool
/* -------------------------------------------------------------------- */
/** \name Box Draw Style
*
- * Useful for 3D views, see: #ED_MANIPULATOR_CAGE2D_STYLE_BOX
+ * Useful for 3D views, see: #ED_GIZMO_CAGE2D_STYLE_BOX
* \{ */
static void cage3d_draw_box_corners(
@@ -165,10 +165,10 @@ static void cage3d_draw_box_interaction(
const float color[4], const int highlighted,
const float size[3], const float margin[3])
{
- if (highlighted >= ED_MANIPULATOR_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MIN_Z &&
- highlighted <= ED_MANIPULATOR_CAGE3D_PART_SCALE_MAX_X_MAX_Y_MAX_Z)
+ if (highlighted >= ED_GIZMO_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MIN_Z &&
+ highlighted <= ED_GIZMO_CAGE3D_PART_SCALE_MAX_X_MAX_Y_MAX_Z)
{
- int index = (highlighted - ED_MANIPULATOR_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MIN_Z);
+ int index = (highlighted - ED_GIZMO_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MIN_Z);
int range[3];
range[2] = index % 3;
index = index / 3;
@@ -199,7 +199,7 @@ static void cage3d_draw_box_interaction(
/* -------------------------------------------------------------------- */
/** \name Circle Draw Style
*
- * Useful for 2D views, see: #ED_MANIPULATOR_CAGE2D_STYLE_CIRCLE
+ * Useful for 2D views, see: #ED_GIZMO_CAGE2D_STYLE_CIRCLE
* \{ */
static void imm_draw_point_aspect_3d(
@@ -225,8 +225,8 @@ static void cage3d_draw_circle_wire(
imm_draw_cube_wire_3d(pos, (float[3]){0}, r);
#if 0
- if (transform_flag & ED_MANIPULATOR_CAGE2D_XFORM_FLAG_TRANSLATE) {
- if (draw_options & ED_MANIPULATOR_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE) {
+ if (transform_flag & ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE) {
+ if (draw_options & ED_GIZMO_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE) {
const float rad[2] = {margin[0] / 2, margin[1] / 2};
const float center[2] = {0.0f, 0.0f};
@@ -279,11 +279,11 @@ static void cage3d_draw_circle_handles(
/** \} */
-static void manipulator_cage3d_draw_intern(
+static void gizmo_cage3d_draw_intern(
RegionView3D *rv3d,
- wmManipulator *mpr, const bool select, const bool highlight, const int select_id)
+ wmGizmo *mpr, const bool select, const bool highlight, const int select_id)
{
- // const bool use_clamp = (mpr->parent_mgroup->type->flag & WM_MANIPULATORGROUPTYPE_3D) == 0;
+ // const bool use_clamp = (mpr->parent_mgroup->type->flag & WM_GIZMOGROUPTYPE_3D) == 0;
float dims[3];
RNA_float_get_array(mpr->ptr, "dimensions", dims);
float matrix_final[4][4];
@@ -294,13 +294,13 @@ static void manipulator_cage3d_draw_intern(
const float size_real[3] = {dims[0] / 2.0f, dims[1] / 2.0f, dims[2] / 2.0f};
- WM_manipulator_calc_matrix_final(mpr, matrix_final);
+ WM_gizmo_calc_matrix_final(mpr, matrix_final);
gpuPushMatrix();
gpuMultMatrix(matrix_final);
float margin[3];
- manipulator_calc_rect_view_margin(mpr, dims, margin);
+ gizmo_calc_rect_view_margin(mpr, dims, margin);
/* Handy for quick testing draw (if it's outside bounds). */
if (false) {
@@ -328,12 +328,12 @@ static void manipulator_cage3d_draw_intern(
#endif
- if (transform_flag & ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE) {
- for (int i = ED_MANIPULATOR_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MIN_Z;
- i <= ED_MANIPULATOR_CAGE3D_PART_SCALE_MAX_X_MAX_Y_MAX_Z;
+ if (transform_flag & ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE) {
+ for (int i = ED_GIZMO_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MIN_Z;
+ i <= ED_GIZMO_CAGE3D_PART_SCALE_MAX_X_MAX_Y_MAX_Z;
i++)
{
- if (i == ED_MANIPULATOR_CAGE3D_PART_SCALE_MID_X_MID_Y_MID_Z) {
+ if (i == ED_GIZMO_CAGE3D_PART_SCALE_MID_X_MID_Y_MID_Z) {
continue;
}
GPU_select_load_id(select_id | i);
@@ -341,8 +341,8 @@ static void manipulator_cage3d_draw_intern(
mpr->color, i, size, margin);
}
}
- if (transform_flag & ED_MANIPULATOR_CAGE2D_XFORM_FLAG_TRANSLATE) {
- const int transform_part = ED_MANIPULATOR_CAGE3D_PART_TRANSLATE;
+ if (transform_flag & ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE) {
+ const int transform_part = ED_GIZMO_CAGE3D_PART_TRANSLATE;
GPU_select_load_id(select_id | transform_part);
cage3d_draw_box_interaction(
mpr->color, transform_part, size, margin);
@@ -357,22 +357,22 @@ static void manipulator_cage3d_draw_intern(
.ymax = size_real[1],
};
#endif
- if (draw_style == ED_MANIPULATOR_CAGE2D_STYLE_BOX) {
- /* corner manipulators */
+ if (draw_style == ED_GIZMO_CAGE2D_STYLE_BOX) {
+ /* corner gizmos */
GPU_line_width(mpr->line_width + 3.0f);
cage3d_draw_box_corners(size_real, margin, (const float[3]){0, 0, 0});
- /* corner manipulators */
+ /* corner gizmos */
float color[4];
- manipulator_color_get(mpr, highlight, color);
+ gizmo_color_get(mpr, highlight, color);
GPU_line_width(mpr->line_width);
cage3d_draw_box_corners(size_real, margin, color);
bool show = false;
- if (mpr->highlight_part == ED_MANIPULATOR_CAGE3D_PART_TRANSLATE) {
+ if (mpr->highlight_part == ED_GIZMO_CAGE3D_PART_TRANSLATE) {
/* Only show if we're drawing the center handle
* otherwise the entire rectangle is the hotspot. */
- if (draw_options & ED_MANIPULATOR_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE) {
+ if (draw_options & ED_GIZMO_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE) {
show = true;
}
}
@@ -385,9 +385,9 @@ static void manipulator_cage3d_draw_intern(
mpr->color, mpr->highlight_part, size_real, margin);
}
}
- else if (draw_style == ED_MANIPULATOR_CAGE2D_STYLE_CIRCLE) {
+ else if (draw_style == ED_GIZMO_CAGE2D_STYLE_CIRCLE) {
float color[4];
- manipulator_color_get(mpr, highlight, color);
+ gizmo_color_get(mpr, highlight, color);
GPU_line_smooth(true);
GPU_polygon_smooth(true);
@@ -398,7 +398,7 @@ static void manipulator_cage3d_draw_intern(
GPU_line_width(mpr->line_width);
cage3d_draw_circle_wire(size_real, margin, color, transform_flag, draw_options);
- /* corner manipulators */
+ /* corner gizmos */
cage3d_draw_circle_handles(rv3d, matrix_final, size_real, margin, (const float[3]){0, 0, 0}, true, 60);
cage3d_draw_circle_handles(rv3d, matrix_final, size_real, margin, color, true, 40);
@@ -418,24 +418,24 @@ static void manipulator_cage3d_draw_intern(
/**
* For when we want to draw 3d cage in 3d views.
*/
-static void manipulator_cage3d_draw_select(const bContext *C, wmManipulator *mpr, int select_id)
+static void gizmo_cage3d_draw_select(const bContext *C, wmGizmo *mpr, int select_id)
{
ARegion *ar = CTX_wm_region(C);
RegionView3D *rv3d = ar->regiondata;
- manipulator_cage3d_draw_intern(rv3d, mpr, true, false, select_id);
+ gizmo_cage3d_draw_intern(rv3d, mpr, true, false, select_id);
}
-static void manipulator_cage3d_draw(const bContext *C, wmManipulator *mpr)
+static void gizmo_cage3d_draw(const bContext *C, wmGizmo *mpr)
{
ARegion *ar = CTX_wm_region(C);
RegionView3D *rv3d = ar->regiondata;
- const bool is_highlight = (mpr->state & WM_MANIPULATOR_STATE_HIGHLIGHT) != 0;
- manipulator_cage3d_draw_intern(rv3d, mpr, false, is_highlight, -1);
+ const bool is_highlight = (mpr->state & WM_GIZMO_STATE_HIGHLIGHT) != 0;
+ gizmo_cage3d_draw_intern(rv3d, mpr, false, is_highlight, -1);
}
-static int manipulator_cage3d_get_cursor(wmManipulator *mpr)
+static int gizmo_cage3d_get_cursor(wmGizmo *mpr)
{
- if (mpr->parent_mgroup->type->flag & WM_MANIPULATORGROUPTYPE_3D) {
+ if (mpr->parent_mgroup->type->flag & WM_GIZMOGROUPTYPE_3D) {
return BC_NSEW_SCROLLCURSOR;
}
@@ -448,21 +448,21 @@ typedef struct RectTransformInteraction {
float orig_matrix_final_no_offset[4][4];
} RectTransformInteraction;
-static void manipulator_cage3d_setup(wmManipulator *mpr)
+static void gizmo_cage3d_setup(wmGizmo *mpr)
{
- mpr->flag |= /* WM_MANIPULATOR_DRAW_MODAL | */ /* TODO */
- WM_MANIPULATOR_DRAW_NO_SCALE;
+ mpr->flag |= /* WM_GIZMO_DRAW_MODAL | */ /* TODO */
+ WM_GIZMO_DRAW_NO_SCALE;
}
-static int manipulator_cage3d_invoke(
- bContext *C, wmManipulator *mpr, const wmEvent *event)
+static int gizmo_cage3d_invoke(
+ bContext *C, wmGizmo *mpr, const wmEvent *event)
{
RectTransformInteraction *data = MEM_callocN(sizeof(RectTransformInteraction), "cage_interaction");
copy_m4_m4(data->orig_matrix_offset, mpr->matrix_offset);
- manipulator_calc_matrix_final_no_offset(mpr, data->orig_matrix_final_no_offset, true);
+ gizmo_calc_matrix_final_no_offset(mpr, data->orig_matrix_final_no_offset, true);
- if (manipulator_window_project_3d(
+ if (gizmo_window_project_3d(
C, mpr, (const float[2]){UNPACK2(event->mval)}, false, data->orig_mouse) == 0)
{
zero_v3(data->orig_mouse);
@@ -473,9 +473,9 @@ static int manipulator_cage3d_invoke(
return OPERATOR_RUNNING_MODAL;
}
-static int manipulator_cage3d_modal(
- bContext *C, wmManipulator *mpr, const wmEvent *event,
- eWM_ManipulatorTweak UNUSED(tweak_flag))
+static int gizmo_cage3d_modal(
+ bContext *C, wmGizmo *mpr, const wmEvent *event,
+ eWM_GizmoFlagTweak UNUSED(tweak_flag))
{
/* For transform logic to be managable we operate in -0.5..0.5 2D space,
* no matter the size of the rectangle, mouse coorts are scaled to unit space.
@@ -495,7 +495,7 @@ static int manipulator_cage3d_modal(
copy_m4_m4(matrix_back, mpr->matrix_offset);
copy_m4_m4(mpr->matrix_offset, data->orig_matrix_offset);
- bool ok = manipulator_window_project_3d(
+ bool ok = gizmo_window_project_3d(
C, mpr, (const float[2]){UNPACK2(event->mval)}, false, point_local);
copy_m4_m4(mpr->matrix_offset, matrix_back);
if (!ok) {
@@ -504,21 +504,21 @@ static int manipulator_cage3d_modal(
}
const int transform_flag = RNA_enum_get(mpr->ptr, "transform");
- wmManipulatorProperty *mpr_prop;
+ wmGizmoProperty *mpr_prop;
- mpr_prop = WM_manipulator_target_property_find(mpr, "matrix");
+ mpr_prop = WM_gizmo_target_property_find(mpr, "matrix");
if (mpr_prop->type != NULL) {
- WM_manipulator_target_property_value_get_array(mpr, mpr_prop, &mpr->matrix_offset[0][0]);
+ WM_gizmo_target_property_value_get_array(mpr, mpr_prop, &mpr->matrix_offset[0][0]);
}
- if (mpr->highlight_part == ED_MANIPULATOR_CAGE3D_PART_TRANSLATE) {
+ if (mpr->highlight_part == ED_GIZMO_CAGE3D_PART_TRANSLATE) {
/* do this to prevent clamping from changing size */
copy_m4_m4(mpr->matrix_offset, data->orig_matrix_offset);
mpr->matrix_offset[3][0] = data->orig_matrix_offset[3][0] + (point_local[0] - data->orig_mouse[0]);
mpr->matrix_offset[3][1] = data->orig_matrix_offset[3][1] + (point_local[1] - data->orig_mouse[1]);
mpr->matrix_offset[3][2] = data->orig_matrix_offset[3][2] + (point_local[2] - data->orig_mouse[2]);
}
- else if (mpr->highlight_part == ED_MANIPULATOR_CAGE3D_PART_ROTATE) {
+ else if (mpr->highlight_part == ED_GIZMO_CAGE3D_PART_ROTATE) {
/* TODO (if needed) */
}
else {
@@ -527,8 +527,8 @@ static int manipulator_cage3d_modal(
float pivot[3];
bool constrain_axis[3] = {false};
- if (transform_flag & ED_MANIPULATOR_CAGE2D_XFORM_FLAG_TRANSLATE) {
- manipulator_rect_pivot_from_scale_part(mpr->highlight_part, pivot, constrain_axis);
+ if (transform_flag & ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE) {
+ gizmo_rect_pivot_from_scale_part(mpr->highlight_part, pivot, constrain_axis);
}
else {
zero_v3(pivot);
@@ -553,7 +553,7 @@ static int manipulator_cage3d_modal(
scale[i] = 1.0f + ((delta_curr[i] - delta_orig[i]) / len_v3(data->orig_matrix_offset[i]));
- if ((transform_flag & ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE_SIGNED) == 0) {
+ if ((transform_flag & ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE_SIGNED) == 0) {
if (sign != signum_i(scale[i])) {
scale[i] = 0.0f;
}
@@ -561,7 +561,7 @@ static int manipulator_cage3d_modal(
}
}
- if (transform_flag & ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE_UNIFORM) {
+ if (transform_flag & ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE_UNIFORM) {
if (constrain_axis[0] == false && constrain_axis[1] == false) {
scale[1] = scale[0] = (scale[1] + scale[0]) / 2.0f;
}
@@ -591,7 +591,7 @@ static int manipulator_cage3d_modal(
}
if (mpr_prop->type != NULL) {
- WM_manipulator_target_property_value_set_array(C, mpr, mpr_prop, &mpr->matrix_offset[0][0]);
+ WM_gizmo_target_property_value_set_array(C, mpr, mpr_prop, &mpr->matrix_offset[0][0]);
}
/* tag the region for redraw */
@@ -601,11 +601,11 @@ static int manipulator_cage3d_modal(
return OPERATOR_RUNNING_MODAL;
}
-static void manipulator_cage3d_property_update(wmManipulator *mpr, wmManipulatorProperty *mpr_prop)
+static void gizmo_cage3d_property_update(wmGizmo *mpr, wmGizmoProperty *mpr_prop)
{
if (STREQ(mpr_prop->type->idname, "matrix")) {
- if (WM_manipulator_target_property_array_length(mpr, mpr_prop) == 16) {
- WM_manipulator_target_property_value_get_array(mpr, mpr_prop, &mpr->matrix_offset[0][0]);
+ if (WM_gizmo_target_property_array_length(mpr, mpr_prop) == 16) {
+ WM_gizmo_target_property_value_get_array(mpr, mpr_prop, &mpr->matrix_offset[0][0]);
}
else {
BLI_assert(0);
@@ -616,19 +616,19 @@ static void manipulator_cage3d_property_update(wmManipulator *mpr, wmManipulator
}
}
-static void manipulator_cage3d_exit(bContext *C, wmManipulator *mpr, const bool cancel)
+static void gizmo_cage3d_exit(bContext *C, wmGizmo *mpr, const bool cancel)
{
RectTransformInteraction *data = mpr->interaction_data;
if (!cancel)
return;
- wmManipulatorProperty *mpr_prop;
+ wmGizmoProperty *mpr_prop;
/* reset properties */
- mpr_prop = WM_manipulator_target_property_find(mpr, "matrix");
+ mpr_prop = WM_gizmo_target_property_find(mpr, "matrix");
if (mpr_prop->type != NULL) {
- WM_manipulator_target_property_value_set_array(C, mpr, mpr_prop, &data->orig_matrix_offset[0][0]);
+ WM_gizmo_target_property_value_set_array(C, mpr, mpr_prop, &data->orig_matrix_offset[0][0]);
}
copy_m4_m4(mpr->matrix_offset, data->orig_matrix_offset);
@@ -636,57 +636,57 @@ static void manipulator_cage3d_exit(bContext *C, wmManipulator *mpr, const bool
/* -------------------------------------------------------------------- */
-/** \name Cage Manipulator API
+/** \name Cage Gizmo API
*
* \{ */
-static void MANIPULATOR_WT_cage_3d(wmManipulatorType *wt)
+static void GIZMO_WT_cage_3d(wmGizmoType *wt)
{
/* identifiers */
- wt->idname = "MANIPULATOR_WT_cage_3d";
+ wt->idname = "GIZMO_WT_cage_3d";
/* api callbacks */
- wt->draw = manipulator_cage3d_draw;
- wt->draw_select = manipulator_cage3d_draw_select;
- wt->setup = manipulator_cage3d_setup;
- wt->invoke = manipulator_cage3d_invoke;
- wt->property_update = manipulator_cage3d_property_update;
- wt->modal = manipulator_cage3d_modal;
- wt->exit = manipulator_cage3d_exit;
- wt->cursor_get = manipulator_cage3d_get_cursor;
+ wt->draw = gizmo_cage3d_draw;
+ wt->draw_select = gizmo_cage3d_draw_select;
+ wt->setup = gizmo_cage3d_setup;
+ wt->invoke = gizmo_cage3d_invoke;
+ wt->property_update = gizmo_cage3d_property_update;
+ wt->modal = gizmo_cage3d_modal;
+ wt->exit = gizmo_cage3d_exit;
+ wt->cursor_get = gizmo_cage3d_get_cursor;
- wt->struct_size = sizeof(wmManipulator);
+ wt->struct_size = sizeof(wmGizmo);
/* rna */
static EnumPropertyItem rna_enum_draw_style[] = {
- {ED_MANIPULATOR_CAGE2D_STYLE_BOX, "BOX", 0, "Box", ""},
- {ED_MANIPULATOR_CAGE2D_STYLE_CIRCLE, "CIRCLE", 0, "Circle", ""},
+ {ED_GIZMO_CAGE2D_STYLE_BOX, "BOX", 0, "Box", ""},
+ {ED_GIZMO_CAGE2D_STYLE_CIRCLE, "CIRCLE", 0, "Circle", ""},
{0, NULL, 0, NULL, NULL}
};
static EnumPropertyItem rna_enum_transform[] = {
- {ED_MANIPULATOR_CAGE2D_XFORM_FLAG_TRANSLATE, "TRANSLATE", 0, "Translate", ""},
- {ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE, "SCALE", 0, "Scale", ""},
- {ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE_UNIFORM, "SCALE_UNIFORM", 0, "Scale Uniform", ""},
+ {ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE, "TRANSLATE", 0, "Translate", ""},
+ {ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE, "SCALE", 0, "Scale", ""},
+ {ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE_UNIFORM, "SCALE_UNIFORM", 0, "Scale Uniform", ""},
{0, NULL, 0, NULL, NULL}
};
static EnumPropertyItem rna_enum_draw_options[] = {
- {ED_MANIPULATOR_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE, "XFORM_CENTER_HANDLE", 0, "Center Handle", ""},
+ {ED_GIZMO_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE, "XFORM_CENTER_HANDLE", 0, "Center Handle", ""},
{0, NULL, 0, NULL, NULL}
};
static float unit_v3[3] = {1.0f, 1.0f, 1.0f};
RNA_def_float_vector(wt->srna, "dimensions", 3, unit_v3, 0, FLT_MAX, "Dimensions", "", 0.0f, FLT_MAX);
RNA_def_enum_flag(wt->srna, "transform", rna_enum_transform, 0, "Transform Options", "");
- RNA_def_enum(wt->srna, "draw_style", rna_enum_draw_style, ED_MANIPULATOR_CAGE2D_STYLE_CIRCLE, "Draw Style", "");
+ RNA_def_enum(wt->srna, "draw_style", rna_enum_draw_style, ED_GIZMO_CAGE2D_STYLE_CIRCLE, "Draw Style", "");
RNA_def_enum_flag(
wt->srna, "draw_options", rna_enum_draw_options,
- ED_MANIPULATOR_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE, "Draw Options", "");
+ ED_GIZMO_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE, "Draw Options", "");
- WM_manipulatortype_target_property_def(wt, "matrix", PROP_FLOAT, 16);
+ WM_gizmotype_target_property_def(wt, "matrix", PROP_FLOAT, 16);
}
-void ED_manipulatortypes_cage_3d(void)
+void ED_gizmotypes_cage_3d(void)
{
- WM_manipulatortype_append(MANIPULATOR_WT_cage_3d);
+ WM_gizmotype_append(GIZMO_WT_cage_3d);
}
/** \} */
diff --git a/source/blender/editors/gizmo_library/gizmo_types/dial3d_gizmo.c b/source/blender/editors/gizmo_library/gizmo_types/dial3d_gizmo.c
index 8d0061f66c8..b93b87b1efa 100644
--- a/source/blender/editors/gizmo_library/gizmo_types/dial3d_gizmo.c
+++ b/source/blender/editors/gizmo_library/gizmo_types/dial3d_gizmo.c
@@ -26,15 +26,15 @@
/** \file dial3d_gizmo.c
* \ingroup wm
*
- * \name Dial Manipulator
+ * \name Dial Gizmo
*
- * 3D Manipulator
+ * 3D Gizmo
*
- * \brief Circle shaped manipulator for circular interaction.
+ * \brief Circle shaped gizmo for circular interaction.
* Currently no own handling, use with operator only.
*
* - `matrix[0]` is derived from Y and Z.
- * - `matrix[1]` is 'up' when DialManipulator.use_start_y_axis is set.
+ * - `matrix[1]` is 'up' when DialGizmo.use_start_y_axis is set.
* - `matrix[2]` is the axis the dial rotates around (all dials).
*/
@@ -67,12 +67,12 @@
#include "../gizmo_geometry.h"
#include "../gizmo_library_intern.h"
-/* to use custom dials exported to geom_dial_manipulator.c */
-// #define USE_MANIPULATOR_CUSTOM_DIAL
+/* to use custom dials exported to geom_dial_gizmo.c */
+// #define USE_GIZMO_CUSTOM_DIAL
-static int manipulator_dial_modal(
- bContext *C, wmManipulator *mpr, const wmEvent *event,
- eWM_ManipulatorTweak tweak_flag);
+static int gizmo_dial_modal(
+ bContext *C, wmGizmo *mpr, const wmEvent *event,
+ eWM_GizmoFlagTweak tweak_flag);
typedef struct DialInteraction {
float init_mval[2];
@@ -99,9 +99,9 @@ typedef struct DialInteraction {
#define DIAL_CLIP_BIAS 0.02
/**
- * We can't use this for the #wmManipulatorType.matrix_basis_get callback, it conflicts with depth picking.
+ * We can't use this for the #wmGizmoType.matrix_basis_get callback, it conflicts with depth picking.
*/
-static void dial_calc_matrix(const wmManipulator *mpr, float mat[4][4])
+static void dial_calc_matrix(const wmGizmo *mpr, float mat[4][4])
{
float rot[3][3];
const float up[3] = {0.0f, 0.0f, 1.0f};
@@ -114,15 +114,15 @@ static void dial_calc_matrix(const wmManipulator *mpr, float mat[4][4])
/* -------------------------------------------------------------------- */
static void dial_geom_draw(
- const wmManipulator *mpr, const float color[4], const bool select,
+ const wmGizmo *mpr, const float color[4], const bool select,
float axis_modal_mat[4][4], float clip_plane[4])
{
-#ifdef USE_MANIPULATOR_CUSTOM_DIAL
+#ifdef USE_GIZMO_CUSTOM_DIAL
UNUSED_VARS(dial, col, axis_modal_mat, clip_plane);
- wm_manipulator_geometryinfo_draw(&wm_manipulator_geom_data_dial, select);
+ wm_gizmo_geometryinfo_draw(&wm_gizmo_geom_data_dial, select);
#else
const int draw_options = RNA_enum_get(mpr->ptr, "draw_options");
- const bool filled = (draw_options & ED_MANIPULATOR_DIAL_DRAW_FLAG_FILL) != 0;
+ const bool filled = (draw_options & ED_GIZMO_DIAL_DRAW_FLAG_FILL) != 0;
GPU_line_width(mpr->line_width);
@@ -181,9 +181,9 @@ static void dial_ghostarc_draw_helpline(const float angle, const float co_outer[
}
static void dial_ghostarc_draw(
- const wmManipulator *mpr, const float angle_ofs, const float angle_delta, const float color[4])
+ const wmGizmo *mpr, const float angle_ofs, const float angle_delta, const float color[4])
{
- const float width_inner = DIAL_WIDTH - mpr->line_width * 0.5f / U.manipulator_size;
+ const float width_inner = DIAL_WIDTH - mpr->line_width * 0.5f / U.gizmo_size;
Gwn_VertFormat *format = immVertexFormat();
uint pos = GWN_vertformat_attr_add(format, "pos", GWN_COMP_F32, 2, GWN_FETCH_FLOAT);
@@ -196,7 +196,7 @@ static void dial_ghostarc_draw(
static void dial_ghostarc_get_angles(
struct Depsgraph *depsgraph,
- const wmManipulator *mpr,
+ const wmGizmo *mpr,
const wmEvent *event,
const ARegion *ar, const View3D *v3d,
float mat[4][4], const float co_outer[3],
@@ -243,7 +243,7 @@ static void dial_ghostarc_get_angles(
/* Start direction from mouse or set by user */
const float *proj_init_rel =
- (draw_options & ED_MANIPULATOR_DIAL_DRAW_FLAG_ANGLE_START_Y) ?
+ (draw_options & ED_GIZMO_DIAL_DRAW_FLAG_ANGLE_START_Y) ?
mpr->matrix_basis[1] : proj_mval_init_rel;
/* return angles */
@@ -274,7 +274,7 @@ fail:
}
static void dial_draw_intern(
- const bContext *C, wmManipulator *mpr,
+ const bContext *C, wmGizmo *mpr,
const bool select, const bool highlight, float clip_plane[4])
{
float matrix_basis_adjust[4][4];
@@ -283,12 +283,12 @@ static void dial_draw_intern(
BLI_assert(CTX_wm_area(C)->spacetype == SPACE_VIEW3D);
- manipulator_color_get(mpr, highlight, color);
+ gizmo_color_get(mpr, highlight, color);
dial_calc_matrix(mpr, matrix_basis_adjust);
- WM_manipulator_calc_matrix_final_params(
- mpr, &((struct WM_ManipulatorMatrixParams) {
+ WM_gizmo_calc_matrix_final_params(
+ mpr, &((struct WM_GizmoMatrixParams) {
.matrix_basis = (void *)matrix_basis_adjust,
}), matrix_final);
@@ -296,17 +296,17 @@ static void dial_draw_intern(
gpuMultMatrix(matrix_final);
/* draw rotation indicator arc first */
- if ((mpr->flag & WM_MANIPULATOR_DRAW_VALUE) &&
- (mpr->state & WM_MANIPULATOR_STATE_MODAL))
+ if ((mpr->flag & WM_GIZMO_DRAW_VALUE) &&
+ (mpr->state & WM_GIZMO_STATE_MODAL))
{
const float co_outer[4] = {0.0f, DIAL_WIDTH, 0.0f}; /* coordinate at which the arc drawing will be started */
DialInteraction *inter = mpr->interaction_data;
- /* XXX, View3D rotation manipulator doesn't call modal. */
- if (!WM_manipulator_target_property_is_valid_any(mpr)) {
+ /* XXX, View3D rotation gizmo doesn't call modal. */
+ if (!WM_gizmo_target_property_is_valid_any(mpr)) {
wmWindow *win = CTX_wm_window(C);
- manipulator_dial_modal((bContext *)C, mpr, win->eventstate, 0);
+ gizmo_dial_modal((bContext *)C, mpr, win->eventstate, 0);
}
float angle_ofs = inter->output.angle_ofs;
@@ -323,7 +323,7 @@ static void dial_draw_intern(
if (i == 0) {
const int draw_options = RNA_enum_get(mpr->ptr, "draw_options");
- if ((draw_options & ED_MANIPULATOR_DIAL_DRAW_FLAG_ANGLE_MIRROR) == 0) {
+ if ((draw_options & ED_GIZMO_DIAL_DRAW_FLAG_ANGLE_MIRROR) == 0) {
break;
}
}
@@ -332,17 +332,17 @@ static void dial_draw_intern(
}
}
- /* draw actual dial manipulator */
+ /* draw actual dial gizmo */
dial_geom_draw(mpr, color, select, matrix_basis_adjust, clip_plane);
gpuPopMatrix();
}
-static void manipulator_dial_draw_select(const bContext *C, wmManipulator *mpr, int select_id)
+static void gizmo_dial_draw_select(const bContext *C, wmGizmo *mpr, int select_id)
{
float clip_plane_buf[4];
const int draw_options = RNA_enum_get(mpr->ptr, "draw_options");
- float *clip_plane = (draw_options & ED_MANIPULATOR_DIAL_DRAW_FLAG_CLIP) ? clip_plane_buf : NULL;
+ float *clip_plane = (draw_options & ED_GIZMO_DIAL_DRAW_FLAG_CLIP) ? clip_plane_buf : NULL;
/* enable clipping if needed */
if (clip_plane) {
@@ -363,13 +363,13 @@ static void manipulator_dial_draw_select(const bContext *C, wmManipulator *mpr,
}
}
-static void manipulator_dial_draw(const bContext *C, wmManipulator *mpr)
+static void gizmo_dial_draw(const bContext *C, wmGizmo *mpr)
{
- const bool is_modal = mpr->state & WM_MANIPULATOR_STATE_MODAL;
- const bool is_highlight = (mpr->state & WM_MANIPULATOR_STATE_HIGHLIGHT) != 0;
+ const bool is_modal = mpr->state & WM_GIZMO_STATE_MODAL;
+ const bool is_highlight = (mpr->state & WM_GIZMO_STATE_HIGHLIGHT) != 0;
float clip_plane_buf[4];
const int draw_options = RNA_enum_get(mpr->ptr, "draw_options");
- float *clip_plane = (!is_modal && (draw_options & ED_MANIPULATOR_DIAL_DRAW_FLAG_CLIP)) ? clip_plane_buf : NULL;
+ float *clip_plane = (!is_modal && (draw_options & ED_GIZMO_DIAL_DRAW_FLAG_CLIP)) ? clip_plane_buf : NULL;
/* enable clipping if needed */
if (clip_plane) {
@@ -392,9 +392,9 @@ static void manipulator_dial_draw(const bContext *C, wmManipulator *mpr)
}
}
-static int manipulator_dial_modal(
- bContext *C, wmManipulator *mpr, const wmEvent *event,
- eWM_ManipulatorTweak UNUSED(tweak_flag))
+static int gizmo_dial_modal(
+ bContext *C, wmGizmo *mpr, const wmEvent *event,
+ eWM_GizmoFlagTweak UNUSED(tweak_flag))
{
const float co_outer[4] = {0.0f, DIAL_WIDTH, 0.0f}; /* coordinate at which the arc drawing will be started */
float angle_ofs, angle_delta;
@@ -413,15 +413,15 @@ static int manipulator_dial_modal(
inter->output.angle_ofs = angle_ofs;
/* set the property for the operator and call its modal function */
- wmManipulatorProperty *mpr_prop = WM_manipulator_target_property_find(mpr, "offset");
- if (WM_manipulator_target_property_is_valid(mpr_prop)) {
- WM_manipulator_target_property_value_set(C, mpr, mpr_prop, inter->init_prop_angle + angle_delta);
+ wmGizmoProperty *mpr_prop = WM_gizmo_target_property_find(mpr, "offset");
+ if (WM_gizmo_target_property_is_valid(mpr_prop)) {
+ WM_gizmo_target_property_value_set(C, mpr, mpr_prop, inter->init_prop_angle + angle_delta);
}
return OPERATOR_RUNNING_MODAL;
}
-static void manipulator_dial_setup(wmManipulator *mpr)
+static void gizmo_dial_setup(wmGizmo *mpr)
{
const float dir_default[3] = {0.0f, 0.0f, 1.0f};
@@ -429,17 +429,17 @@ static void manipulator_dial_setup(wmManipulator *mpr)
copy_v3_v3(mpr->matrix_basis[2], dir_default);
}
-static int manipulator_dial_invoke(
- bContext *UNUSED(C), wmManipulator *mpr, const wmEvent *event)
+static int gizmo_dial_invoke(
+ bContext *UNUSED(C), wmGizmo *mpr, const wmEvent *event)
{
DialInteraction *inter = MEM_callocN(sizeof(DialInteraction), __func__);
inter->init_mval[0] = event->mval[0];
inter->init_mval[1] = event->mval[1];
- wmManipulatorProperty *mpr_prop = WM_manipulator_target_property_find(mpr, "offset");
- if (WM_manipulator_target_property_is_valid(mpr_prop)) {
- inter->init_prop_angle = WM_manipulator_target_property_value_get(mpr, mpr_prop);
+ wmGizmoProperty *mpr_prop = WM_gizmo_target_property_find(mpr, "offset");
+ if (WM_gizmo_target_property_is_valid(mpr_prop)) {
+ inter->init_prop_angle = WM_gizmo_target_property_value_get(mpr, mpr_prop);
}
mpr->interaction_data = inter;
@@ -448,40 +448,40 @@ static int manipulator_dial_invoke(
}
/* -------------------------------------------------------------------- */
-/** \name Dial Manipulator API
+/** \name Dial Gizmo API
*
* \{ */
-static void MANIPULATOR_WT_dial_3d(wmManipulatorType *wt)
+static void GIZMO_WT_dial_3d(wmGizmoType *wt)
{
/* identifiers */
- wt->idname = "MANIPULATOR_WT_dial_3d";
+ wt->idname = "GIZMO_WT_dial_3d";
/* api callbacks */
- wt->draw = manipulator_dial_draw;
- wt->draw_select = manipulator_dial_draw_select;
- wt->setup = manipulator_dial_setup;
- wt->invoke = manipulator_dial_invoke;
- wt->modal = manipulator_dial_modal;
+ wt->draw = gizmo_dial_draw;
+ wt->draw_select = gizmo_dial_draw_select;
+ wt->setup = gizmo_dial_setup;
+ wt->invoke = gizmo_dial_invoke;
+ wt->modal = gizmo_dial_modal;
- wt->struct_size = sizeof(wmManipulator);
+ wt->struct_size = sizeof(wmGizmo);
/* rna */
static EnumPropertyItem rna_enum_draw_options[] = {
- {ED_MANIPULATOR_DIAL_DRAW_FLAG_CLIP, "CLIP", 0, "Clipped", ""},
- {ED_MANIPULATOR_DIAL_DRAW_FLAG_FILL, "FILL", 0, "Filled", ""},
- {ED_MANIPULATOR_DIAL_DRAW_FLAG_ANGLE_MIRROR, "ANGLE_MIRROR", 0, "Angle Mirror", ""},
- {ED_MANIPULATOR_DIAL_DRAW_FLAG_ANGLE_START_Y, "ANGLE_START_Y", 0, "Angle Start Y", ""},
+ {ED_GIZMO_DIAL_DRAW_FLAG_CLIP, "CLIP", 0, "Clipped", ""},
+ {ED_GIZMO_DIAL_DRAW_FLAG_FILL, "FILL", 0, "Filled", ""},
+ {ED_GIZMO_DIAL_DRAW_FLAG_ANGLE_MIRROR, "ANGLE_MIRROR", 0, "Angle Mirror", ""},
+ {ED_GIZMO_DIAL_DRAW_FLAG_ANGLE_START_Y, "ANGLE_START_Y", 0, "Angle Start Y", ""},
{0, NULL, 0, NULL, NULL}
};
RNA_def_enum_flag(wt->srna, "draw_options", rna_enum_draw_options, 0, "Draw Options", "");
- WM_manipulatortype_target_property_def(wt, "offset", PROP_FLOAT, 1);
+ WM_gizmotype_target_property_def(wt, "offset", PROP_FLOAT, 1);
}
-void ED_manipulatortypes_dial_3d(void)
+void ED_gizmotypes_dial_3d(void)
{
- WM_manipulatortype_append(MANIPULATOR_WT_dial_3d);
+ WM_gizmotype_append(GIZMO_WT_dial_3d);
}
/** \} */
diff --git a/source/blender/editors/gizmo_library/gizmo_types/grab3d_gizmo.c b/source/blender/editors/gizmo_library/gizmo_types/grab3d_gizmo.c
index e55b57327b6..2a89c8cc4ab 100644
--- a/source/blender/editors/gizmo_library/gizmo_types/grab3d_gizmo.c
+++ b/source/blender/editors/gizmo_library/gizmo_types/grab3d_gizmo.c
@@ -21,15 +21,15 @@
/** \file grab3d_gizmo.c
* \ingroup wm
*
- * \name Grab Manipulator
+ * \name Grab Gizmo
*
- * 3D Manipulator, also works in 2D views.
+ * 3D Gizmo, also works in 2D views.
*
- * \brief Simple manipulator to grab and translate.
+ * \brief Simple gizmo to grab and translate.
*
* - `matrix[0]` is derived from Y and Z.
* - `matrix[1]` currently not used.
- * - `matrix[2]` is the widget direction (for all manipulators).
+ * - `matrix[2]` is the widget direction (for all gizmos).
*
*/
@@ -62,23 +62,23 @@
#include "../gizmo_geometry.h"
#include "../gizmo_library_intern.h"
-typedef struct GrabManipulator3D {
- wmManipulator manipulator;
+typedef struct GrabGizmo3D {
+ wmGizmo gizmo;
/* Added to 'matrix_basis' when calculating the matrix. */
float prop_co[3];
-} GrabManipulator3D;
+} GrabGizmo3D;
-static void manipulator_grab_matrix_basis_get(const wmManipulator *mpr, float r_matrix[4][4])
+static void gizmo_grab_matrix_basis_get(const wmGizmo *mpr, float r_matrix[4][4])
{
- GrabManipulator3D *grab = (GrabManipulator3D *)mpr;
+ GrabGizmo3D *grab = (GrabGizmo3D *)mpr;
- copy_m4_m4(r_matrix, grab->manipulator.matrix_basis);
+ copy_m4_m4(r_matrix, grab->gizmo.matrix_basis);
add_v3_v3(r_matrix[3], grab->prop_co);
}
-static int manipulator_grab_modal(
- bContext *C, wmManipulator *mpr, const wmEvent *event,
- eWM_ManipulatorTweak tweak_flag);
+static int gizmo_grab_modal(
+ bContext *C, wmGizmo *mpr, const wmEvent *event,
+ eWM_GizmoFlagTweak tweak_flag);
typedef struct GrabInteraction {
float init_mval[2];
@@ -94,14 +94,14 @@ typedef struct GrabInteraction {
/* -------------------------------------------------------------------- */
static void grab_geom_draw(
- const wmManipulator *mpr, const float color[4], const bool select, const int draw_options)
+ const wmGizmo *mpr, const float color[4], const bool select, const int draw_options)
{
-#ifdef USE_MANIPULATOR_CUSTOM_DIAL
+#ifdef USE_GIZMO_CUSTOM_DIAL
UNUSED_VARS(grab3d, col, axis_modal_mat);
- wm_manipulator_geometryinfo_draw(&wm_manipulator_geom_data_grab3d, select);
+ wm_gizmo_geometryinfo_draw(&wm_gizmo_geom_data_grab3d, select);
#else
const int draw_style = RNA_enum_get(mpr->ptr, "draw_style");
- const bool filled = (draw_options & ED_MANIPULATOR_GRAB_DRAW_FLAG_FILL) != 0;
+ const bool filled = (draw_options & ED_GIZMO_GRAB_DRAW_FLAG_FILL) != 0;
GPU_line_width(mpr->line_width);
@@ -112,7 +112,7 @@ static void grab_geom_draw(
immUniformColor4fv(color);
- if (draw_style == ED_MANIPULATOR_GRAB_STYLE_RING_2D) {
+ if (draw_style == ED_GIZMO_GRAB_STYLE_RING_2D) {
if (filled) {
imm_draw_circle_fill_2d(pos, 0, 0, 1.0f, DIAL_RESOLUTION);
}
@@ -120,7 +120,7 @@ static void grab_geom_draw(
imm_draw_circle_wire_2d(pos, 0, 0, 1.0f, DIAL_RESOLUTION);
}
}
- else if (draw_style == ED_MANIPULATOR_GRAB_STYLE_CROSS_2D) {
+ else if (draw_style == ED_GIZMO_GRAB_STYLE_CROSS_2D) {
immBegin(GWN_PRIM_LINES, 4);
immVertex2f(pos, 1.0f, 1.0f);
immVertex2f(pos, -1.0f, -1.0f);
@@ -140,7 +140,7 @@ static void grab_geom_draw(
}
static void grab3d_get_translate(
- const wmManipulator *mpr, const wmEvent *event, const ARegion *ar,
+ const wmGizmo *mpr, const wmEvent *event, const ARegion *ar,
float co_delta[3])
{
GrabInteraction *inter = mpr->interaction_data;
@@ -163,18 +163,18 @@ static void grab3d_get_translate(
}
static void grab3d_draw_intern(
- const bContext *C, wmManipulator *mpr,
+ const bContext *C, wmGizmo *mpr,
const bool select, const bool highlight)
{
GrabInteraction *inter = mpr->interaction_data;
const int draw_options = RNA_enum_get(mpr->ptr, "draw_options");
- const bool align_view = (draw_options & ED_MANIPULATOR_GRAB_DRAW_FLAG_ALIGN_VIEW) != 0;
+ const bool align_view = (draw_options & ED_GIZMO_GRAB_DRAW_FLAG_ALIGN_VIEW) != 0;
float color[4];
float matrix_final[4][4];
float matrix_align[4][4];
- manipulator_color_get(mpr, highlight, color);
- WM_manipulator_calc_matrix_final(mpr, matrix_final);
+ gizmo_color_get(mpr, highlight, color);
+ WM_gizmo_calc_matrix_final(mpr, matrix_final);
gpuPushMatrix();
gpuMultMatrix(matrix_final);
@@ -209,16 +209,16 @@ static void grab3d_draw_intern(
}
}
-static void manipulator_grab_draw_select(const bContext *C, wmManipulator *mpr, int select_id)
+static void gizmo_grab_draw_select(const bContext *C, wmGizmo *mpr, int select_id)
{
GPU_select_load_id(select_id);
grab3d_draw_intern(C, mpr, true, false);
}
-static void manipulator_grab_draw(const bContext *C, wmManipulator *mpr)
+static void gizmo_grab_draw(const bContext *C, wmGizmo *mpr)
{
- const bool is_modal = mpr->state & WM_MANIPULATOR_STATE_MODAL;
- const bool is_highlight = (mpr->state & WM_MANIPULATOR_STATE_HIGHLIGHT) != 0;
+ const bool is_modal = mpr->state & WM_GIZMO_STATE_MODAL;
+ const bool is_highlight = (mpr->state & WM_GIZMO_STATE_HIGHLIGHT) != 0;
(void)is_modal;
@@ -227,11 +227,11 @@ static void manipulator_grab_draw(const bContext *C, wmManipulator *mpr)
GPU_blend(false);
}
-static int manipulator_grab_modal(
- bContext *C, wmManipulator *mpr, const wmEvent *event,
- eWM_ManipulatorTweak UNUSED(tweak_flag))
+static int gizmo_grab_modal(
+ bContext *C, wmGizmo *mpr, const wmEvent *event,
+ eWM_GizmoFlagTweak UNUSED(tweak_flag))
{
- GrabManipulator3D *grab = (GrabManipulator3D *)mpr;
+ GrabGizmo3D *grab = (GrabGizmo3D *)mpr;
GrabInteraction *inter = mpr->interaction_data;
ARegion *ar = CTX_wm_region(C);
@@ -241,9 +241,9 @@ static int manipulator_grab_modal(
}
else {
float mval_proj_init[2], mval_proj_curr[2];
- if ((manipulator_window_project_2d(
+ if ((gizmo_window_project_2d(
C, mpr, inter->init_mval, 2, false, mval_proj_init) == false) ||
- (manipulator_window_project_2d(
+ (gizmo_window_project_2d(
C, mpr, (const float[2]){UNPACK2(event->mval)}, 2, false, mval_proj_curr) == false))
{
return OPERATOR_RUNNING_MODAL;
@@ -254,9 +254,9 @@ static int manipulator_grab_modal(
add_v3_v3v3(grab->prop_co, inter->init_prop_co, prop_delta);
/* set the property for the operator and call its modal function */
- wmManipulatorProperty *mpr_prop = WM_manipulator_target_property_find(mpr, "offset");
- if (WM_manipulator_target_property_is_valid(mpr_prop)) {
- WM_manipulator_target_property_value_set_array(C, mpr, mpr_prop, grab->prop_co);
+ wmGizmoProperty *mpr_prop = WM_gizmo_target_property_find(mpr, "offset");
+ if (WM_gizmo_target_property_is_valid(mpr_prop)) {
+ WM_gizmo_target_property_value_set_array(C, mpr, mpr_prop, grab->prop_co);
}
else {
zero_v3(grab->prop_co);
@@ -267,8 +267,8 @@ static int manipulator_grab_modal(
return OPERATOR_RUNNING_MODAL;
}
-static int manipulator_grab_invoke(
- bContext *UNUSED(C), wmManipulator *mpr, const wmEvent *event)
+static int gizmo_grab_invoke(
+ bContext *UNUSED(C), wmGizmo *mpr, const wmEvent *event)
{
GrabInteraction *inter = MEM_callocN(sizeof(GrabInteraction), __func__);
@@ -278,13 +278,13 @@ static int manipulator_grab_invoke(
#if 0
copy_v3_v3(inter->init_prop_co, grab->prop_co);
#else
- wmManipulatorProperty *mpr_prop = WM_manipulator_target_property_find(mpr, "offset");
- if (WM_manipulator_target_property_is_valid(mpr_prop)) {
- WM_manipulator_target_property_value_get_array(mpr, mpr_prop, inter->init_prop_co);
+ wmGizmoProperty *mpr_prop = WM_gizmo_target_property_find(mpr, "offset");
+ if (WM_gizmo_target_property_is_valid(mpr_prop)) {
+ WM_gizmo_target_property_value_get_array(mpr, mpr_prop, inter->init_prop_co);
}
#endif
- WM_manipulator_calc_matrix_final(mpr, inter->init_matrix_final);
+ WM_gizmo_calc_matrix_final(mpr, inter->init_matrix_final);
mpr->interaction_data = inter;
@@ -292,12 +292,12 @@ static int manipulator_grab_invoke(
}
-static int manipulator_grab_test_select(
- bContext *C, wmManipulator *mpr, const wmEvent *event)
+static int gizmo_grab_test_select(
+ bContext *C, wmGizmo *mpr, const wmEvent *event)
{
float point_local[2];
- if (manipulator_window_project_2d(
+ if (gizmo_window_project_2d(
C, mpr, (const float[2]){UNPACK2(event->mval)}, 2, true, point_local) == false)
{
return -1;
@@ -311,65 +311,65 @@ static int manipulator_grab_test_select(
return -1;
}
-static void manipulator_grab_property_update(wmManipulator *mpr, wmManipulatorProperty *mpr_prop)
+static void gizmo_grab_property_update(wmGizmo *mpr, wmGizmoProperty *mpr_prop)
{
- GrabManipulator3D *grab = (GrabManipulator3D *)mpr;
- if (WM_manipulator_target_property_is_valid(mpr_prop)) {
- WM_manipulator_target_property_value_get_array(mpr, mpr_prop, grab->prop_co);
+ GrabGizmo3D *grab = (GrabGizmo3D *)mpr;
+ if (WM_gizmo_target_property_is_valid(mpr_prop)) {
+ WM_gizmo_target_property_value_get_array(mpr, mpr_prop, grab->prop_co);
}
else {
zero_v3(grab->prop_co);
}
}
-static int manipulator_grab_cursor_get(wmManipulator *UNUSED(mpr))
+static int gizmo_grab_cursor_get(wmGizmo *UNUSED(mpr))
{
return BC_NSEW_SCROLLCURSOR;
}
/* -------------------------------------------------------------------- */
-/** \name Grab Manipulator API
+/** \name Grab Gizmo API
*
* \{ */
-static void MANIPULATOR_WT_grab_3d(wmManipulatorType *wt)
+static void GIZMO_WT_grab_3d(wmGizmoType *wt)
{
/* identifiers */
- wt->idname = "MANIPULATOR_WT_grab_3d";
+ wt->idname = "GIZMO_WT_grab_3d";
/* api callbacks */
- wt->draw = manipulator_grab_draw;
- wt->draw_select = manipulator_grab_draw_select;
- wt->test_select = manipulator_grab_test_select;
- wt->matrix_basis_get = manipulator_grab_matrix_basis_get;
- wt->invoke = manipulator_grab_invoke;
- wt->property_update = manipulator_grab_property_update;
- wt->modal = manipulator_grab_modal;
- wt->cursor_get = manipulator_grab_cursor_get;
+ wt->draw = gizmo_grab_draw;
+ wt->draw_select = gizmo_grab_draw_select;
+ wt->test_select = gizmo_grab_test_select;
+ wt->matrix_basis_get = gizmo_grab_matrix_basis_get;
+ wt->invoke = gizmo_grab_invoke;
+ wt->property_update = gizmo_grab_property_update;
+ wt->modal = gizmo_grab_modal;
+ wt->cursor_get = gizmo_grab_cursor_get;
- wt->struct_size = sizeof(GrabManipulator3D);
+ wt->struct_size = sizeof(GrabGizmo3D);
/* rna */
static EnumPropertyItem rna_enum_draw_style[] = {
- {ED_MANIPULATOR_GRAB_STYLE_RING_2D, "RING_2D", 0, "Ring", ""},
- {ED_MANIPULATOR_GRAB_STYLE_CROSS_2D, "CROSS_2D", 0, "Ring", ""},
+ {ED_GIZMO_GRAB_STYLE_RING_2D, "RING_2D", 0, "Ring", ""},
+ {ED_GIZMO_GRAB_STYLE_CROSS_2D, "CROSS_2D", 0, "Ring", ""},
{0, NULL, 0, NULL, NULL}
};
static EnumPropertyItem rna_enum_draw_options[] = {
- {ED_MANIPULATOR_GRAB_DRAW_FLAG_FILL, "FILL", 0, "Filled", ""},
- {ED_MANIPULATOR_GRAB_DRAW_FLAG_ALIGN_VIEW, "ALIGN_VIEW", 0, "Align View", ""},
+ {ED_GIZMO_GRAB_DRAW_FLAG_FILL, "FILL", 0, "Filled", ""},
+ {ED_GIZMO_GRAB_DRAW_FLAG_ALIGN_VIEW, "ALIGN_VIEW", 0, "Align View", ""},
{0, NULL, 0, NULL, NULL}
};
- RNA_def_enum(wt->srna, "draw_style", rna_enum_draw_style, ED_MANIPULATOR_GRAB_STYLE_RING_2D, "Draw Style", "");
+ RNA_def_enum(wt->srna, "draw_style", rna_enum_draw_style, ED_GIZMO_GRAB_STYLE_RING_2D, "Draw Style", "");
RNA_def_enum_flag(wt->srna, "draw_options", rna_enum_draw_options, 0, "Draw Options", "");
- WM_manipulatortype_target_property_def(wt, "offset", PROP_FLOAT, 3);
+ WM_gizmotype_target_property_def(wt, "offset", PROP_FLOAT, 3);
}
-void ED_manipulatortypes_grab_3d(void)
+void ED_gizmotypes_grab_3d(void)
{
- WM_manipulatortype_append(MANIPULATOR_WT_grab_3d);
+ WM_gizmotype_append(GIZMO_WT_grab_3d);
}
-/** \} */ // Grab Manipulator API
+/** \} */ // Grab Gizmo API
diff --git a/source/blender/editors/gizmo_library/gizmo_types/primitive3d_gizmo.c b/source/blender/editors/gizmo_library/gizmo_types/primitive3d_gizmo.c
index 1331a4e983f..ff02517dafa 100644
--- a/source/blender/editors/gizmo_library/gizmo_types/primitive3d_gizmo.c
+++ b/source/blender/editors/gizmo_library/gizmo_types/primitive3d_gizmo.c
@@ -21,11 +21,11 @@
/** \file primitive3d_gizmo.c
* \ingroup wm
*
- * \name Primitive Manipulator
+ * \name Primitive Gizmo
*
- * 3D Manipulator
+ * 3D Gizmo
*
- * \brief Manipulator with primitive drawing type (plane, cube, etc.).
+ * \brief Gizmo with primitive drawing type (plane, cube, etc.).
* Currently only plane primitive supported without own handling, use with operator only.
*/
@@ -65,13 +65,13 @@ static float verts_plane[4][3] = {
/* -------------------------------------------------------------------- */
-static void manipulator_primitive_draw_geom(
+static void gizmo_primitive_draw_geom(
const float col_inner[4], const float col_outer[4], const int draw_style)
{
float (*verts)[3];
uint vert_count = 0;
- if (draw_style == ED_MANIPULATOR_PRIMITIVE_STYLE_PLANE) {
+ if (draw_style == ED_GIZMO_PRIMITIVE_STYLE_PLANE) {
verts = verts_plane;
vert_count = ARRAY_SIZE(verts_plane);
}
@@ -79,37 +79,37 @@ static void manipulator_primitive_draw_geom(
if (vert_count > 0) {
uint pos = GWN_vertformat_attr_add(immVertexFormat(), "pos", GWN_COMP_F32, 3, GWN_FETCH_FLOAT);
immBindBuiltinProgram(GPU_SHADER_3D_UNIFORM_COLOR);
- wm_manipulator_vec_draw(col_inner, verts, vert_count, pos, GWN_PRIM_TRI_FAN);
- wm_manipulator_vec_draw(col_outer, verts, vert_count, pos, GWN_PRIM_LINE_LOOP);
+ wm_gizmo_vec_draw(col_inner, verts, vert_count, pos, GWN_PRIM_TRI_FAN);
+ wm_gizmo_vec_draw(col_outer, verts, vert_count, pos, GWN_PRIM_LINE_LOOP);
immUnbindProgram();
}
}
-static void manipulator_primitive_draw_intern(
- wmManipulator *mpr, const bool UNUSED(select),
+static void gizmo_primitive_draw_intern(
+ wmGizmo *mpr, const bool UNUSED(select),
const bool highlight)
{
float color_inner[4], color_outer[4];
float matrix_final[4][4];
const int draw_style = RNA_enum_get(mpr->ptr, "draw_style");
- manipulator_color_get(mpr, highlight, color_outer);
+ gizmo_color_get(mpr, highlight, color_outer);
copy_v4_v4(color_inner, color_outer);
color_inner[3] *= 0.5f;
- WM_manipulator_calc_matrix_final(mpr, matrix_final);
+ WM_gizmo_calc_matrix_final(mpr, matrix_final);
gpuPushMatrix();
gpuMultMatrix(matrix_final);
GPU_blend(true);
- manipulator_primitive_draw_geom(color_inner, color_outer, draw_style);
+ gizmo_primitive_draw_geom(color_inner, color_outer, draw_style);
GPU_blend(false);
gpuPopMatrix();
if (mpr->interaction_data) {
- ManipulatorInteraction *inter = mpr->interaction_data;
+ GizmoInteraction *inter = mpr->interaction_data;
copy_v4_fl(color_inner, 0.5f);
copy_v3_fl(color_outer, 0.5f);
@@ -119,39 +119,39 @@ static void manipulator_primitive_draw_intern(
gpuMultMatrix(inter->init_matrix_final);
GPU_blend(true);
- manipulator_primitive_draw_geom(color_inner, color_outer, draw_style);
+ gizmo_primitive_draw_geom(color_inner, color_outer, draw_style);
GPU_blend(false);
gpuPopMatrix();
}
}
-static void manipulator_primitive_draw_select(
- const bContext *UNUSED(C), wmManipulator *mpr,
+static void gizmo_primitive_draw_select(
+ const bContext *UNUSED(C), wmGizmo *mpr,
int select_id)
{
GPU_select_load_id(select_id);
- manipulator_primitive_draw_intern(mpr, true, false);
+ gizmo_primitive_draw_intern(mpr, true, false);
}
-static void manipulator_primitive_draw(const bContext *UNUSED(C), wmManipulator *mpr)
+static void gizmo_primitive_draw(const bContext *UNUSED(C), wmGizmo *mpr)
{
- manipulator_primitive_draw_intern(
+ gizmo_primitive_draw_intern(
mpr, false,
- (mpr->state & WM_MANIPULATOR_STATE_HIGHLIGHT));
+ (mpr->state & WM_GIZMO_STATE_HIGHLIGHT));
}
-static void manipulator_primitive_setup(wmManipulator *mpr)
+static void gizmo_primitive_setup(wmGizmo *mpr)
{
- mpr->flag |= WM_MANIPULATOR_DRAW_MODAL;
+ mpr->flag |= WM_GIZMO_DRAW_MODAL;
}
-static int manipulator_primitive_invoke(
- bContext *UNUSED(C), wmManipulator *mpr, const wmEvent *UNUSED(event))
+static int gizmo_primitive_invoke(
+ bContext *UNUSED(C), wmGizmo *mpr, const wmEvent *UNUSED(event))
{
- ManipulatorInteraction *inter = MEM_callocN(sizeof(ManipulatorInteraction), __func__);
+ GizmoInteraction *inter = MEM_callocN(sizeof(GizmoInteraction), __func__);
- WM_manipulator_calc_matrix_final(mpr, inter->init_matrix_final);
+ WM_gizmo_calc_matrix_final(mpr, inter->init_matrix_final);
mpr->interaction_data = inter;
@@ -159,33 +159,33 @@ static int manipulator_primitive_invoke(
}
/* -------------------------------------------------------------------- */
-/** \name Primitive Manipulator API
+/** \name Primitive Gizmo API
*
* \{ */
-static void MANIPULATOR_WT_primitive_3d(wmManipulatorType *wt)
+static void GIZMO_WT_primitive_3d(wmGizmoType *wt)
{
/* identifiers */
- wt->idname = "MANIPULATOR_WT_primitive_3d";
+ wt->idname = "GIZMO_WT_primitive_3d";
/* api callbacks */
- wt->draw = manipulator_primitive_draw;
- wt->draw_select = manipulator_primitive_draw_select;
- wt->setup = manipulator_primitive_setup;
- wt->invoke = manipulator_primitive_invoke;
+ wt->draw = gizmo_primitive_draw;
+ wt->draw_select = gizmo_primitive_draw_select;
+ wt->setup = gizmo_primitive_setup;
+ wt->invoke = gizmo_primitive_invoke;
- wt->struct_size = sizeof(wmManipulator);
+ wt->struct_size = sizeof(wmGizmo);
static EnumPropertyItem rna_enum_draw_style[] = {
- {ED_MANIPULATOR_PRIMITIVE_STYLE_PLANE, "PLANE", 0, "Plane", ""},
+ {ED_GIZMO_PRIMITIVE_STYLE_PLANE, "PLANE", 0, "Plane", ""},
{0, NULL, 0, NULL, NULL}
};
- RNA_def_enum(wt->srna, "draw_style", rna_enum_draw_style, ED_MANIPULATOR_PRIMITIVE_STYLE_PLANE, "Draw Style", "");
+ RNA_def_enum(wt->srna, "draw_style", rna_enum_draw_style, ED_GIZMO_PRIMITIVE_STYLE_PLANE, "Draw Style", "");
}
-void ED_manipulatortypes_primitive_3d(void)
+void ED_gizmotypes_primitive_3d(void)
{
- WM_manipulatortype_append(MANIPULATOR_WT_primitive_3d);
+ WM_gizmotype_append(GIZMO_WT_primitive_3d);
}
/** \} */
diff --git a/source/blender/editors/include/ED_gizmo_library.h b/source/blender/editors/include/ED_gizmo_library.h
index b33fbf47630..39a58929b7c 100644
--- a/source/blender/editors/include/ED_gizmo_library.h
+++ b/source/blender/editors/include/ED_gizmo_library.h
@@ -21,28 +21,28 @@
/** \file ED_gizmo_library.h
* \ingroup wm
*
- * \name Generic Manipulators.
+ * \name Generic Gizmos.
*
- * This is exposes pre-defined manipulators for re-use.
+ * This is exposes pre-defined gizmos for re-use.
*/
#ifndef __ED_GIZMO_LIBRARY_H__
#define __ED_GIZMO_LIBRARY_H__
-/* initialize manipulators */
-void ED_manipulatortypes_arrow_2d(void);
-void ED_manipulatortypes_arrow_3d(void);
-void ED_manipulatortypes_button_2d(void);
-void ED_manipulatortypes_cage_2d(void);
-void ED_manipulatortypes_cage_3d(void);
-void ED_manipulatortypes_dial_3d(void);
-void ED_manipulatortypes_grab_3d(void);
-void ED_manipulatortypes_facemap_3d(void);
-void ED_manipulatortypes_primitive_3d(void);
+/* initialize gizmos */
+void ED_gizmotypes_arrow_2d(void);
+void ED_gizmotypes_arrow_3d(void);
+void ED_gizmotypes_button_2d(void);
+void ED_gizmotypes_cage_2d(void);
+void ED_gizmotypes_cage_3d(void);
+void ED_gizmotypes_dial_3d(void);
+void ED_gizmotypes_grab_3d(void);
+void ED_gizmotypes_facemap_3d(void);
+void ED_gizmotypes_primitive_3d(void);
-struct wmManipulator;
-struct wmManipulatorGroup;
+struct wmGizmo;
+struct wmGizmoGroup;
/* -------------------------------------------------------------------- */
@@ -51,172 +51,172 @@ struct wmManipulatorGroup;
* Intended to be called by custom draw functions.
*/
-/* manipulator_library_presets.c */
-void ED_manipulator_draw_preset_box(
- const struct wmManipulator *mpr, float mat[4][4], int select_id);
-void ED_manipulator_draw_preset_arrow(
- const struct wmManipulator *mpr, float mat[4][4], int axis, int select_id);
-void ED_manipulator_draw_preset_circle(
- const struct wmManipulator *mpr, float mat[4][4], int axis, int select_id);
-void ED_manipulator_draw_preset_facemap(
- const struct bContext *C, const struct wmManipulator *mpr, struct Scene *scene,
+/* gizmo_library_presets.c */
+void ED_gizmo_draw_preset_box(
+ const struct wmGizmo *mpr, float mat[4][4], int select_id);
+void ED_gizmo_draw_preset_arrow(
+ const struct wmGizmo *mpr, float mat[4][4], int axis, int select_id);
+void ED_gizmo_draw_preset_circle(
+ const struct wmGizmo *mpr, float mat[4][4], int axis, int select_id);
+void ED_gizmo_draw_preset_facemap(
+ const struct bContext *C, const struct wmGizmo *mpr, struct Scene *scene,
struct Object *ob, const int facemap, int select_id);
/* -------------------------------------------------------------------- */
-/* 3D Arrow Manipulator */
+/* 3D Arrow Gizmo */
enum {
- ED_MANIPULATOR_ARROW_STYLE_NORMAL = 0,
- ED_MANIPULATOR_ARROW_STYLE_CROSS = 1,
- ED_MANIPULATOR_ARROW_STYLE_BOX = 2,
- ED_MANIPULATOR_ARROW_STYLE_CONE = 3,
+ ED_GIZMO_ARROW_STYLE_NORMAL = 0,
+ ED_GIZMO_ARROW_STYLE_CROSS = 1,
+ ED_GIZMO_ARROW_STYLE_BOX = 2,
+ ED_GIZMO_ARROW_STYLE_CONE = 3,
};
/* transform */
enum {
/* inverted offset during interaction - if set it also sets constrained below */
- ED_MANIPULATOR_ARROW_XFORM_FLAG_INVERTED = (1 << 3),
+ ED_GIZMO_ARROW_XFORM_FLAG_INVERTED = (1 << 3),
/* clamp arrow interaction to property width */
- ED_MANIPULATOR_ARROW_XFORM_FLAG_CONSTRAINED = (1 << 4),
+ ED_GIZMO_ARROW_XFORM_FLAG_CONSTRAINED = (1 << 4),
};
/* draw_options */
enum {
/* Show arrow stem. */
- ED_MANIPULATOR_ARROW_DRAW_FLAG_STEM = (1 << 0),
+ ED_GIZMO_ARROW_DRAW_FLAG_STEM = (1 << 0),
};
-void ED_manipulator_arrow3d_set_ui_range(struct wmManipulator *mpr, const float min, const float max);
-void ED_manipulator_arrow3d_set_range_fac(struct wmManipulator *mpr, const float range_fac);
+void ED_gizmo_arrow3d_set_ui_range(struct wmGizmo *mpr, const float min, const float max);
+void ED_gizmo_arrow3d_set_range_fac(struct wmGizmo *mpr, const float range_fac);
/* -------------------------------------------------------------------- */
-/* 2D Arrow Manipulator */
+/* 2D Arrow Gizmo */
/* none */
/* -------------------------------------------------------------------- */
-/* Cage Manipulator */
+/* Cage Gizmo */
enum {
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_TRANSLATE = (1 << 0), /* Translates */
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_ROTATE = (1 << 1), /* Rotates */
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE = (1 << 2), /* Scales */
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE_UNIFORM = (1 << 3), /* Scales uniformly */
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE_SIGNED = (1 << 4), /* Negative scale allowed */
+ ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE = (1 << 0), /* Translates */
+ ED_GIZMO_CAGE2D_XFORM_FLAG_ROTATE = (1 << 1), /* Rotates */
+ ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE = (1 << 2), /* Scales */
+ ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE_UNIFORM = (1 << 3), /* Scales uniformly */
+ ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE_SIGNED = (1 << 4), /* Negative scale allowed */
};
/* draw_style */
enum {
- ED_MANIPULATOR_CAGE2D_STYLE_BOX = 0,
- ED_MANIPULATOR_CAGE2D_STYLE_CIRCLE = 1,
+ ED_GIZMO_CAGE2D_STYLE_BOX = 0,
+ ED_GIZMO_CAGE2D_STYLE_CIRCLE = 1,
};
/* draw_options */
enum {
/** Draw a central handle (instead of having the entire area selectable)
* Needed for large rectangles that we don't want to swallow all events. */
- ED_MANIPULATOR_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE = (1 << 0),
+ ED_GIZMO_CAGE2D_DRAW_FLAG_XFORM_CENTER_HANDLE = (1 << 0),
};
-/** #wmManipulator.highlight_part */
+/** #wmGizmo.highlight_part */
enum {
- ED_MANIPULATOR_CAGE2D_PART_TRANSLATE = 0,
- ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X = 1,
- ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X = 2,
- ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_Y = 3,
- ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_Y = 4,
+ ED_GIZMO_CAGE2D_PART_TRANSLATE = 0,
+ ED_GIZMO_CAGE2D_PART_SCALE_MIN_X = 1,
+ ED_GIZMO_CAGE2D_PART_SCALE_MAX_X = 2,
+ ED_GIZMO_CAGE2D_PART_SCALE_MIN_Y = 3,
+ ED_GIZMO_CAGE2D_PART_SCALE_MAX_Y = 4,
/* Corners */
- ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X_MIN_Y = 5,
- ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X_MAX_Y = 6,
- ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X_MIN_Y = 7,
- ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X_MAX_Y = 8,
+ ED_GIZMO_CAGE2D_PART_SCALE_MIN_X_MIN_Y = 5,
+ ED_GIZMO_CAGE2D_PART_SCALE_MIN_X_MAX_Y = 6,
+ ED_GIZMO_CAGE2D_PART_SCALE_MAX_X_MIN_Y = 7,
+ ED_GIZMO_CAGE2D_PART_SCALE_MAX_X_MAX_Y = 8,
- ED_MANIPULATOR_CAGE2D_PART_ROTATE = 9,
+ ED_GIZMO_CAGE2D_PART_ROTATE = 9,
};
-/** #wmManipulator.highlight_part */
+/** #wmGizmo.highlight_part */
enum {
/* ordered min/mid/max so we can loop over values (MIN/MID/MAX) on each axis. */
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MIN_Z = 0,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MID_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MAX_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MIN_X_MID_Y_MIN_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MIN_X_MID_Y_MID_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MIN_X_MID_Y_MAX_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MIN_X_MAX_Y_MIN_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MIN_X_MAX_Y_MID_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MIN_X_MAX_Y_MAX_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MID_X_MIN_Y_MIN_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MID_X_MIN_Y_MID_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MID_X_MIN_Y_MAX_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MID_X_MID_Y_MIN_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MID_X_MID_Y_MID_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MID_X_MID_Y_MAX_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MID_X_MAX_Y_MIN_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MID_X_MAX_Y_MID_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MID_X_MAX_Y_MAX_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MAX_X_MIN_Y_MIN_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MAX_X_MIN_Y_MID_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MAX_X_MIN_Y_MAX_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MAX_X_MID_Y_MIN_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MAX_X_MID_Y_MID_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MAX_X_MID_Y_MAX_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MAX_X_MAX_Y_MIN_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MAX_X_MAX_Y_MID_Z,
- ED_MANIPULATOR_CAGE3D_PART_SCALE_MAX_X_MAX_Y_MAX_Z,
-
- ED_MANIPULATOR_CAGE3D_PART_TRANSLATE,
-
- ED_MANIPULATOR_CAGE3D_PART_ROTATE,
+ ED_GIZMO_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MIN_Z = 0,
+ ED_GIZMO_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MID_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MAX_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MIN_X_MID_Y_MIN_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MIN_X_MID_Y_MID_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MIN_X_MID_Y_MAX_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MIN_X_MAX_Y_MIN_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MIN_X_MAX_Y_MID_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MIN_X_MAX_Y_MAX_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MID_X_MIN_Y_MIN_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MID_X_MIN_Y_MID_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MID_X_MIN_Y_MAX_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MID_X_MID_Y_MIN_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MID_X_MID_Y_MID_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MID_X_MID_Y_MAX_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MID_X_MAX_Y_MIN_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MID_X_MAX_Y_MID_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MID_X_MAX_Y_MAX_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MAX_X_MIN_Y_MIN_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MAX_X_MIN_Y_MID_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MAX_X_MIN_Y_MAX_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MAX_X_MID_Y_MIN_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MAX_X_MID_Y_MID_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MAX_X_MID_Y_MAX_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MAX_X_MAX_Y_MIN_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MAX_X_MAX_Y_MID_Z,
+ ED_GIZMO_CAGE3D_PART_SCALE_MAX_X_MAX_Y_MAX_Z,
+
+ ED_GIZMO_CAGE3D_PART_TRANSLATE,
+
+ ED_GIZMO_CAGE3D_PART_ROTATE,
};
/* -------------------------------------------------------------------- */
-/* Dial Manipulator */
+/* Dial Gizmo */
/* draw_options */
enum {
- ED_MANIPULATOR_DIAL_DRAW_FLAG_NOP = 0,
- ED_MANIPULATOR_DIAL_DRAW_FLAG_CLIP = (1 << 0),
- ED_MANIPULATOR_DIAL_DRAW_FLAG_FILL = (1 << 1),
- ED_MANIPULATOR_DIAL_DRAW_FLAG_ANGLE_MIRROR = (1 << 2),
- ED_MANIPULATOR_DIAL_DRAW_FLAG_ANGLE_START_Y = (1 << 3),
+ ED_GIZMO_DIAL_DRAW_FLAG_NOP = 0,
+ ED_GIZMO_DIAL_DRAW_FLAG_CLIP = (1 << 0),
+ ED_GIZMO_DIAL_DRAW_FLAG_FILL = (1 << 1),
+ ED_GIZMO_DIAL_DRAW_FLAG_ANGLE_MIRROR = (1 << 2),
+ ED_GIZMO_DIAL_DRAW_FLAG_ANGLE_START_Y = (1 << 3),
};
/* -------------------------------------------------------------------- */
-/* Grab Manipulator */
+/* Grab Gizmo */
/* draw_options */
enum {
- ED_MANIPULATOR_GRAB_DRAW_FLAG_NOP = 0,
+ ED_GIZMO_GRAB_DRAW_FLAG_NOP = 0,
/* only for solid shapes */
- ED_MANIPULATOR_GRAB_DRAW_FLAG_FILL = (1 << 0),
- ED_MANIPULATOR_GRAB_DRAW_FLAG_ALIGN_VIEW = (1 << 1),
+ ED_GIZMO_GRAB_DRAW_FLAG_FILL = (1 << 0),
+ ED_GIZMO_GRAB_DRAW_FLAG_ALIGN_VIEW = (1 << 1),
};
enum {
- ED_MANIPULATOR_GRAB_STYLE_RING_2D = 0,
- ED_MANIPULATOR_GRAB_STYLE_CROSS_2D = 1,
+ ED_GIZMO_GRAB_STYLE_RING_2D = 0,
+ ED_GIZMO_GRAB_STYLE_CROSS_2D = 1,
};
/* -------------------------------------------------------------------- */
-/* Button Manipulator */
+/* Button Gizmo */
enum {
- ED_MANIPULATOR_BUTTON_SHOW_OUTLINE = (1 << 0),
+ ED_GIZMO_BUTTON_SHOW_OUTLINE = (1 << 0),
/**
* Draw a line from the origin to the offset (similar to an arrow)
* sometimes needed to show what the button edits.
*/
- ED_MANIPULATOR_BUTTON_SHOW_HELPLINE = (1 << 1),
+ ED_GIZMO_BUTTON_SHOW_HELPLINE = (1 << 1),
};
/* -------------------------------------------------------------------- */
-/* Primitive Manipulator */
+/* Primitive Gizmo */
enum {
- ED_MANIPULATOR_PRIMITIVE_STYLE_PLANE = 0,
+ ED_GIZMO_PRIMITIVE_STYLE_PLANE = 0,
};
#endif /* __ED_GIZMO_LIBRARY_H__ */
diff --git a/source/blender/editors/include/ED_transform.h b/source/blender/editors/include/ED_transform.h
index 1e3c8995314..80dea103f8c 100644
--- a/source/blender/editors/include/ED_transform.h
+++ b/source/blender/editors/include/ED_transform.h
@@ -113,8 +113,8 @@ bool calculateTransformCenter(struct bContext *C, int centerMode, float cent3d[3
struct TransInfo;
struct Scene;
struct Object;
-struct wmManipulatorGroup;
-struct wmManipulatorGroupType;
+struct wmGizmoGroup;
+struct wmGizmoGroupType;
struct wmOperator;
/* UNUSED */
@@ -157,15 +157,15 @@ int BIF_countTransformOrientation(const struct bContext *C);
void Transform_Properties(struct wmOperatorType *ot, int flags);
-/* transform manipulators */
+/* transform gizmos */
-void TRANSFORM_WGT_manipulator(struct wmManipulatorGroupType *wgt);
-void VIEW3D_WGT_xform_cage(struct wmManipulatorGroupType *wgt);
+void TRANSFORM_WGT_gizmo(struct wmGizmoGroupType *wgt);
+void VIEW3D_WGT_xform_cage(struct wmGizmoGroupType *wgt);
-bool ED_widgetgroup_manipulator2d_poll(const struct bContext *C, struct wmManipulatorGroupType *wgt);
-void ED_widgetgroup_manipulator2d_setup(const struct bContext *C, struct wmManipulatorGroup *mgroup);
-void ED_widgetgroup_manipulator2d_refresh(const struct bContext *C, struct wmManipulatorGroup *mgroup);
-void ED_widgetgroup_manipulator2d_draw_prepare(const struct bContext *C, struct wmManipulatorGroup *mgroup);
+bool ED_widgetgroup_gizmo2d_poll(const struct bContext *C, struct wmGizmoGroupType *wgt);
+void ED_widgetgroup_gizmo2d_setup(const struct bContext *C, struct wmGizmoGroup *mgroup);
+void ED_widgetgroup_gizmo2d_refresh(const struct bContext *C, struct wmGizmoGroup *mgroup);
+void ED_widgetgroup_gizmo2d_draw_prepare(const struct bContext *C, struct wmGizmoGroup *mgroup);
/* Snapping */
@@ -211,7 +211,7 @@ struct TransformCalcParams {
/* Use 'Scene.orientation_type' when zero, otherwise subtract one and use. */
ushort orientation_type;
};
-int ED_transform_calc_manipulator_stats(
+int ED_transform_calc_gizmo_stats(
const struct bContext *C,
const struct TransformCalcParams *params,
struct TransformBounds *tbounds);
diff --git a/source/blender/editors/include/UI_interface.h b/source/blender/editors/include/UI_interface.h
index 251f2b92acd..723dde640e4 100644
--- a/source/blender/editors/include/UI_interface.h
+++ b/source/blender/editors/include/UI_interface.h
@@ -73,7 +73,7 @@ struct bNodeSocket;
struct wmDropBox;
struct wmDrag;
struct wmEvent;
-struct wmManipulator;
+struct wmGizmo;
struct wmMsgBus;
struct wmKeyMap;
struct wmKeyMapItem;
@@ -1265,7 +1265,7 @@ void UI_butstore_unregister(uiButStore *bs_handle, uiBut **but_p);
/* ui_interface_region_tooltip.c */
struct ARegion *UI_tooltip_create_from_button(struct bContext *C, struct ARegion *butregion, uiBut *but);
-struct ARegion *UI_tooltip_create_from_manipulator(struct bContext *C, struct wmManipulator *mpr);
+struct ARegion *UI_tooltip_create_from_gizmo(struct bContext *C, struct wmGizmo *mpr);
void UI_tooltip_free(struct bContext *C, struct bScreen *sc, struct ARegion *ar);
/* How long before a tool-tip shows. */
diff --git a/source/blender/editors/include/UI_resources.h b/source/blender/editors/include/UI_resources.h
index 5e6c346d9cf..d2fbb881a0a 100644
--- a/source/blender/editors/include/UI_resources.h
+++ b/source/blender/editors/include/UI_resources.h
@@ -280,11 +280,11 @@ typedef enum ThemeColorID {
TH_AXIS_Y,
TH_AXIS_Z,
- TH_MANIPULATOR_HI,
- TH_MANIPULATOR_PRIMARY,
- TH_MANIPULATOR_SECONDARY,
- TH_MANIPULATOR_A,
- TH_MANIPULATOR_B,
+ TH_GIZMO_HI,
+ TH_GIZMO_PRIMARY,
+ TH_GIZMO_SECONDARY,
+ TH_GIZMO_A,
+ TH_GIZMO_B,
TH_LOW_GRAD,
TH_HIGH_GRAD,
diff --git a/source/blender/editors/interface/interface_region_tooltip.c b/source/blender/editors/interface/interface_region_tooltip.c
index ed83a715c7e..fae547d460c 100644
--- a/source/blender/editors/interface/interface_region_tooltip.c
+++ b/source/blender/editors/interface/interface_region_tooltip.c
@@ -615,11 +615,11 @@ static uiTooltipData *ui_tooltip_data_from_button(bContext *C, uiBut *but)
}
}
-static uiTooltipData *ui_tooltip_data_from_manipulator(bContext *C, wmManipulator *mpr)
+static uiTooltipData *ui_tooltip_data_from_gizmo(bContext *C, wmGizmo *mpr)
{
uiTooltipData *data = MEM_callocN(sizeof(uiTooltipData), "uiTooltipData");
- /* TODO(campbell): a way for manipulators to have their own descriptions (low priority). */
+ /* TODO(campbell): a way for gizmos to have their own descriptions (low priority). */
/* Operator Actions */
{
@@ -639,7 +639,7 @@ static uiTooltipData *ui_tooltip_data_from_manipulator(bContext *C, wmManipulato
};
for (int i = 0; i < ARRAY_SIZE(mpop_actions); i++) {
- wmManipulatorOpElem *mpop = (mpop_actions[i].part != -1) ? WM_manipulator_operator_get(mpr, mpop_actions[i].part) : NULL;
+ wmGizmoOpElem *mpop = (mpop_actions[i].part != -1) ? WM_gizmo_operator_get(mpr, mpop_actions[i].part) : NULL;
if (mpop != NULL) {
/* Description */
const char *info = RNA_struct_ui_description(mpop->type->srna);
@@ -692,10 +692,10 @@ static uiTooltipData *ui_tooltip_data_from_manipulator(bContext *C, wmManipulato
/* Property Actions */
if (mpr->type->target_property_defs_len) {
- wmManipulatorProperty *mpr_prop_array = WM_manipulator_target_property_array(mpr);
+ wmGizmoProperty *mpr_prop_array = WM_gizmo_target_property_array(mpr);
for (int i = 0; i < mpr->type->target_property_defs_len; i++) {
/* TODO(campbell): function callback descriptions. */
- wmManipulatorProperty *mpr_prop = &mpr_prop_array[i];
+ wmGizmoProperty *mpr_prop = &mpr_prop_array[i];
if (mpr_prop->prop != NULL) {
const char *info = RNA_property_ui_description(mpr_prop->prop);
if (info && info[0]) {
@@ -934,13 +934,13 @@ ARegion *UI_tooltip_create_from_button(bContext *C, ARegion *butregion, uiBut *b
return ui_tooltip_create_with_data(C, data, init_position, aspect);
}
-ARegion *UI_tooltip_create_from_manipulator(bContext *C, wmManipulator *mpr)
+ARegion *UI_tooltip_create_from_gizmo(bContext *C, wmGizmo *mpr)
{
wmWindow *win = CTX_wm_window(C);
const float aspect = 1.0f;
float init_position[2];
- uiTooltipData *data = ui_tooltip_data_from_manipulator(C, mpr);
+ uiTooltipData *data = ui_tooltip_data_from_gizmo(C, mpr);
if (data == NULL) {
return NULL;
}
diff --git a/source/blender/editors/interface/resources.c b/source/blender/editors/interface/resources.c
index a2b1aa1f251..47d664eaeb2 100644
--- a/source/blender/editors/interface/resources.c
+++ b/source/blender/editors/interface/resources.c
@@ -679,16 +679,16 @@ const unsigned char *UI_ThemeGetColorPtr(bTheme *btheme, int spacetype, int colo
case TH_AXIS_Z:
cp = btheme->tui.zaxis; break;
- case TH_MANIPULATOR_HI:
- cp = btheme->tui.manipulator_hi; break;
- case TH_MANIPULATOR_PRIMARY:
- cp = btheme->tui.manipulator_primary; break;
- case TH_MANIPULATOR_SECONDARY:
- cp = btheme->tui.manipulator_secondary; break;
- case TH_MANIPULATOR_A:
- cp = btheme->tui.manipulator_a; break;
- case TH_MANIPULATOR_B:
- cp = btheme->tui.manipulator_b; break;
+ case TH_GIZMO_HI:
+ cp = btheme->tui.gizmo_hi; break;
+ case TH_GIZMO_PRIMARY:
+ cp = btheme->tui.gizmo_primary; break;
+ case TH_GIZMO_SECONDARY:
+ cp = btheme->tui.gizmo_secondary; break;
+ case TH_GIZMO_A:
+ cp = btheme->tui.gizmo_a; break;
+ case TH_GIZMO_B:
+ cp = btheme->tui.gizmo_b; break;
case TH_INFO_SELECTED:
cp = ts->info_selected;
@@ -1338,9 +1338,9 @@ void init_userdef_do_versions(Main *bmain)
U.savetime = 1;
// XXX error(STRINGIFY(BLENDER_STARTUP_FILE)" is buggy, please consider removing it.\n");
}
- if (U.manipulator_size == 0) {
- U.manipulator_size = 75;
- U.manipulator_flag |= USER_MANIPULATOR_DRAW;
+ if (U.gizmo_size == 0) {
+ U.gizmo_size = 75;
+ U.gizmo_flag |= USER_GIZMO_DRAW;
}
if (U.pad_rot_angle == 0.0f)
U.pad_rot_angle = 15.0f;
@@ -1383,7 +1383,7 @@ void init_userdef_do_versions(Main *bmain)
if (U.rvisize == 0) {
U.rvisize = 15;
U.rvibright = 8;
- U.uiflag |= USER_SHOW_MANIPULATOR_AXIS;
+ U.uiflag |= USER_SHOW_GIZMO_AXIS;
}
}
diff --git a/source/blender/editors/mesh/editmesh_add_gizmo.c b/source/blender/editors/mesh/editmesh_add_gizmo.c
index 3918d8847a6..be5c01e08df 100644
--- a/source/blender/editors/mesh/editmesh_add_gizmo.c
+++ b/source/blender/editors/mesh/editmesh_add_gizmo.c
@@ -21,7 +21,7 @@
/** \file blender/editors/mesh/editmesh_add_gizmo.c
* \ingroup edmesh
*
- * Creation manipulators.
+ * Creation gizmos.
*/
#include "MEM_guardedalloc.h"
@@ -123,24 +123,24 @@ static void calc_initial_placement_point_from_view(
/** \} */
/* -------------------------------------------------------------------- */
-/** \name Placement Manipulator
+/** \name Placement Gizmo
* \{ */
-typedef struct ManipulatorPlacementGroup {
- struct wmManipulator *cage;
+typedef struct GizmoPlacementGroup {
+ struct wmGizmo *cage;
struct {
bContext *context;
wmOperator *op;
PropertyRNA *prop_matrix;
} data;
-} ManipulatorPlacementGroup;
+} GizmoPlacementGroup;
/**
* \warning Calling redo from property updates is not great.
* This is needed because changing the RNA doesn't cause a redo
* and we're not using operator UI which does just this.
*/
-static void manipulator_placement_exec(ManipulatorPlacementGroup *man)
+static void gizmo_placement_exec(GizmoPlacementGroup *man)
{
wmOperator *op = man->data.op;
if (op == WM_operator_last_redo((bContext *)man->data.context)) {
@@ -148,7 +148,7 @@ static void manipulator_placement_exec(ManipulatorPlacementGroup *man)
}
}
-static void manipulator_mesh_placement_update_from_op(ManipulatorPlacementGroup *man)
+static void gizmo_mesh_placement_update_from_op(GizmoPlacementGroup *man)
{
wmOperator *op = man->data.op;
UNUSED_VARS(op);
@@ -159,11 +159,11 @@ static void manipulator_mesh_placement_update_from_op(ManipulatorPlacementGroup
}
/* translate callbacks */
-static void manipulator_placement_prop_matrix_get(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_placement_prop_matrix_get(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
void *value_p)
{
- ManipulatorPlacementGroup *man = mpr->parent_mgroup->customdata;
+ GizmoPlacementGroup *man = mpr->parent_mgroup->customdata;
wmOperator *op = man->data.op;
float *value = value_p;
BLI_assert(mpr_prop->type->array_length == 16);
@@ -175,11 +175,11 @@ static void manipulator_placement_prop_matrix_get(
}
}
-static void manipulator_placement_prop_matrix_set(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_placement_prop_matrix_set(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
const void *value)
{
- ManipulatorPlacementGroup *man = mpr->parent_mgroup->customdata;
+ GizmoPlacementGroup *man = mpr->parent_mgroup->customdata;
wmOperator *op = man->data.op;
BLI_assert(mpr_prop->type->array_length == 16);
@@ -194,30 +194,30 @@ static void manipulator_placement_prop_matrix_set(
RNA_property_float_set_array(op->ptr, man->data.prop_matrix, &mat[0][0]);
- manipulator_placement_exec(man);
+ gizmo_placement_exec(man);
}
-static bool manipulator_mesh_placement_poll(const bContext *C, wmManipulatorGroupType *wgt)
+static bool gizmo_mesh_placement_poll(const bContext *C, wmGizmoGroupType *wgt)
{
wmOperator *op = WM_operator_last_redo(C);
- if (op == NULL || !STREQ(op->type->idname, "MESH_OT_primitive_cube_add_manipulator")) {
- WM_manipulator_group_type_unlink_delayed_ptr(wgt);
+ if (op == NULL || !STREQ(op->type->idname, "MESH_OT_primitive_cube_add_gizmo")) {
+ WM_gizmo_group_type_unlink_delayed_ptr(wgt);
return false;
}
return true;
}
-static void manipulator_mesh_placement_modal_from_setup(
- const bContext *C, wmManipulatorGroup *mgroup)
+static void gizmo_mesh_placement_modal_from_setup(
+ const bContext *C, wmGizmoGroup *mgroup)
{
- ManipulatorPlacementGroup *man = mgroup->customdata;
+ GizmoPlacementGroup *man = mgroup->customdata;
/* Initial size. */
{
- wmManipulator *mpr = man->cage;
+ wmGizmo *mpr = man->cage;
zero_m4(mpr->matrix_offset);
- /* TODO: support zero scaled matrix in 'MANIPULATOR_WT_cage_3d'. */
+ /* TODO: support zero scaled matrix in 'GIZMO_WT_cage_3d'. */
mpr->matrix_offset[0][0] = 0.01;
mpr->matrix_offset[1][1] = 0.01;
mpr->matrix_offset[2][2] = 0.01;
@@ -228,7 +228,7 @@ static void manipulator_mesh_placement_modal_from_setup(
{
wmWindow *win = CTX_wm_window(C);
ARegion *ar = CTX_wm_region(C);
- wmManipulator *mpr = man->cage;
+ wmGizmo *mpr = man->cage;
{
float mat3[3][3];
@@ -244,87 +244,87 @@ static void manipulator_mesh_placement_modal_from_setup(
}
if (1) {
- wmManipulatorMap *mmap = mgroup->parent_mmap;
- WM_manipulator_modal_set_from_setup(
- mmap, (bContext *)C, man->cage, ED_MANIPULATOR_CAGE3D_PART_SCALE_MAX_X_MAX_Y_MAX_Z, win->eventstate);
+ wmGizmoMap *mmap = mgroup->parent_mmap;
+ WM_gizmo_modal_set_from_setup(
+ mmap, (bContext *)C, man->cage, ED_GIZMO_CAGE3D_PART_SCALE_MAX_X_MAX_Y_MAX_Z, win->eventstate);
}
}
}
-static void manipulator_mesh_placement_setup(const bContext *C, wmManipulatorGroup *mgroup)
+static void gizmo_mesh_placement_setup(const bContext *C, wmGizmoGroup *mgroup)
{
wmOperator *op = WM_operator_last_redo(C);
- if (op == NULL || !STREQ(op->type->idname, "MESH_OT_primitive_cube_add_manipulator")) {
+ if (op == NULL || !STREQ(op->type->idname, "MESH_OT_primitive_cube_add_gizmo")) {
return;
}
- struct ManipulatorPlacementGroup *man = MEM_callocN(sizeof(ManipulatorPlacementGroup), __func__);
+ struct GizmoPlacementGroup *man = MEM_callocN(sizeof(GizmoPlacementGroup), __func__);
mgroup->customdata = man;
- const wmManipulatorType *wt_cage = WM_manipulatortype_find("MANIPULATOR_WT_cage_3d", true);
+ const wmGizmoType *wt_cage = WM_gizmotype_find("GIZMO_WT_cage_3d", true);
- man->cage = WM_manipulator_new_ptr(wt_cage, mgroup, NULL);
+ man->cage = WM_gizmo_new_ptr(wt_cage, mgroup, NULL);
- UI_GetThemeColor3fv(TH_MANIPULATOR_PRIMARY, man->cage->color);
+ UI_GetThemeColor3fv(TH_GIZMO_PRIMARY, man->cage->color);
RNA_enum_set(man->cage->ptr, "transform",
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE |
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_TRANSLATE |
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE_SIGNED);
+ ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE |
+ ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE |
+ ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE_SIGNED);
- WM_manipulator_set_flag(man->cage, WM_MANIPULATOR_DRAW_VALUE, true);
+ WM_gizmo_set_flag(man->cage, WM_GIZMO_DRAW_VALUE, true);
man->data.context = (bContext *)C;
man->data.op = op;
man->data.prop_matrix = RNA_struct_find_property(op->ptr, "matrix");
- manipulator_mesh_placement_update_from_op(man);
+ gizmo_mesh_placement_update_from_op(man);
/* Setup property callbacks */
{
- WM_manipulator_target_property_def_func(
+ WM_gizmo_target_property_def_func(
man->cage, "matrix",
- &(const struct wmManipulatorPropertyFnParams) {
- .value_get_fn = manipulator_placement_prop_matrix_get,
- .value_set_fn = manipulator_placement_prop_matrix_set,
+ &(const struct wmGizmoPropertyFnParams) {
+ .value_get_fn = gizmo_placement_prop_matrix_get,
+ .value_set_fn = gizmo_placement_prop_matrix_set,
.range_get_fn = NULL,
.user_data = NULL,
});
}
- manipulator_mesh_placement_modal_from_setup(C, mgroup);
+ gizmo_mesh_placement_modal_from_setup(C, mgroup);
}
-static void manipulator_mesh_placement_draw_prepare(
- const bContext *UNUSED(C), wmManipulatorGroup *mgroup)
+static void gizmo_mesh_placement_draw_prepare(
+ const bContext *UNUSED(C), wmGizmoGroup *mgroup)
{
- ManipulatorPlacementGroup *man = mgroup->customdata;
+ GizmoPlacementGroup *man = mgroup->customdata;
if (man->data.op->next) {
man->data.op = WM_operator_last_redo((bContext *)man->data.context);
}
- manipulator_mesh_placement_update_from_op(man);
+ gizmo_mesh_placement_update_from_op(man);
}
-static void MESH_WGT_add_bounds(struct wmManipulatorGroupType *wgt)
+static void MESH_WGT_add_bounds(struct wmGizmoGroupType *wgt)
{
wgt->name = "Mesh Add Bounds";
wgt->idname = "MESH_WGT_add_bounds";
- wgt->flag = WM_MANIPULATORGROUPTYPE_3D;
+ wgt->flag = WM_GIZMOGROUPTYPE_3D;
wgt->mmap_params.spaceid = SPACE_VIEW3D;
wgt->mmap_params.regionid = RGN_TYPE_WINDOW;
- wgt->poll = manipulator_mesh_placement_poll;
- wgt->setup = manipulator_mesh_placement_setup;
- wgt->draw_prepare = manipulator_mesh_placement_draw_prepare;
+ wgt->poll = gizmo_mesh_placement_poll;
+ wgt->setup = gizmo_mesh_placement_setup;
+ wgt->draw_prepare = gizmo_mesh_placement_draw_prepare;
}
/** \} */
/* -------------------------------------------------------------------- */
-/** \name Add Cube Manipulator-Operator
+/** \name Add Cube Gizmo-Operator
*
* For now we use a separate operator to add a cube,
* we can try to merge then however they are invoked differently
@@ -332,13 +332,13 @@ static void MESH_WGT_add_bounds(struct wmManipulatorGroupType *wgt)
* \{ */
-static int add_primitive_cube_manipulator_exec(bContext *C, wmOperator *op)
+static int add_primitive_cube_gizmo_exec(bContext *C, wmOperator *op)
{
Object *obedit = CTX_data_edit_object(C);;
BMEditMesh *em = BKE_editmesh_from_object(obedit);
float matrix[4][4];
- /* Get the matrix that defines the cube bounds (as set by the manipulator cage). */
+ /* Get the matrix that defines the cube bounds (as set by the gizmo cage). */
{
PropertyRNA *prop_matrix = RNA_struct_find_property(op->ptr, "matrix");
if (RNA_property_is_set(op->ptr, prop_matrix)) {
@@ -372,25 +372,25 @@ static int add_primitive_cube_manipulator_exec(bContext *C, wmOperator *op)
return OPERATOR_FINISHED;
}
-static int add_primitive_cube_manipulator_invoke(bContext *C, wmOperator *op, const wmEvent *UNUSED(event))
+static int add_primitive_cube_gizmo_invoke(bContext *C, wmOperator *op, const wmEvent *UNUSED(event))
{
View3D *v3d = CTX_wm_view3d(C);
- int ret = add_primitive_cube_manipulator_exec(C, op);
+ int ret = add_primitive_cube_gizmo_exec(C, op);
if (ret & OPERATOR_FINISHED) {
- /* Setup manipulators */
- if (v3d && ((v3d->mpr_flag & V3D_MANIPULATOR_HIDE) == 0)) {
+ /* Setup gizmos */
+ if (v3d && ((v3d->mpr_flag & V3D_GIZMO_HIDE) == 0)) {
ARegion *ar = CTX_wm_region(C);
- wmManipulatorMap *mmap = ar->manipulator_map;
- wmManipulatorGroupType *wgt = WM_manipulatorgrouptype_find("MESH_WGT_add_bounds", false);
- wmManipulatorGroup *mgroup = WM_manipulatormap_group_find_ptr(mmap, wgt);
+ wmGizmoMap *mmap = ar->gizmo_map;
+ wmGizmoGroupType *wgt = WM_gizmogrouptype_find("MESH_WGT_add_bounds", false);
+ wmGizmoGroup *mgroup = WM_gizmomap_group_find_ptr(mmap, wgt);
if (mgroup != NULL) {
- ManipulatorPlacementGroup *man = mgroup->customdata;
+ GizmoPlacementGroup *man = mgroup->customdata;
man->data.op = op;
- manipulator_mesh_placement_modal_from_setup(C, mgroup);
+ gizmo_mesh_placement_modal_from_setup(C, mgroup);
}
else {
- WM_manipulator_group_type_ensure_ptr(wgt);
+ WM_gizmo_group_type_ensure_ptr(wgt);
}
}
}
@@ -398,16 +398,16 @@ static int add_primitive_cube_manipulator_invoke(bContext *C, wmOperator *op, co
return ret;
}
-void MESH_OT_primitive_cube_add_manipulator(wmOperatorType *ot)
+void MESH_OT_primitive_cube_add_gizmo(wmOperatorType *ot)
{
/* identifiers */
ot->name = "Add Cube";
ot->description = "Construct a cube mesh";
- ot->idname = "MESH_OT_primitive_cube_add_manipulator";
+ ot->idname = "MESH_OT_primitive_cube_add_gizmo";
/* api callbacks */
- ot->invoke = add_primitive_cube_manipulator_invoke;
- ot->exec = add_primitive_cube_manipulator_exec;
+ ot->invoke = add_primitive_cube_gizmo_invoke;
+ ot->exec = add_primitive_cube_gizmo_exec;
ot->poll = ED_operator_editmesh_view3d;
/* flags */
@@ -420,7 +420,7 @@ void MESH_OT_primitive_cube_add_manipulator(wmOperatorType *ot)
PropertyRNA *prop = RNA_def_float_matrix(ot->srna, "matrix", 4, 4, NULL, 0.0f, 0.0f, "Matrix", "", 0.0f, 0.0f);
RNA_def_property_flag(prop, PROP_HIDDEN | PROP_SKIP_SAVE);
- WM_manipulatorgrouptype_append(MESH_WGT_add_bounds);
+ WM_gizmogrouptype_append(MESH_WGT_add_bounds);
}
/** \} */
diff --git a/source/blender/editors/mesh/editmesh_bevel.c b/source/blender/editors/mesh/editmesh_bevel.c
index 58246a60362..b73ce410626 100644
--- a/source/blender/editors/mesh/editmesh_bevel.c
+++ b/source/blender/editors/mesh/editmesh_bevel.c
@@ -202,7 +202,7 @@ static bool edbm_bevel_init(bContext *C, wmOperator *op, const bool is_modal)
if (v3d) {
opdata->mpr_flag = v3d->mpr_flag;
- v3d->mpr_flag = V3D_MANIPULATOR_HIDE;
+ v3d->mpr_flag = V3D_GIZMO_HIDE;
}
}
diff --git a/source/blender/editors/mesh/editmesh_bisect.c b/source/blender/editors/mesh/editmesh_bisect.c
index 87a65924979..a9e11b7b411 100644
--- a/source/blender/editors/mesh/editmesh_bisect.c
+++ b/source/blender/editors/mesh/editmesh_bisect.c
@@ -54,9 +54,9 @@
#include "mesh_intern.h" /* own include */
-#define USE_MANIPULATOR
+#define USE_GIZMO
-#ifdef USE_MANIPULATOR
+#ifdef USE_GIZMO
#include "ED_gizmo_library.h"
#include "ED_undo.h"
#endif
@@ -157,7 +157,7 @@ static int mesh_bisect_invoke(bContext *C, wmOperator *op, const wmEvent *event)
/* misc other vars */
G.moving = G_TRANSFORM_EDIT;
opdata->mpr_flag = v3d->mpr_flag;
- v3d->mpr_flag = V3D_MANIPULATOR_HIDE;
+ v3d->mpr_flag = V3D_GIZMO_HIDE;
/* initialize modal callout */
ED_workspace_status_text(C, IFACE_("LMB: Click and drag to draw cut line"));
@@ -195,12 +195,12 @@ static int mesh_bisect_modal(bContext *C, wmOperator *op, const wmEvent *event)
if (ret & (OPERATOR_FINISHED | OPERATOR_CANCELLED)) {
edbm_bisect_exit(C, &opdata_back);
-#ifdef USE_MANIPULATOR
- /* Setup manipulators */
+#ifdef USE_GIZMO
+ /* Setup gizmos */
{
View3D *v3d = CTX_wm_view3d(C);
- if (v3d && (v3d->mpr_flag & V3D_MANIPULATOR_HIDE) == 0) {
- WM_manipulator_group_type_ensure("MESH_WGT_bisect");
+ if (v3d && (v3d->mpr_flag & V3D_GIZMO_HIDE) == 0) {
+ WM_gizmo_group_type_ensure("MESH_WGT_bisect");
}
}
#endif
@@ -333,8 +333,8 @@ static int mesh_bisect_exec(bContext *C, wmOperator *op)
}
}
-#ifdef USE_MANIPULATOR
-static void MESH_WGT_bisect(struct wmManipulatorGroupType *wgt);
+#ifdef USE_GIZMO
+static void MESH_WGT_bisect(struct wmGizmoGroupType *wgt);
#endif
void MESH_OT_bisect(struct wmOperatorType *ot)
@@ -373,26 +373,26 @@ void MESH_OT_bisect(struct wmOperatorType *ot)
WM_operator_properties_gesture_straightline(ot, CURSOR_EDIT);
-#ifdef USE_MANIPULATOR
- WM_manipulatorgrouptype_append(MESH_WGT_bisect);
+#ifdef USE_GIZMO
+ WM_gizmogrouptype_append(MESH_WGT_bisect);
#endif
}
-#ifdef USE_MANIPULATOR
+#ifdef USE_GIZMO
/* -------------------------------------------------------------------- */
-/** \name Bisect Manipulator
+/** \name Bisect Gizmo
* \{ */
-typedef struct ManipulatorGroup {
+typedef struct GizmoGroup {
/* Arrow to change plane depth. */
- struct wmManipulator *translate_z;
+ struct wmGizmo *translate_z;
/* Translate XYZ */
- struct wmManipulator *translate_c;
- /* For grabbing the manipulator and moving freely. */
- struct wmManipulator *rotate_c;
+ struct wmGizmo *translate_c;
+ /* For grabbing the gizmo and moving freely. */
+ struct wmGizmo *rotate_c;
/* We could store more vars here! */
struct {
@@ -404,14 +404,14 @@ typedef struct ManipulatorGroup {
float rotate_axis[3];
float rotate_up[3];
} data;
-} ManipulatorGroup;
+} GizmoGroup;
/**
* XXX. calling redo from property updates is not great.
* This is needed because changing the RNA doesn't cause a redo
* and we're not using operator UI which does just this.
*/
-static void manipulator_bisect_exec(ManipulatorGroup *man)
+static void gizmo_bisect_exec(GizmoGroup *man)
{
wmOperator *op = man->data.op;
if (op == WM_operator_last_redo((bContext *)man->data.context)) {
@@ -419,7 +419,7 @@ static void manipulator_bisect_exec(ManipulatorGroup *man)
}
}
-static void manipulator_mesh_bisect_update_from_op(ManipulatorGroup *man)
+static void gizmo_mesh_bisect_update_from_op(GizmoGroup *man)
{
wmOperator *op = man->data.op;
@@ -428,13 +428,13 @@ static void manipulator_mesh_bisect_update_from_op(ManipulatorGroup *man)
RNA_property_float_get_array(op->ptr, man->data.prop_plane_co, plane_co);
RNA_property_float_get_array(op->ptr, man->data.prop_plane_no, plane_no);
- WM_manipulator_set_matrix_location(man->translate_z, plane_co);
- WM_manipulator_set_matrix_location(man->rotate_c, plane_co);
+ WM_gizmo_set_matrix_location(man->translate_z, plane_co);
+ WM_gizmo_set_matrix_location(man->rotate_c, plane_co);
/* translate_c location comes from the property. */
- WM_manipulator_set_matrix_rotation_from_z_axis(man->translate_z, plane_no);
+ WM_gizmo_set_matrix_rotation_from_z_axis(man->translate_z, plane_no);
- WM_manipulator_set_scale(man->translate_c, 0.2);
+ WM_gizmo_set_scale(man->translate_c, 0.2);
RegionView3D *rv3d = ED_view3d_context_rv3d(man->data.context);
if (rv3d) {
@@ -445,24 +445,24 @@ static void manipulator_mesh_bisect_update_from_op(ManipulatorGroup *man)
project_plane_normalized_v3_v3v3(man->data.rotate_up, man->data.rotate_up, man->data.rotate_axis);
normalize_v3(man->data.rotate_up);
- WM_manipulator_set_matrix_rotation_from_z_axis(man->translate_c, plane_no);
+ WM_gizmo_set_matrix_rotation_from_z_axis(man->translate_c, plane_no);
float plane_no_cross[3];
cross_v3_v3v3(plane_no_cross, plane_no, man->data.rotate_axis);
- WM_manipulator_set_matrix_offset_rotation_from_yz_axis(man->rotate_c, plane_no_cross, man->data.rotate_axis);
+ WM_gizmo_set_matrix_offset_rotation_from_yz_axis(man->rotate_c, plane_no_cross, man->data.rotate_axis);
RNA_enum_set(man->rotate_c->ptr, "draw_options",
- ED_MANIPULATOR_DIAL_DRAW_FLAG_ANGLE_MIRROR |
- ED_MANIPULATOR_DIAL_DRAW_FLAG_ANGLE_START_Y);
+ ED_GIZMO_DIAL_DRAW_FLAG_ANGLE_MIRROR |
+ ED_GIZMO_DIAL_DRAW_FLAG_ANGLE_START_Y);
}
}
/* depth callbacks */
-static void manipulator_bisect_prop_depth_get(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_bisect_prop_depth_get(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
void *value_p)
{
- ManipulatorGroup *man = mpr->parent_mgroup->customdata;
+ GizmoGroup *man = mpr->parent_mgroup->customdata;
wmOperator *op = man->data.op;
float *value = value_p;
@@ -476,11 +476,11 @@ static void manipulator_bisect_prop_depth_get(
value[0] = dot_v3v3(plane_no, plane_co) - dot_v3v3(plane_no, mpr->matrix_basis[3]);
}
-static void manipulator_bisect_prop_depth_set(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_bisect_prop_depth_set(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
const void *value_p)
{
- ManipulatorGroup *man = mpr->parent_mgroup->customdata;
+ GizmoGroup *man = mpr->parent_mgroup->customdata;
wmOperator *op = man->data.op;
const float *value = value_p;
@@ -499,15 +499,15 @@ static void manipulator_bisect_prop_depth_set(
RNA_property_float_set_array(op->ptr, man->data.prop_plane_co, plane_co);
- manipulator_bisect_exec(man);
+ gizmo_bisect_exec(man);
}
/* translate callbacks */
-static void manipulator_bisect_prop_translate_get(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_bisect_prop_translate_get(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
void *value_p)
{
- ManipulatorGroup *man = mpr->parent_mgroup->customdata;
+ GizmoGroup *man = mpr->parent_mgroup->customdata;
wmOperator *op = man->data.op;
BLI_assert(mpr_prop->type->array_length == 3);
@@ -516,11 +516,11 @@ static void manipulator_bisect_prop_translate_get(
RNA_property_float_get_array(op->ptr, man->data.prop_plane_co, value_p);
}
-static void manipulator_bisect_prop_translate_set(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_bisect_prop_translate_set(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
const void *value_p)
{
- ManipulatorGroup *man = mpr->parent_mgroup->customdata;
+ GizmoGroup *man = mpr->parent_mgroup->customdata;
wmOperator *op = man->data.op;
BLI_assert(mpr_prop->type->array_length == 3);
@@ -528,15 +528,15 @@ static void manipulator_bisect_prop_translate_set(
RNA_property_float_set_array(op->ptr, man->data.prop_plane_co, value_p);
- manipulator_bisect_exec(man);
+ gizmo_bisect_exec(man);
}
/* angle callbacks */
-static void manipulator_bisect_prop_angle_get(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_bisect_prop_angle_get(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
void *value_p)
{
- ManipulatorGroup *man = mpr->parent_mgroup->customdata;
+ GizmoGroup *man = mpr->parent_mgroup->customdata;
wmOperator *op = man->data.op;
float *value = value_p;
@@ -559,11 +559,11 @@ static void manipulator_bisect_prop_angle_get(
}
}
-static void manipulator_bisect_prop_angle_set(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_bisect_prop_angle_set(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
const void *value_p)
{
- ManipulatorGroup *man = mpr->parent_mgroup->customdata;
+ GizmoGroup *man = mpr->parent_mgroup->customdata;
wmOperator *op = man->data.op;
const float *value = value_p;
@@ -588,22 +588,22 @@ static void manipulator_bisect_prop_angle_set(
/* re-normalize - seems acceptable */
RNA_property_float_set_array(op->ptr, man->data.prop_plane_no, plane_no);
- manipulator_bisect_exec(man);
+ gizmo_bisect_exec(man);
}
}
}
-static bool manipulator_mesh_bisect_poll(const bContext *C, wmManipulatorGroupType *wgt)
+static bool gizmo_mesh_bisect_poll(const bContext *C, wmGizmoGroupType *wgt)
{
wmOperator *op = WM_operator_last_redo(C);
if (op == NULL || !STREQ(op->type->idname, "MESH_OT_bisect")) {
- WM_manipulator_group_type_unlink_delayed_ptr(wgt);
+ WM_gizmo_group_type_unlink_delayed_ptr(wgt);
return false;
}
return true;
}
-static void manipulator_mesh_bisect_setup(const bContext *C, wmManipulatorGroup *mgroup)
+static void gizmo_mesh_bisect_setup(const bContext *C, wmGizmoGroup *mgroup)
{
wmOperator *op = WM_operator_last_redo(C);
@@ -611,26 +611,26 @@ static void manipulator_mesh_bisect_setup(const bContext *C, wmManipulatorGroup
return;
}
- struct ManipulatorGroup *man = MEM_callocN(sizeof(ManipulatorGroup), __func__);
+ struct GizmoGroup *man = MEM_callocN(sizeof(GizmoGroup), __func__);
mgroup->customdata = man;
- const wmManipulatorType *wt_arrow = WM_manipulatortype_find("MANIPULATOR_WT_arrow_3d", true);
- const wmManipulatorType *wt_grab = WM_manipulatortype_find("MANIPULATOR_WT_grab_3d", true);
- const wmManipulatorType *wt_dial = WM_manipulatortype_find("MANIPULATOR_WT_dial_3d", true);
+ const wmGizmoType *wt_arrow = WM_gizmotype_find("GIZMO_WT_arrow_3d", true);
+ const wmGizmoType *wt_grab = WM_gizmotype_find("GIZMO_WT_grab_3d", true);
+ const wmGizmoType *wt_dial = WM_gizmotype_find("GIZMO_WT_dial_3d", true);
- man->translate_z = WM_manipulator_new_ptr(wt_arrow, mgroup, NULL);
- man->translate_c = WM_manipulator_new_ptr(wt_grab, mgroup, NULL);
- man->rotate_c = WM_manipulator_new_ptr(wt_dial, mgroup, NULL);
+ man->translate_z = WM_gizmo_new_ptr(wt_arrow, mgroup, NULL);
+ man->translate_c = WM_gizmo_new_ptr(wt_grab, mgroup, NULL);
+ man->rotate_c = WM_gizmo_new_ptr(wt_dial, mgroup, NULL);
- UI_GetThemeColor3fv(TH_MANIPULATOR_PRIMARY, man->translate_z->color);
- UI_GetThemeColor3fv(TH_MANIPULATOR_PRIMARY, man->translate_c->color);
- UI_GetThemeColor3fv(TH_MANIPULATOR_SECONDARY, man->rotate_c->color);
+ UI_GetThemeColor3fv(TH_GIZMO_PRIMARY, man->translate_z->color);
+ UI_GetThemeColor3fv(TH_GIZMO_PRIMARY, man->translate_c->color);
+ UI_GetThemeColor3fv(TH_GIZMO_SECONDARY, man->rotate_c->color);
- RNA_enum_set(man->translate_z->ptr, "draw_style", ED_MANIPULATOR_ARROW_STYLE_NORMAL);
- RNA_enum_set(man->translate_c->ptr, "draw_style", ED_MANIPULATOR_GRAB_STYLE_RING_2D);
+ RNA_enum_set(man->translate_z->ptr, "draw_style", ED_GIZMO_ARROW_STYLE_NORMAL);
+ RNA_enum_set(man->translate_c->ptr, "draw_style", ED_GIZMO_GRAB_STYLE_RING_2D);
- WM_manipulator_set_flag(man->translate_c, WM_MANIPULATOR_DRAW_VALUE, true);
- WM_manipulator_set_flag(man->rotate_c, WM_MANIPULATOR_DRAW_VALUE, true);
+ WM_gizmo_set_flag(man->translate_c, WM_GIZMO_DRAW_VALUE, true);
+ WM_gizmo_set_flag(man->rotate_c, WM_GIZMO_DRAW_VALUE, true);
{
man->data.context = (bContext *)C;
@@ -639,64 +639,64 @@ static void manipulator_mesh_bisect_setup(const bContext *C, wmManipulatorGroup
man->data.prop_plane_no = RNA_struct_find_property(op->ptr, "plane_no");
}
- manipulator_mesh_bisect_update_from_op(man);
+ gizmo_mesh_bisect_update_from_op(man);
/* Setup property callbacks */
{
- WM_manipulator_target_property_def_func(
+ WM_gizmo_target_property_def_func(
man->translate_z, "offset",
- &(const struct wmManipulatorPropertyFnParams) {
- .value_get_fn = manipulator_bisect_prop_depth_get,
- .value_set_fn = manipulator_bisect_prop_depth_set,
+ &(const struct wmGizmoPropertyFnParams) {
+ .value_get_fn = gizmo_bisect_prop_depth_get,
+ .value_set_fn = gizmo_bisect_prop_depth_set,
.range_get_fn = NULL,
.user_data = NULL,
});
- WM_manipulator_target_property_def_func(
+ WM_gizmo_target_property_def_func(
man->translate_c, "offset",
- &(const struct wmManipulatorPropertyFnParams) {
- .value_get_fn = manipulator_bisect_prop_translate_get,
- .value_set_fn = manipulator_bisect_prop_translate_set,
+ &(const struct wmGizmoPropertyFnParams) {
+ .value_get_fn = gizmo_bisect_prop_translate_get,
+ .value_set_fn = gizmo_bisect_prop_translate_set,
.range_get_fn = NULL,
.user_data = NULL,
});
- WM_manipulator_target_property_def_func(
+ WM_gizmo_target_property_def_func(
man->rotate_c, "offset",
- &(const struct wmManipulatorPropertyFnParams) {
- .value_get_fn = manipulator_bisect_prop_angle_get,
- .value_set_fn = manipulator_bisect_prop_angle_set,
+ &(const struct wmGizmoPropertyFnParams) {
+ .value_get_fn = gizmo_bisect_prop_angle_get,
+ .value_set_fn = gizmo_bisect_prop_angle_set,
.range_get_fn = NULL,
.user_data = NULL,
});
}
}
-static void manipulator_mesh_bisect_draw_prepare(
- const bContext *UNUSED(C), wmManipulatorGroup *mgroup)
+static void gizmo_mesh_bisect_draw_prepare(
+ const bContext *UNUSED(C), wmGizmoGroup *mgroup)
{
- ManipulatorGroup *man = mgroup->customdata;
+ GizmoGroup *man = mgroup->customdata;
if (man->data.op->next) {
man->data.op = WM_operator_last_redo((bContext *)man->data.context);
}
- manipulator_mesh_bisect_update_from_op(man);
+ gizmo_mesh_bisect_update_from_op(man);
}
-static void MESH_WGT_bisect(struct wmManipulatorGroupType *wgt)
+static void MESH_WGT_bisect(struct wmGizmoGroupType *wgt)
{
wgt->name = "Mesh Bisect";
wgt->idname = "MESH_WGT_bisect";
- wgt->flag = WM_MANIPULATORGROUPTYPE_3D;
+ wgt->flag = WM_GIZMOGROUPTYPE_3D;
wgt->mmap_params.spaceid = SPACE_VIEW3D;
wgt->mmap_params.regionid = RGN_TYPE_WINDOW;
- wgt->poll = manipulator_mesh_bisect_poll;
- wgt->setup = manipulator_mesh_bisect_setup;
- wgt->draw_prepare = manipulator_mesh_bisect_draw_prepare;
+ wgt->poll = gizmo_mesh_bisect_poll;
+ wgt->setup = gizmo_mesh_bisect_setup;
+ wgt->draw_prepare = gizmo_mesh_bisect_draw_prepare;
}
/** \} */
-#endif /* USE_MANIPULATOR */
+#endif /* USE_GIZMO */
diff --git a/source/blender/editors/mesh/editmesh_extrude.c b/source/blender/editors/mesh/editmesh_extrude.c
index b007bcf04ba..dd167c1fc15 100644
--- a/source/blender/editors/mesh/editmesh_extrude.c
+++ b/source/blender/editors/mesh/editmesh_extrude.c
@@ -61,7 +61,7 @@
#include "mesh_intern.h" /* own include */
-#define USE_MANIPULATOR
+#define USE_GIZMO
/* -------------------------------------------------------------------- */
/** \name Extrude Internal Utilities
@@ -360,10 +360,10 @@ void MESH_OT_extrude_repeat(wmOperatorType *ot)
/* -------------------------------------------------------------------- */
-/** \name Extrude Manipulator
+/** \name Extrude Gizmo
* \{ */
-#ifdef USE_MANIPULATOR
+#ifdef USE_GIZMO
const float extrude_button_scale = 0.15f;
const float extrude_button_offset_scale = 1.5f;
@@ -380,11 +380,11 @@ static const uchar shape_plus[] = {
0x90, 0x6e, 0xd7, 0x80, 0xff, 0x5f, 0xfb, 0x5f, 0xfb,
};
-typedef struct ManipulatorExtrudeGroup {
+typedef struct GizmoExtrudeGroup {
/* XYZ & normal. */
- struct wmManipulator *invoke_xyz_no[4];
- struct wmManipulator *adjust_xyz_no[5];
+ struct wmGizmo *invoke_xyz_no[4];
+ struct wmGizmo *adjust_xyz_no[5];
struct {
float normal_mat3[3][3]; /* use Z axis for normal. */
@@ -392,10 +392,10 @@ typedef struct ManipulatorExtrudeGroup {
} data;
wmOperatorType *ot_extrude;
-} ManipulatorExtrudeGroup;
+} GizmoExtrudeGroup;
-static void manipulator_mesh_extrude_orientation_matrix_set(
- struct ManipulatorExtrudeGroup *man, const float mat[3][3])
+static void gizmo_mesh_extrude_orientation_matrix_set(
+ struct GizmoExtrudeGroup *man, const float mat[3][3])
{
for (int i = 0; i < 3; i++) {
/* Set orientation without location. */
@@ -417,32 +417,32 @@ static void manipulator_mesh_extrude_orientation_matrix_set(
}
}
-static bool manipulator_mesh_extrude_poll(const bContext *C, wmManipulatorGroupType *wgt)
+static bool gizmo_mesh_extrude_poll(const bContext *C, wmGizmoGroupType *wgt)
{
ScrArea *sa = CTX_wm_area(C);
bToolRef_Runtime *tref_rt = sa->runtime.tool ? sa->runtime.tool->runtime : NULL;
if ((tref_rt == NULL) ||
- !STREQ(wgt->idname, tref_rt->manipulator_group) ||
+ !STREQ(wgt->idname, tref_rt->gizmo_group) ||
!ED_operator_editmesh_view3d((bContext *)C))
{
- WM_manipulator_group_type_unlink_delayed_ptr(wgt);
+ WM_gizmo_group_type_unlink_delayed_ptr(wgt);
return false;
}
return true;
}
-static void manipulator_mesh_extrude_setup(const bContext *UNUSED(C), wmManipulatorGroup *mgroup)
+static void gizmo_mesh_extrude_setup(const bContext *UNUSED(C), wmGizmoGroup *mgroup)
{
- struct ManipulatorExtrudeGroup *man = MEM_callocN(sizeof(ManipulatorExtrudeGroup), __func__);
+ struct GizmoExtrudeGroup *man = MEM_callocN(sizeof(GizmoExtrudeGroup), __func__);
mgroup->customdata = man;
- const wmManipulatorType *wt_arrow = WM_manipulatortype_find("MANIPULATOR_WT_arrow_3d", true);
- const wmManipulatorType *wt_grab = WM_manipulatortype_find("MANIPULATOR_WT_button_2d", true);
+ const wmGizmoType *wt_arrow = WM_gizmotype_find("GIZMO_WT_arrow_3d", true);
+ const wmGizmoType *wt_grab = WM_gizmotype_find("GIZMO_WT_button_2d", true);
for (int i = 0; i < 4; i++) {
- man->adjust_xyz_no[i] = WM_manipulator_new_ptr(wt_arrow, mgroup, NULL);
- man->invoke_xyz_no[i] = WM_manipulator_new_ptr(wt_grab, mgroup, NULL);
- man->invoke_xyz_no[i]->flag |= WM_MANIPULATOR_DRAW_OFFSET_SCALE;
+ man->adjust_xyz_no[i] = WM_gizmo_new_ptr(wt_arrow, mgroup, NULL);
+ man->invoke_xyz_no[i] = WM_gizmo_new_ptr(wt_grab, mgroup, NULL);
+ man->invoke_xyz_no[i]->flag |= WM_GIZMO_DRAW_OFFSET_SCALE;
}
{
@@ -460,25 +460,25 @@ static void manipulator_mesh_extrude_setup(const bContext *UNUSED(C), wmManipula
UI_GetThemeColor3fv(TH_AXIS_X + i, man->invoke_xyz_no[i]->color);
UI_GetThemeColor3fv(TH_AXIS_X + i, man->adjust_xyz_no[i]->color);
}
- UI_GetThemeColor3fv(TH_MANIPULATOR_PRIMARY, man->invoke_xyz_no[3]->color);
- UI_GetThemeColor3fv(TH_MANIPULATOR_PRIMARY, man->adjust_xyz_no[3]->color);
+ UI_GetThemeColor3fv(TH_GIZMO_PRIMARY, man->invoke_xyz_no[3]->color);
+ UI_GetThemeColor3fv(TH_GIZMO_PRIMARY, man->adjust_xyz_no[3]->color);
for (int i = 0; i < 4; i++) {
- WM_manipulator_set_scale(man->invoke_xyz_no[i], extrude_button_scale);
- WM_manipulator_set_scale(man->adjust_xyz_no[i], extrude_arrow_scale);
+ WM_gizmo_set_scale(man->invoke_xyz_no[i], extrude_button_scale);
+ WM_gizmo_set_scale(man->adjust_xyz_no[i], extrude_arrow_scale);
}
- WM_manipulator_set_scale(man->adjust_xyz_no[3], extrude_arrow_normal_axis_scale);
+ WM_gizmo_set_scale(man->adjust_xyz_no[3], extrude_arrow_normal_axis_scale);
for (int i = 0; i < 4; i++) {
}
for (int i = 0; i < 4; i++) {
- WM_manipulator_set_flag(man->adjust_xyz_no[i], WM_MANIPULATOR_DRAW_VALUE, true);
+ WM_gizmo_set_flag(man->adjust_xyz_no[i], WM_GIZMO_DRAW_VALUE, true);
}
/* XYZ & normal axis extrude. */
for (int i = 0; i < 4; i++) {
- PointerRNA *ptr = WM_manipulator_operator_set(man->invoke_xyz_no[i], 0, man->ot_extrude, NULL);
+ PointerRNA *ptr = WM_gizmo_operator_set(man->invoke_xyz_no[i], 0, man->ot_extrude, NULL);
{
bool constraint[3] = {0, 0, 0};
constraint[MIN2(i, 2)] = 1;
@@ -490,7 +490,7 @@ static void manipulator_mesh_extrude_setup(const bContext *UNUSED(C), wmManipula
/* Adjust extrude. */
for (int i = 0; i < 4; i++) {
- PointerRNA *ptr = WM_manipulator_operator_set(man->adjust_xyz_no[i], 0, man->ot_extrude, NULL);
+ PointerRNA *ptr = WM_gizmo_operator_set(man->adjust_xyz_no[i], 0, man->ot_extrude, NULL);
{
bool constraint[3] = {0, 0, 0};
constraint[MIN2(i, 2)] = 1;
@@ -498,18 +498,18 @@ static void manipulator_mesh_extrude_setup(const bContext *UNUSED(C), wmManipula
RNA_boolean_set(&macroptr, "release_confirm", true);
RNA_boolean_set_array(&macroptr, "constraint_axis", constraint);
}
- wmManipulatorOpElem *mpop = WM_manipulator_operator_get(man->adjust_xyz_no[i], 0);
+ wmGizmoOpElem *mpop = WM_gizmo_operator_get(man->adjust_xyz_no[i], 0);
mpop->is_redo = true;
}
}
-static void manipulator_mesh_extrude_refresh(const bContext *C, wmManipulatorGroup *mgroup)
+static void gizmo_mesh_extrude_refresh(const bContext *C, wmGizmoGroup *mgroup)
{
- ManipulatorExtrudeGroup *man = mgroup->customdata;
+ GizmoExtrudeGroup *man = mgroup->customdata;
for (int i = 0; i < 4; i++) {
- WM_manipulator_set_flag(man->invoke_xyz_no[i], WM_MANIPULATOR_HIDDEN, true);
- WM_manipulator_set_flag(man->adjust_xyz_no[i], WM_MANIPULATOR_HIDDEN, true);
+ WM_gizmo_set_flag(man->invoke_xyz_no[i], WM_GIZMO_HIDDEN, true);
+ WM_gizmo_set_flag(man->adjust_xyz_no[i], WM_GIZMO_HIDDEN, true);
}
if (G.moving) {
@@ -525,7 +525,7 @@ static void manipulator_mesh_extrude_refresh(const bContext *C, wmManipulatorGro
if (use_normal) {
struct TransformBounds tbounds_normal;
- if (!ED_transform_calc_manipulator_stats(
+ if (!ED_transform_calc_gizmo_stats(
C, &(struct TransformCalcParams){
.orientation_type = V3D_MANIP_NORMAL + 1,
}, &tbounds_normal))
@@ -536,7 +536,7 @@ static void manipulator_mesh_extrude_refresh(const bContext *C, wmManipulatorGro
}
/* TODO(campbell): run second since this modifies the 3D view, it should not. */
- if (!ED_transform_calc_manipulator_stats(
+ if (!ED_transform_calc_gizmo_stats(
C, &(struct TransformCalcParams){
.orientation_type = man->data.orientation_type + 1,
}, &tbounds))
@@ -556,15 +556,15 @@ static void manipulator_mesh_extrude_refresh(const bContext *C, wmManipulatorGro
(extrude_arrow_normal_axis_scale * extrude_button_offset_scale) / extrude_button_scale);
/* Needed for normal orientation. */
- manipulator_mesh_extrude_orientation_matrix_set(man, tbounds.axis);
+ gizmo_mesh_extrude_orientation_matrix_set(man, tbounds.axis);
if (use_normal) {
copy_m4_m3(man->adjust_xyz_no[3]->matrix_basis, man->data.normal_mat3);
}
/* Location. */
for (int i = 0; i < axis_len_used; i++) {
- WM_manipulator_set_matrix_location(man->invoke_xyz_no[i], tbounds.center);
- WM_manipulator_set_matrix_location(man->adjust_xyz_no[i], tbounds.center);
+ WM_gizmo_set_matrix_location(man->invoke_xyz_no[i], tbounds.center);
+ WM_gizmo_set_matrix_location(man->adjust_xyz_no[i], tbounds.center);
}
wmOperator *op = WM_operator_last_redo(C);
@@ -572,13 +572,13 @@ static void manipulator_mesh_extrude_refresh(const bContext *C, wmManipulatorGro
/* Un-hide. */
for (int i = 0; i < axis_len_used; i++) {
- WM_manipulator_set_flag(man->invoke_xyz_no[i], WM_MANIPULATOR_HIDDEN, false);
- WM_manipulator_set_flag(man->adjust_xyz_no[i], WM_MANIPULATOR_HIDDEN, !has_redo);
+ WM_gizmo_set_flag(man->invoke_xyz_no[i], WM_GIZMO_HIDDEN, false);
+ WM_gizmo_set_flag(man->adjust_xyz_no[i], WM_GIZMO_HIDDEN, !has_redo);
}
/* Operator properties. */
if (use_normal) {
- wmManipulatorOpElem *mpop = WM_manipulator_operator_get(man->invoke_xyz_no[3], 0);
+ wmGizmoOpElem *mpop = WM_gizmo_operator_get(man->invoke_xyz_no[3], 0);
PointerRNA macroptr = RNA_pointer_get(&mpop->ptr, "TRANSFORM_OT_translate");
RNA_enum_set(&macroptr, "constraint_orientation", V3D_MANIP_NORMAL);
}
@@ -598,7 +598,7 @@ static void manipulator_mesh_extrude_refresh(const bContext *C, wmManipulatorGro
(orientation_type == man->data.orientation_type && constraint_axis[i]) :
(orientation_type == V3D_MANIP_NORMAL && constraint_axis[2]))
{
- wmManipulatorOpElem *mpop = WM_manipulator_operator_get(man->adjust_xyz_no[i], 0);
+ wmGizmoOpElem *mpop = WM_gizmo_operator_get(man->adjust_xyz_no[i], 0);
PointerRNA macroptr = RNA_pointer_get(&mpop->ptr, "TRANSFORM_OT_translate");
@@ -609,7 +609,7 @@ static void manipulator_mesh_extrude_refresh(const bContext *C, wmManipulatorGro
else {
/* TODO(campbell): ideally we could adjust all,
* this is complicated by how operator redo and the transform macro works. */
- WM_manipulator_set_flag(man->adjust_xyz_no[i], WM_MANIPULATOR_HIDDEN, true);
+ WM_gizmo_set_flag(man->adjust_xyz_no[i], WM_GIZMO_HIDDEN, true);
}
}
}
@@ -618,14 +618,14 @@ static void manipulator_mesh_extrude_refresh(const bContext *C, wmManipulatorGro
RNA_enum_set(
man->invoke_xyz_no[i]->ptr,
"draw_options",
- (man->adjust_xyz_no[i]->flag & WM_MANIPULATOR_HIDDEN) ?
- ED_MANIPULATOR_BUTTON_SHOW_HELPLINE : 0);
+ (man->adjust_xyz_no[i]->flag & WM_GIZMO_HIDDEN) ?
+ ED_GIZMO_BUTTON_SHOW_HELPLINE : 0);
}
}
-static void manipulator_mesh_extrude_draw_prepare(const bContext *C, wmManipulatorGroup *mgroup)
+static void gizmo_mesh_extrude_draw_prepare(const bContext *C, wmGizmoGroup *mgroup)
{
- ManipulatorExtrudeGroup *man = mgroup->customdata;
+ GizmoExtrudeGroup *man = mgroup->customdata;
switch (man->data.orientation_type) {
case V3D_MANIP_VIEW:
{
@@ -633,14 +633,14 @@ static void manipulator_mesh_extrude_draw_prepare(const bContext *C, wmManipulat
float mat[3][3];
copy_m3_m4(mat, rv3d->viewinv);
normalize_m3(mat);
- manipulator_mesh_extrude_orientation_matrix_set(man, mat);
+ gizmo_mesh_extrude_orientation_matrix_set(man, mat);
break;
}
}
}
-static void manipulator_mesh_extrude_message_subscribe(
- const bContext *C, wmManipulatorGroup *mgroup, struct wmMsgBus *mbus)
+static void gizmo_mesh_extrude_message_subscribe(
+ const bContext *C, wmGizmoGroup *mgroup, struct wmMsgBus *mbus)
{
ARegion *ar = CTX_wm_region(C);
@@ -648,7 +648,7 @@ static void manipulator_mesh_extrude_message_subscribe(
wmMsgSubscribeValue msg_sub_value_mpr_tag_refresh = {
.owner = ar,
.user_data = mgroup->parent_mmap,
- .notify = WM_manipulator_do_msg_notify_tag_refresh,
+ .notify = WM_gizmo_do_msg_notify_tag_refresh,
};
{
@@ -657,24 +657,24 @@ static void manipulator_mesh_extrude_message_subscribe(
}
-static void MESH_WGT_extrude(struct wmManipulatorGroupType *wgt)
+static void MESH_WGT_extrude(struct wmGizmoGroupType *wgt)
{
wgt->name = "Mesh Extrude";
wgt->idname = "MESH_WGT_extrude";
- wgt->flag = WM_MANIPULATORGROUPTYPE_3D;
+ wgt->flag = WM_GIZMOGROUPTYPE_3D;
wgt->mmap_params.spaceid = SPACE_VIEW3D;
wgt->mmap_params.regionid = RGN_TYPE_WINDOW;
- wgt->poll = manipulator_mesh_extrude_poll;
- wgt->setup = manipulator_mesh_extrude_setup;
- wgt->refresh = manipulator_mesh_extrude_refresh;
- wgt->draw_prepare = manipulator_mesh_extrude_draw_prepare;
- wgt->message_subscribe = manipulator_mesh_extrude_message_subscribe;
+ wgt->poll = gizmo_mesh_extrude_poll;
+ wgt->setup = gizmo_mesh_extrude_setup;
+ wgt->refresh = gizmo_mesh_extrude_refresh;
+ wgt->draw_prepare = gizmo_mesh_extrude_draw_prepare;
+ wgt->message_subscribe = gizmo_mesh_extrude_message_subscribe;
}
-#endif /* USE_MANIPULATOR */
+#endif /* USE_GIZMO */
/** \} */
@@ -825,8 +825,8 @@ void MESH_OT_extrude_context(wmOperatorType *ot)
Transform_Properties(ot, P_NO_DEFAULTS | P_MIRROR_DUMMY);
-#ifdef USE_MANIPULATOR
- WM_manipulatorgrouptype_append(MESH_WGT_extrude);
+#ifdef USE_GIZMO
+ WM_gizmogrouptype_append(MESH_WGT_extrude);
#endif
}
diff --git a/source/blender/editors/mesh/editmesh_extrude_spin.c b/source/blender/editors/mesh/editmesh_extrude_spin.c
index 74e2833b2d9..3864bd63036 100644
--- a/source/blender/editors/mesh/editmesh_extrude_spin.c
+++ b/source/blender/editors/mesh/editmesh_extrude_spin.c
@@ -54,27 +54,27 @@
#include "mesh_intern.h" /* own include */
-#define USE_MANIPULATOR
+#define USE_GIZMO
-#ifdef USE_MANIPULATOR
+#ifdef USE_GIZMO
#include "ED_gizmo_library.h"
#include "ED_undo.h"
#endif
/* -------------------------------------------------------------------- */
-/** \name Spin Manipulator
+/** \name Spin Gizmo
* \{ */
-#ifdef USE_MANIPULATOR
-typedef struct ManipulatorSpinGroup {
+#ifdef USE_GIZMO
+typedef struct GizmoSpinGroup {
/* Arrow to change plane depth. */
- struct wmManipulator *translate_z;
+ struct wmGizmo *translate_z;
/* Translate XYZ */
- struct wmManipulator *translate_c;
- /* For grabbing the manipulator and moving freely. */
- struct wmManipulator *rotate_c;
+ struct wmGizmo *translate_c;
+ /* For grabbing the gizmo and moving freely. */
+ struct wmGizmo *rotate_c;
/* Spin angle */
- struct wmManipulator *angle_z;
+ struct wmGizmo *angle_z;
/* We could store more vars here! */
struct {
@@ -87,14 +87,14 @@ typedef struct ManipulatorSpinGroup {
float rotate_axis[3];
float rotate_up[3];
} data;
-} ManipulatorSpinGroup;
+} GizmoSpinGroup;
/**
* XXX. calling redo from property updates is not great.
* This is needed because changing the RNA doesn't cause a redo
* and we're not using operator UI which does just this.
*/
-static void manipulator_spin_exec(ManipulatorSpinGroup *man)
+static void gizmo_spin_exec(GizmoSpinGroup *man)
{
wmOperator *op = man->data.op;
if (op == WM_operator_last_redo((bContext *)man->data.context)) {
@@ -102,7 +102,7 @@ static void manipulator_spin_exec(ManipulatorSpinGroup *man)
}
}
-static void manipulator_mesh_spin_update_from_op(ManipulatorSpinGroup *man)
+static void gizmo_mesh_spin_update_from_op(GizmoSpinGroup *man)
{
wmOperator *op = man->data.op;
@@ -111,15 +111,15 @@ static void manipulator_mesh_spin_update_from_op(ManipulatorSpinGroup *man)
RNA_property_float_get_array(op->ptr, man->data.prop_axis_co, plane_co);
RNA_property_float_get_array(op->ptr, man->data.prop_axis_no, plane_no);
- WM_manipulator_set_matrix_location(man->translate_z, plane_co);
- WM_manipulator_set_matrix_location(man->rotate_c, plane_co);
- WM_manipulator_set_matrix_location(man->angle_z, plane_co);
+ WM_gizmo_set_matrix_location(man->translate_z, plane_co);
+ WM_gizmo_set_matrix_location(man->rotate_c, plane_co);
+ WM_gizmo_set_matrix_location(man->angle_z, plane_co);
/* translate_c location comes from the property. */
- WM_manipulator_set_matrix_rotation_from_z_axis(man->translate_z, plane_no);
- WM_manipulator_set_matrix_rotation_from_z_axis(man->angle_z, plane_no);
+ WM_gizmo_set_matrix_rotation_from_z_axis(man->translate_z, plane_no);
+ WM_gizmo_set_matrix_rotation_from_z_axis(man->angle_z, plane_no);
- WM_manipulator_set_scale(man->translate_c, 0.2);
+ WM_gizmo_set_scale(man->translate_c, 0.2);
RegionView3D *rv3d = ED_view3d_context_rv3d(man->data.context);
if (rv3d) {
@@ -130,23 +130,23 @@ static void manipulator_mesh_spin_update_from_op(ManipulatorSpinGroup *man)
project_plane_normalized_v3_v3v3(man->data.rotate_up, man->data.rotate_up, man->data.rotate_axis);
normalize_v3(man->data.rotate_up);
- WM_manipulator_set_matrix_rotation_from_z_axis(man->translate_c, plane_no);
- WM_manipulator_set_matrix_rotation_from_yz_axis(man->rotate_c, plane_no, man->data.rotate_axis);
+ WM_gizmo_set_matrix_rotation_from_z_axis(man->translate_c, plane_no);
+ WM_gizmo_set_matrix_rotation_from_yz_axis(man->rotate_c, plane_no, man->data.rotate_axis);
/* show the axis instead of mouse cursor */
RNA_enum_set(man->rotate_c->ptr, "draw_options",
- ED_MANIPULATOR_DIAL_DRAW_FLAG_ANGLE_MIRROR |
- ED_MANIPULATOR_DIAL_DRAW_FLAG_ANGLE_START_Y);
+ ED_GIZMO_DIAL_DRAW_FLAG_ANGLE_MIRROR |
+ ED_GIZMO_DIAL_DRAW_FLAG_ANGLE_START_Y);
}
}
/* depth callbacks */
-static void manipulator_spin_prop_depth_get(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_spin_prop_depth_get(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
void *value_p)
{
- ManipulatorSpinGroup *man = mpr->parent_mgroup->customdata;
+ GizmoSpinGroup *man = mpr->parent_mgroup->customdata;
wmOperator *op = man->data.op;
float *value = value_p;
@@ -160,11 +160,11 @@ static void manipulator_spin_prop_depth_get(
value[0] = dot_v3v3(plane_no, plane_co) - dot_v3v3(plane_no, mpr->matrix_basis[3]);
}
-static void manipulator_spin_prop_depth_set(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_spin_prop_depth_set(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
const void *value_p)
{
- ManipulatorSpinGroup *man = mpr->parent_mgroup->customdata;
+ GizmoSpinGroup *man = mpr->parent_mgroup->customdata;
wmOperator *op = man->data.op;
const float *value = value_p;
@@ -183,15 +183,15 @@ static void manipulator_spin_prop_depth_set(
RNA_property_float_set_array(op->ptr, man->data.prop_axis_co, plane_co);
- manipulator_spin_exec(man);
+ gizmo_spin_exec(man);
}
/* translate callbacks */
-static void manipulator_spin_prop_translate_get(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_spin_prop_translate_get(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
void *value_p)
{
- ManipulatorSpinGroup *man = mpr->parent_mgroup->customdata;
+ GizmoSpinGroup *man = mpr->parent_mgroup->customdata;
wmOperator *op = man->data.op;
float *value = value_p;
@@ -201,11 +201,11 @@ static void manipulator_spin_prop_translate_get(
RNA_property_float_get_array(op->ptr, man->data.prop_axis_co, value);
}
-static void manipulator_spin_prop_translate_set(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_spin_prop_translate_set(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
const void *value)
{
- ManipulatorSpinGroup *man = mpr->parent_mgroup->customdata;
+ GizmoSpinGroup *man = mpr->parent_mgroup->customdata;
wmOperator *op = man->data.op;
BLI_assert(mpr_prop->type->array_length == 3);
@@ -213,15 +213,15 @@ static void manipulator_spin_prop_translate_set(
RNA_property_float_set_array(op->ptr, man->data.prop_axis_co, value);
- manipulator_spin_exec(man);
+ gizmo_spin_exec(man);
}
/* angle callbacks */
-static void manipulator_spin_prop_axis_angle_get(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_spin_prop_axis_angle_get(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
void *value_p)
{
- ManipulatorSpinGroup *man = mpr->parent_mgroup->customdata;
+ GizmoSpinGroup *man = mpr->parent_mgroup->customdata;
wmOperator *op = man->data.op;
float *value = value_p;
@@ -244,11 +244,11 @@ static void manipulator_spin_prop_axis_angle_get(
}
}
-static void manipulator_spin_prop_axis_angle_set(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_spin_prop_axis_angle_set(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
const void *value_p)
{
- ManipulatorSpinGroup *man = mpr->parent_mgroup->customdata;
+ GizmoSpinGroup *man = mpr->parent_mgroup->customdata;
wmOperator *op = man->data.op;
const float *value = value_p;
@@ -273,17 +273,17 @@ static void manipulator_spin_prop_axis_angle_set(
/* re-normalize - seems acceptable */
RNA_property_float_set_array(op->ptr, man->data.prop_axis_no, plane_no);
- manipulator_spin_exec(man);
+ gizmo_spin_exec(man);
}
}
}
/* angle callbacks */
-static void manipulator_spin_prop_angle_get(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_spin_prop_angle_get(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
void *value_p)
{
- ManipulatorSpinGroup *man = mpr->parent_mgroup->customdata;
+ GizmoSpinGroup *man = mpr->parent_mgroup->customdata;
wmOperator *op = man->data.op;
float *value = value_p;
@@ -292,31 +292,31 @@ static void manipulator_spin_prop_angle_get(
value[0] = RNA_property_float_get(op->ptr, man->data.prop_angle);
}
-static void manipulator_spin_prop_angle_set(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_spin_prop_angle_set(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
const void *value_p)
{
- ManipulatorSpinGroup *man = mpr->parent_mgroup->customdata;
+ GizmoSpinGroup *man = mpr->parent_mgroup->customdata;
wmOperator *op = man->data.op;
BLI_assert(mpr_prop->type->array_length == 1);
UNUSED_VARS_NDEBUG(mpr_prop);
const float *value = value_p;
RNA_property_float_set(op->ptr, man->data.prop_angle, value[0]);
- manipulator_spin_exec(man);
+ gizmo_spin_exec(man);
}
-static bool manipulator_mesh_spin_poll(const bContext *C, wmManipulatorGroupType *wgt)
+static bool gizmo_mesh_spin_poll(const bContext *C, wmGizmoGroupType *wgt)
{
wmOperator *op = WM_operator_last_redo(C);
if (op == NULL || !STREQ(op->type->idname, "MESH_OT_spin")) {
- WM_manipulator_group_type_unlink_delayed_ptr(wgt);
+ WM_gizmo_group_type_unlink_delayed_ptr(wgt);
return false;
}
return true;
}
-static void manipulator_mesh_spin_setup(const bContext *C, wmManipulatorGroup *mgroup)
+static void gizmo_mesh_spin_setup(const bContext *C, wmGizmoGroup *mgroup)
{
wmOperator *op = WM_operator_last_redo(C);
@@ -324,32 +324,32 @@ static void manipulator_mesh_spin_setup(const bContext *C, wmManipulatorGroup *m
return;
}
- struct ManipulatorSpinGroup *man = MEM_callocN(sizeof(ManipulatorSpinGroup), __func__);
+ struct GizmoSpinGroup *man = MEM_callocN(sizeof(GizmoSpinGroup), __func__);
mgroup->customdata = man;
- const wmManipulatorType *wt_arrow = WM_manipulatortype_find("MANIPULATOR_WT_arrow_3d", true);
- const wmManipulatorType *wt_grab = WM_manipulatortype_find("MANIPULATOR_WT_grab_3d", true);
- const wmManipulatorType *wt_dial = WM_manipulatortype_find("MANIPULATOR_WT_dial_3d", true);
+ const wmGizmoType *wt_arrow = WM_gizmotype_find("GIZMO_WT_arrow_3d", true);
+ const wmGizmoType *wt_grab = WM_gizmotype_find("GIZMO_WT_grab_3d", true);
+ const wmGizmoType *wt_dial = WM_gizmotype_find("GIZMO_WT_dial_3d", true);
- man->translate_z = WM_manipulator_new_ptr(wt_arrow, mgroup, NULL);
- man->translate_c = WM_manipulator_new_ptr(wt_grab, mgroup, NULL);
- man->rotate_c = WM_manipulator_new_ptr(wt_dial, mgroup, NULL);
- man->angle_z = WM_manipulator_new_ptr(wt_dial, mgroup, NULL);
+ man->translate_z = WM_gizmo_new_ptr(wt_arrow, mgroup, NULL);
+ man->translate_c = WM_gizmo_new_ptr(wt_grab, mgroup, NULL);
+ man->rotate_c = WM_gizmo_new_ptr(wt_dial, mgroup, NULL);
+ man->angle_z = WM_gizmo_new_ptr(wt_dial, mgroup, NULL);
- UI_GetThemeColor3fv(TH_MANIPULATOR_PRIMARY, man->translate_z->color);
- UI_GetThemeColor3fv(TH_MANIPULATOR_PRIMARY, man->translate_c->color);
- UI_GetThemeColor3fv(TH_MANIPULATOR_SECONDARY, man->rotate_c->color);
+ UI_GetThemeColor3fv(TH_GIZMO_PRIMARY, man->translate_z->color);
+ UI_GetThemeColor3fv(TH_GIZMO_PRIMARY, man->translate_c->color);
+ UI_GetThemeColor3fv(TH_GIZMO_SECONDARY, man->rotate_c->color);
UI_GetThemeColor3fv(TH_AXIS_Z, man->angle_z->color);
- RNA_enum_set(man->translate_z->ptr, "draw_style", ED_MANIPULATOR_ARROW_STYLE_NORMAL);
- RNA_enum_set(man->translate_c->ptr, "draw_style", ED_MANIPULATOR_GRAB_STYLE_RING_2D);
+ RNA_enum_set(man->translate_z->ptr, "draw_style", ED_GIZMO_ARROW_STYLE_NORMAL);
+ RNA_enum_set(man->translate_c->ptr, "draw_style", ED_GIZMO_GRAB_STYLE_RING_2D);
- WM_manipulator_set_flag(man->translate_c, WM_MANIPULATOR_DRAW_VALUE, true);
- WM_manipulator_set_flag(man->rotate_c, WM_MANIPULATOR_DRAW_VALUE, true);
- WM_manipulator_set_flag(man->angle_z, WM_MANIPULATOR_DRAW_VALUE, true);
+ WM_gizmo_set_flag(man->translate_c, WM_GIZMO_DRAW_VALUE, true);
+ WM_gizmo_set_flag(man->rotate_c, WM_GIZMO_DRAW_VALUE, true);
+ WM_gizmo_set_flag(man->angle_z, WM_GIZMO_DRAW_VALUE, true);
- WM_manipulator_set_scale(man->angle_z, 0.5f);
+ WM_gizmo_set_scale(man->angle_z, 0.5f);
{
man->data.context = (bContext *)C;
@@ -359,42 +359,42 @@ static void manipulator_mesh_spin_setup(const bContext *C, wmManipulatorGroup *m
man->data.prop_angle = RNA_struct_find_property(op->ptr, "angle");
}
- manipulator_mesh_spin_update_from_op(man);
+ gizmo_mesh_spin_update_from_op(man);
/* Setup property callbacks */
{
- WM_manipulator_target_property_def_func(
+ WM_gizmo_target_property_def_func(
man->translate_z, "offset",
- &(const struct wmManipulatorPropertyFnParams) {
- .value_get_fn = manipulator_spin_prop_depth_get,
- .value_set_fn = manipulator_spin_prop_depth_set,
+ &(const struct wmGizmoPropertyFnParams) {
+ .value_get_fn = gizmo_spin_prop_depth_get,
+ .value_set_fn = gizmo_spin_prop_depth_set,
.range_get_fn = NULL,
.user_data = NULL,
});
- WM_manipulator_target_property_def_func(
+ WM_gizmo_target_property_def_func(
man->translate_c, "offset",
- &(const struct wmManipulatorPropertyFnParams) {
- .value_get_fn = manipulator_spin_prop_translate_get,
- .value_set_fn = manipulator_spin_prop_translate_set,
+ &(const struct wmGizmoPropertyFnParams) {
+ .value_get_fn = gizmo_spin_prop_translate_get,
+ .value_set_fn = gizmo_spin_prop_translate_set,
.range_get_fn = NULL,
.user_data = NULL,
});
- WM_manipulator_target_property_def_func(
+ WM_gizmo_target_property_def_func(
man->rotate_c, "offset",
- &(const struct wmManipulatorPropertyFnParams) {
- .value_get_fn = manipulator_spin_prop_axis_angle_get,
- .value_set_fn = manipulator_spin_prop_axis_angle_set,
+ &(const struct wmGizmoPropertyFnParams) {
+ .value_get_fn = gizmo_spin_prop_axis_angle_get,
+ .value_set_fn = gizmo_spin_prop_axis_angle_set,
.range_get_fn = NULL,
.user_data = NULL,
});
- WM_manipulator_target_property_def_func(
+ WM_gizmo_target_property_def_func(
man->angle_z, "offset",
- &(const struct wmManipulatorPropertyFnParams) {
- .value_get_fn = manipulator_spin_prop_angle_get,
- .value_set_fn = manipulator_spin_prop_angle_set,
+ &(const struct wmGizmoPropertyFnParams) {
+ .value_get_fn = gizmo_spin_prop_angle_get,
+ .value_set_fn = gizmo_spin_prop_angle_set,
.range_get_fn = NULL,
.user_data = NULL,
});
@@ -402,34 +402,34 @@ static void manipulator_mesh_spin_setup(const bContext *C, wmManipulatorGroup *m
}
}
-static void manipulator_mesh_spin_draw_prepare(
- const bContext *UNUSED(C), wmManipulatorGroup *mgroup)
+static void gizmo_mesh_spin_draw_prepare(
+ const bContext *UNUSED(C), wmGizmoGroup *mgroup)
{
- ManipulatorSpinGroup *man = mgroup->customdata;
+ GizmoSpinGroup *man = mgroup->customdata;
if (man->data.op->next) {
man->data.op = WM_operator_last_redo((bContext *)man->data.context);
}
- manipulator_mesh_spin_update_from_op(man);
+ gizmo_mesh_spin_update_from_op(man);
}
-static void MESH_WGT_spin(struct wmManipulatorGroupType *wgt)
+static void MESH_WGT_spin(struct wmGizmoGroupType *wgt)
{
wgt->name = "Mesh Spin";
wgt->idname = "MESH_WGT_spin";
- wgt->flag = WM_MANIPULATORGROUPTYPE_3D;
+ wgt->flag = WM_GIZMOGROUPTYPE_3D;
wgt->mmap_params.spaceid = SPACE_VIEW3D;
wgt->mmap_params.regionid = RGN_TYPE_WINDOW;
- wgt->poll = manipulator_mesh_spin_poll;
- wgt->setup = manipulator_mesh_spin_setup;
- wgt->draw_prepare = manipulator_mesh_spin_draw_prepare;
+ wgt->poll = gizmo_mesh_spin_poll;
+ wgt->setup = gizmo_mesh_spin_setup;
+ wgt->draw_prepare = gizmo_mesh_spin_draw_prepare;
}
/** \} */
-#endif /* USE_MANIPULATOR */
+#endif /* USE_GIZMO */
/* -------------------------------------------------------------------- */
/** \name Spin Operator
@@ -508,11 +508,11 @@ static int edbm_spin_invoke(bContext *C, wmOperator *op, const wmEvent *UNUSED(e
int ret = edbm_spin_exec(C, op);
-#ifdef USE_MANIPULATOR
+#ifdef USE_GIZMO
if (ret & OPERATOR_FINISHED) {
- /* Setup manipulators */
- if (v3d && ((v3d->mpr_flag & V3D_MANIPULATOR_HIDE) == 0)) {
- WM_manipulator_group_type_ensure("MESH_WGT_spin");
+ /* Setup gizmos */
+ if (v3d && ((v3d->mpr_flag & V3D_GIZMO_HIDE) == 0)) {
+ WM_gizmo_group_type_ensure("MESH_WGT_spin");
}
}
#endif
@@ -548,7 +548,7 @@ void MESH_OT_spin(wmOperatorType *ot)
"Center", "Center in global view space", -1e4f, 1e4f);
RNA_def_float_vector(ot->srna, "axis", 3, NULL, -1.0f, 1.0f, "Axis", "Axis in global view space", -1.0f, 1.0f);
-#ifdef USE_MANIPULATOR
- WM_manipulatorgrouptype_append(MESH_WGT_spin);
+#ifdef USE_GIZMO
+ WM_gizmogrouptype_append(MESH_WGT_spin);
#endif
}
diff --git a/source/blender/editors/mesh/editmesh_inset.c b/source/blender/editors/mesh/editmesh_inset.c
index 1f1d2f5a2e1..1be180b852c 100644
--- a/source/blender/editors/mesh/editmesh_inset.c
+++ b/source/blender/editors/mesh/editmesh_inset.c
@@ -174,7 +174,7 @@ static bool edbm_inset_init(bContext *C, wmOperator *op, const bool is_modal)
G.moving = G_TRANSFORM_EDIT;
if (v3d) {
opdata->mpr_flag = v3d->mpr_flag;
- v3d->mpr_flag = V3D_MANIPULATOR_HIDE;
+ v3d->mpr_flag = V3D_GIZMO_HIDE;
}
}
diff --git a/source/blender/editors/mesh/editmesh_polybuild.c b/source/blender/editors/mesh/editmesh_polybuild.c
index e8bcfb5eb08..86c9fc0243b 100644
--- a/source/blender/editors/mesh/editmesh_polybuild.c
+++ b/source/blender/editors/mesh/editmesh_polybuild.c
@@ -390,7 +390,7 @@ void MESH_OT_polybuild_dissolve_at_cursor(wmOperatorType *ot)
/** \} */
/* -------------------------------------------------------------------- */
-/** \name Cursor Manipulator
+/** \name Cursor Gizmo
*
* \note This may need its own file, for now not.
* \{ */
diff --git a/source/blender/editors/mesh/mesh_intern.h b/source/blender/editors/mesh/mesh_intern.h
index 3800ab9dddd..cc9448e5e06 100644
--- a/source/blender/editors/mesh/mesh_intern.h
+++ b/source/blender/editors/mesh/mesh_intern.h
@@ -92,8 +92,8 @@ void MESH_OT_primitive_monkey_add(struct wmOperatorType *ot);
void MESH_OT_primitive_uv_sphere_add(struct wmOperatorType *ot);
void MESH_OT_primitive_ico_sphere_add(struct wmOperatorType *ot);
-/* *** editmesh_add_manipulator.c *** */
-void MESH_OT_primitive_cube_add_manipulator(struct wmOperatorType *ot);
+/* *** editmesh_add_gizmo.c *** */
+void MESH_OT_primitive_cube_add_gizmo(struct wmOperatorType *ot);
/* *** editmesh_bevel.c *** */
void MESH_OT_bevel(struct wmOperatorType *ot);
diff --git a/source/blender/editors/mesh/mesh_ops.c b/source/blender/editors/mesh/mesh_ops.c
index 2bfc0634f1e..0fcc5ada854 100644
--- a/source/blender/editors/mesh/mesh_ops.c
+++ b/source/blender/editors/mesh/mesh_ops.c
@@ -78,7 +78,7 @@ void ED_operatortypes_mesh(void)
WM_operatortype_append(MESH_OT_primitive_uv_sphere_add);
WM_operatortype_append(MESH_OT_primitive_ico_sphere_add);
- WM_operatortype_append(MESH_OT_primitive_cube_add_manipulator);
+ WM_operatortype_append(MESH_OT_primitive_cube_add_gizmo);
WM_operatortype_append(MESH_OT_duplicate);
WM_operatortype_append(MESH_OT_remove_doubles);
diff --git a/source/blender/editors/screen/area.c b/source/blender/editors/screen/area.c
index 137fd01a146..41c3209dbb1 100644
--- a/source/blender/editors/screen/area.c
+++ b/source/blender/editors/screen/area.c
@@ -2936,8 +2936,8 @@ void ED_region_message_subscribe(
struct bScreen *screen, struct ScrArea *sa, struct ARegion *ar,
struct wmMsgBus *mbus)
{
- if (ar->manipulator_map != NULL) {
- WM_manipulatormap_message_subscribe(C, ar->manipulator_map, ar, mbus);
+ if (ar->gizmo_map != NULL) {
+ WM_gizmomap_message_subscribe(C, ar->gizmo_map, ar, mbus);
}
if (BLI_listbase_is_empty(&ar->uiblocks)) {
diff --git a/source/blender/editors/screen/screen_edit.c b/source/blender/editors/screen/screen_edit.c
index 8fbf74ed800..1d14940085b 100644
--- a/source/blender/editors/screen/screen_edit.c
+++ b/source/blender/editors/screen/screen_edit.c
@@ -381,8 +381,8 @@ static void region_cursor_set(wmWindow *win, bool swin_changed)
for (ARegion *ar = sa->regionbase.first; ar; ar = ar->next) {
if (ar == screen->active_region) {
if (swin_changed || (ar->type && ar->type->event_cursor)) {
- if (ar->manipulator_map != NULL) {
- if (WM_manipulatormap_cursor_set(ar->manipulator_map, win)) {
+ if (ar->gizmo_map != NULL) {
+ if (WM_gizmomap_cursor_set(ar->gizmo_map, win)) {
return;
}
}
diff --git a/source/blender/editors/space_api/spacetypes.c b/source/blender/editors/space_api/spacetypes.c
index 37f5ed642fe..7246812dc82 100644
--- a/source/blender/editors/space_api/spacetypes.c
+++ b/source/blender/editors/space_api/spacetypes.c
@@ -129,22 +129,22 @@ void ED_spacetypes_init(void)
ED_screen_user_menu_register();
- /* manipulator types */
- ED_manipulatortypes_button_2d();
- ED_manipulatortypes_dial_3d();
- ED_manipulatortypes_grab_3d();
- ED_manipulatortypes_arrow_2d();
- ED_manipulatortypes_arrow_3d();
- ED_manipulatortypes_primitive_3d();
- ED_manipulatortypes_cage_2d();
- ED_manipulatortypes_cage_3d();
-
- /* register types for operators and manipulators */
+ /* gizmo types */
+ ED_gizmotypes_button_2d();
+ ED_gizmotypes_dial_3d();
+ ED_gizmotypes_grab_3d();
+ ED_gizmotypes_arrow_2d();
+ ED_gizmotypes_arrow_3d();
+ ED_gizmotypes_primitive_3d();
+ ED_gizmotypes_cage_2d();
+ ED_gizmotypes_cage_3d();
+
+ /* register types for operators and gizmos */
spacetypes = BKE_spacetypes_list();
for (type = spacetypes->first; type; type = type->next) {
- /* init manipulator types first, operator-types need them */
- if (type->manipulators) {
- type->manipulators();
+ /* init gizmo types first, operator-types need them */
+ if (type->gizmos) {
+ type->gizmos();
}
if (type->operatortypes) {
type->operatortypes();
diff --git a/source/blender/editors/space_image/space_image.c b/source/blender/editors/space_image/space_image.c
index 650f377787a..68b0f42768a 100644
--- a/source/blender/editors/space_image/space_image.c
+++ b/source/blender/editors/space_image/space_image.c
@@ -581,25 +581,25 @@ static int image_context(const bContext *C, const char *member, bContextDataResu
return 0;
}
-static void IMAGE_WGT_manipulator2d(wmManipulatorGroupType *wgt)
+static void IMAGE_WGT_gizmo2d(wmGizmoGroupType *wgt)
{
- wgt->name = "UV Transform Manipulator";
- wgt->idname = "IMAGE_WGT_manipulator2d";
+ wgt->name = "UV Transform Gizmo";
+ wgt->idname = "IMAGE_WGT_gizmo2d";
- wgt->flag |= WM_MANIPULATORGROUPTYPE_PERSISTENT;
+ wgt->flag |= WM_GIZMOGROUPTYPE_PERSISTENT;
- wgt->poll = ED_widgetgroup_manipulator2d_poll;
- wgt->setup = ED_widgetgroup_manipulator2d_setup;
- wgt->refresh = ED_widgetgroup_manipulator2d_refresh;
- wgt->draw_prepare = ED_widgetgroup_manipulator2d_draw_prepare;
+ wgt->poll = ED_widgetgroup_gizmo2d_poll;
+ wgt->setup = ED_widgetgroup_gizmo2d_setup;
+ wgt->refresh = ED_widgetgroup_gizmo2d_refresh;
+ wgt->draw_prepare = ED_widgetgroup_gizmo2d_draw_prepare;
}
static void image_widgets(void)
{
- wmManipulatorMapType *mmap_type = WM_manipulatormaptype_ensure(
- &(const struct wmManipulatorMapType_Params){SPACE_IMAGE, RGN_TYPE_WINDOW});
+ wmGizmoMapType *mmap_type = WM_gizmomaptype_ensure(
+ &(const struct wmGizmoMapType_Params){SPACE_IMAGE, RGN_TYPE_WINDOW});
- WM_manipulatorgrouptype_append_and_link(mmap_type, IMAGE_WGT_manipulator2d);
+ WM_gizmogrouptype_append_and_link(mmap_type, IMAGE_WGT_gizmo2d);
}
/************************** main region ***************************/
@@ -665,15 +665,15 @@ static void image_main_region_init(wmWindowManager *wm, ARegion *ar)
// image space manages own v2d
// UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_STANDARD, ar->winx, ar->winy);
- /* manipulators */
- if (ar->manipulator_map == NULL) {
- const struct wmManipulatorMapType_Params wmap_params = {
+ /* gizmos */
+ if (ar->gizmo_map == NULL) {
+ const struct wmGizmoMapType_Params wmap_params = {
.spaceid = SPACE_IMAGE,
.regionid = RGN_TYPE_WINDOW,
};
- ar->manipulator_map = WM_manipulatormap_new_from_type(&wmap_params);
+ ar->gizmo_map = WM_gizmomap_new_from_type(&wmap_params);
}
- WM_manipulatormap_add_handlers(ar, ar->manipulator_map);
+ WM_gizmomap_add_handlers(ar, ar->gizmo_map);
/* mask polls mode */
keymap = WM_keymap_find(wm->defaultconf, "Mask Editing", 0, 0);
@@ -807,7 +807,7 @@ static void image_main_region_draw(const bContext *C, ARegion *ar)
UI_view2d_view_restore(C);
}
- WM_manipulatormap_draw(ar->manipulator_map, C, WM_MANIPULATORMAP_DRAWSTEP_2D);
+ WM_gizmomap_draw(ar->gizmo_map, C, WM_GIZMOMAP_DRAWSTEP_2D);
draw_image_cache(C, ar);
@@ -827,7 +827,7 @@ static void image_main_region_listener(
switch (wmn->category) {
case NC_GEOM:
if (ELEM(wmn->data, ND_DATA, ND_SELECT))
- WM_manipulatormap_tag_refresh(ar->manipulator_map);
+ WM_gizmomap_tag_refresh(ar->gizmo_map);
break;
case NC_GPENCIL:
if (ELEM(wmn->action, NA_EDITED, NA_SELECTED))
@@ -838,7 +838,7 @@ static void image_main_region_listener(
case NC_IMAGE:
if (wmn->action == NA_PAINTING)
ED_region_tag_redraw(ar);
- WM_manipulatormap_tag_refresh(ar->manipulator_map);
+ WM_gizmomap_tag_refresh(ar->gizmo_map);
break;
case NC_MATERIAL:
if (wmn->data == ND_SHADING_LINKS) {
@@ -1089,7 +1089,7 @@ void ED_spacetype_image(void)
st->refresh = image_refresh;
st->listener = image_listener;
st->context = image_context;
- st->manipulators = image_widgets;
+ st->gizmos = image_widgets;
st->id_remap = image_id_remap;
/* regions: main window */
diff --git a/source/blender/editors/space_node/node_draw.c b/source/blender/editors/space_node/node_draw.c
index 5b91796d41c..c632b354440 100644
--- a/source/blender/editors/space_node/node_draw.c
+++ b/source/blender/editors/space_node/node_draw.c
@@ -1412,7 +1412,7 @@ void drawnodespace(const bContext *C, ARegion *ar)
wmOrtho2_pixelspace(ar->winx, ar->winy);
- WM_manipulatormap_draw(ar->manipulator_map, C, WM_MANIPULATORMAP_DRAWSTEP_2D);
+ WM_gizmomap_draw(ar->gizmo_map, C, WM_GIZMOMAP_DRAWSTEP_2D);
gpuPopMatrix();
gpuLoadProjectionMatrix(original_proj);
diff --git a/source/blender/editors/space_node/node_gizmo.c b/source/blender/editors/space_node/node_gizmo.c
index 62b4a4b6583..37ea53aa710 100644
--- a/source/blender/editors/space_node/node_gizmo.c
+++ b/source/blender/editors/space_node/node_gizmo.c
@@ -53,7 +53,7 @@
/** \name Local Utilities
* \{ */
-static void node_manipulator_calc_matrix_space(
+static void node_gizmo_calc_matrix_space(
const SpaceNode *snode, const ARegion *ar, float matrix_space[4][4])
{
unit_m4(matrix_space);
@@ -63,7 +63,7 @@ static void node_manipulator_calc_matrix_space(
matrix_space[3][1] = (ar->winy / 2) + snode->yof;
}
-static void node_manipulator_calc_matrix_space_with_image_dims(
+static void node_gizmo_calc_matrix_space_with_image_dims(
const SpaceNode *snode, const ARegion *ar, const float image_dims[2], float matrix_space[4][4])
{
unit_m4(matrix_space);
@@ -79,11 +79,11 @@ static void node_manipulator_calc_matrix_space_with_image_dims(
/* -------------------------------------------------------------------- */
-/** \name Backdrop Manipulator
+/** \name Backdrop Gizmo
* \{ */
-static void manipulator_node_backdrop_prop_matrix_get(
- const wmManipulator *UNUSED(mpr), wmManipulatorProperty *mpr_prop,
+static void gizmo_node_backdrop_prop_matrix_get(
+ const wmGizmo *UNUSED(mpr), wmGizmoProperty *mpr_prop,
void *value_p)
{
float (*matrix)[4] = value_p;
@@ -95,8 +95,8 @@ static void manipulator_node_backdrop_prop_matrix_get(
matrix[3][1] = snode->yof;
}
-static void manipulator_node_backdrop_prop_matrix_set(
- const wmManipulator *UNUSED(mpr), wmManipulatorProperty *mpr_prop,
+static void gizmo_node_backdrop_prop_matrix_set(
+ const wmGizmo *UNUSED(mpr), wmGizmoProperty *mpr_prop,
const void *value_p)
{
const float (*matrix)[4] = value_p;
@@ -108,7 +108,7 @@ static void manipulator_node_backdrop_prop_matrix_set(
snode->yof = matrix[3][1];
}
-static bool WIDGETGROUP_node_transform_poll(const bContext *C, wmManipulatorGroupType *UNUSED(wgt))
+static bool WIDGETGROUP_node_transform_poll(const bContext *C, wmGizmoGroupType *UNUSED(wgt))
{
SpaceNode *snode = CTX_wm_space_node(C);
@@ -127,22 +127,22 @@ static bool WIDGETGROUP_node_transform_poll(const bContext *C, wmManipulatorGrou
return false;
}
-static void WIDGETGROUP_node_transform_setup(const bContext *UNUSED(C), wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_node_transform_setup(const bContext *UNUSED(C), wmGizmoGroup *mgroup)
{
- wmManipulatorWrapper *wwrapper = MEM_mallocN(sizeof(wmManipulatorWrapper), __func__);
+ wmGizmoWrapper *wwrapper = MEM_mallocN(sizeof(wmGizmoWrapper), __func__);
- wwrapper->manipulator = WM_manipulator_new("MANIPULATOR_WT_cage_2d", mgroup, NULL);
+ wwrapper->gizmo = WM_gizmo_new("GIZMO_WT_cage_2d", mgroup, NULL);
- RNA_enum_set(wwrapper->manipulator->ptr, "transform",
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_TRANSLATE | ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE_UNIFORM);
+ RNA_enum_set(wwrapper->gizmo->ptr, "transform",
+ ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE | ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE_UNIFORM);
mgroup->customdata = wwrapper;
}
-static void WIDGETGROUP_node_transform_refresh(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_node_transform_refresh(const bContext *C, wmGizmoGroup *mgroup)
{
Main *bmain = CTX_data_main(C);
- wmManipulator *cage = ((wmManipulatorWrapper *)mgroup->customdata)->manipulator;
+ wmGizmo *cage = ((wmGizmoWrapper *)mgroup->customdata)->gizmo;
const ARegion *ar = CTX_wm_region(C);
/* center is always at the origin */
const float origin[3] = {ar->winx / 2, ar->winy / 2};
@@ -158,40 +158,40 @@ static void WIDGETGROUP_node_transform_refresh(const bContext *C, wmManipulatorG
};
RNA_float_set_array(cage->ptr, "dimensions", dims);
- WM_manipulator_set_matrix_location(cage, origin);
- WM_manipulator_set_flag(cage, WM_MANIPULATOR_HIDDEN, false);
+ WM_gizmo_set_matrix_location(cage, origin);
+ WM_gizmo_set_flag(cage, WM_GIZMO_HIDDEN, false);
/* need to set property here for undo. TODO would prefer to do this in _init */
SpaceNode *snode = CTX_wm_space_node(C);
#if 0
PointerRNA nodeptr;
RNA_pointer_create(snode->id, &RNA_SpaceNodeEditor, snode, &nodeptr);
- WM_manipulator_target_property_def_rna(cage, "offset", &nodeptr, "backdrop_offset", -1);
- WM_manipulator_target_property_def_rna(cage, "scale", &nodeptr, "backdrop_zoom", -1);
+ WM_gizmo_target_property_def_rna(cage, "offset", &nodeptr, "backdrop_offset", -1);
+ WM_gizmo_target_property_def_rna(cage, "scale", &nodeptr, "backdrop_zoom", -1);
#endif
- WM_manipulator_target_property_def_func(
+ WM_gizmo_target_property_def_func(
cage, "matrix",
- &(const struct wmManipulatorPropertyFnParams) {
- .value_get_fn = manipulator_node_backdrop_prop_matrix_get,
- .value_set_fn = manipulator_node_backdrop_prop_matrix_set,
+ &(const struct wmGizmoPropertyFnParams) {
+ .value_get_fn = gizmo_node_backdrop_prop_matrix_get,
+ .value_set_fn = gizmo_node_backdrop_prop_matrix_set,
.range_get_fn = NULL,
.user_data = snode,
});
}
else {
- WM_manipulator_set_flag(cage, WM_MANIPULATOR_HIDDEN, true);
+ WM_gizmo_set_flag(cage, WM_GIZMO_HIDDEN, true);
}
BKE_image_release_ibuf(ima, ibuf, lock);
}
-void NODE_WGT_backdrop_transform(wmManipulatorGroupType *wgt)
+void NODE_WGT_backdrop_transform(wmGizmoGroupType *wgt)
{
wgt->name = "Backdrop Transform Widget";
wgt->idname = "NODE_WGT_backdrop_transform";
- wgt->flag |= WM_MANIPULATORGROUPTYPE_PERSISTENT;
+ wgt->flag |= WM_GIZMOGROUPTYPE_PERSISTENT;
wgt->poll = WIDGETGROUP_node_transform_poll;
wgt->setup = WIDGETGROUP_node_transform_setup;
@@ -202,11 +202,11 @@ void NODE_WGT_backdrop_transform(wmManipulatorGroupType *wgt)
/* -------------------------------------------------------------------- */
-/** \name Crop Manipulator
+/** \name Crop Gizmo
* \{ */
struct NodeCropWidgetGroup {
- wmManipulator *border;
+ wmGizmo *border;
struct {
float dims[2];
@@ -219,7 +219,7 @@ struct NodeCropWidgetGroup {
} update_data;
};
-static void manipulator_node_crop_update(struct NodeCropWidgetGroup *crop_group)
+static void gizmo_node_crop_update(struct NodeCropWidgetGroup *crop_group)
{
RNA_property_update(crop_group->update_data.context, &crop_group->update_data.ptr, crop_group->update_data.prop);
}
@@ -257,8 +257,8 @@ static void two_xy_from_rect(NodeTwoXYs *nxy, const rctf *rect, const float dims
}
/* scale callbacks */
-static void manipulator_node_crop_prop_matrix_get(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_node_crop_prop_matrix_get(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
void *value_p)
{
float (*matrix)[4] = value_p;
@@ -276,8 +276,8 @@ static void manipulator_node_crop_prop_matrix_get(
matrix[3][1] = (BLI_rctf_cent_y(&rct) - 0.5f) * dims[1];
}
-static void manipulator_node_crop_prop_matrix_set(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_node_crop_prop_matrix_set(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
const void *value_p)
{
const float (*matrix)[4] = value_p;
@@ -293,10 +293,10 @@ static void manipulator_node_crop_prop_matrix_set(
BLI_rctf_recenter(&rct, (matrix[3][0] / dims[0]) + 0.5f, (matrix[3][1] / dims[1]) + 0.5f);
BLI_rctf_isect(&(rctf){.xmin = 0, .ymin = 0, .xmax = 1, .ymax = 1}, &rct, &rct);
two_xy_from_rect(nxy, &rct, dims, is_relative);
- manipulator_node_crop_update(crop_group);
+ gizmo_node_crop_update(crop_group);
}
-static bool WIDGETGROUP_node_crop_poll(const bContext *C, wmManipulatorGroupType *UNUSED(wgt))
+static bool WIDGETGROUP_node_crop_poll(const bContext *C, wmGizmoGroupType *UNUSED(wgt))
{
SpaceNode *snode = CTX_wm_space_node(C);
@@ -318,33 +318,33 @@ static bool WIDGETGROUP_node_crop_poll(const bContext *C, wmManipulatorGroupType
return false;
}
-static void WIDGETGROUP_node_crop_setup(const bContext *UNUSED(C), wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_node_crop_setup(const bContext *UNUSED(C), wmGizmoGroup *mgroup)
{
struct NodeCropWidgetGroup *crop_group = MEM_mallocN(sizeof(struct NodeCropWidgetGroup), __func__);
- crop_group->border = WM_manipulator_new("MANIPULATOR_WT_cage_2d", mgroup, NULL);
+ crop_group->border = WM_gizmo_new("GIZMO_WT_cage_2d", mgroup, NULL);
RNA_enum_set(crop_group->border->ptr, "transform",
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_TRANSLATE | ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE);
+ ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE | ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE);
mgroup->customdata = crop_group;
}
-static void WIDGETGROUP_node_crop_draw_prepare(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_node_crop_draw_prepare(const bContext *C, wmGizmoGroup *mgroup)
{
ARegion *ar = CTX_wm_region(C);
- wmManipulator *mpr = mgroup->manipulators.first;
+ wmGizmo *mpr = mgroup->gizmos.first;
SpaceNode *snode = CTX_wm_space_node(C);
- node_manipulator_calc_matrix_space(snode, ar, mpr->matrix_space);
+ node_gizmo_calc_matrix_space(snode, ar, mpr->matrix_space);
}
-static void WIDGETGROUP_node_crop_refresh(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_node_crop_refresh(const bContext *C, wmGizmoGroup *mgroup)
{
Main *bmain = CTX_data_main(C);
struct NodeCropWidgetGroup *crop_group = mgroup->customdata;
- wmManipulator *mpr = crop_group->border;
+ wmGizmo *mpr = crop_group->border;
void *lock;
Image *ima = BKE_image_verify_viewer(bmain, IMA_TYPE_COMPOSITE, "Viewer Node");
@@ -355,7 +355,7 @@ static void WIDGETGROUP_node_crop_refresh(const bContext *C, wmManipulatorGroup
crop_group->state.dims[1] = (ibuf->y > 0) ? ibuf->y : 64.0f;
RNA_float_set_array(mpr->ptr, "dimensions", crop_group->state.dims);
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_HIDDEN, false);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_HIDDEN, false);
SpaceNode *snode = CTX_wm_space_node(C);
bNode *node = nodeGetActive(snode->edittree);
@@ -364,28 +364,28 @@ static void WIDGETGROUP_node_crop_refresh(const bContext *C, wmManipulatorGroup
RNA_pointer_create((ID *)snode->edittree, &RNA_CompositorNodeCrop, node, &crop_group->update_data.ptr);
crop_group->update_data.prop = RNA_struct_find_property(&crop_group->update_data.ptr, "relative");
- WM_manipulator_target_property_def_func(
+ WM_gizmo_target_property_def_func(
mpr, "matrix",
- &(const struct wmManipulatorPropertyFnParams) {
- .value_get_fn = manipulator_node_crop_prop_matrix_get,
- .value_set_fn = manipulator_node_crop_prop_matrix_set,
+ &(const struct wmGizmoPropertyFnParams) {
+ .value_get_fn = gizmo_node_crop_prop_matrix_get,
+ .value_set_fn = gizmo_node_crop_prop_matrix_set,
.range_get_fn = NULL,
.user_data = node,
});
}
else {
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_HIDDEN, true);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_HIDDEN, true);
}
BKE_image_release_ibuf(ima, ibuf, lock);
}
-void NODE_WGT_backdrop_crop(wmManipulatorGroupType *wgt)
+void NODE_WGT_backdrop_crop(wmGizmoGroupType *wgt)
{
wgt->name = "Backdrop Crop Widget";
wgt->idname = "NODE_WGT_backdrop_crop";
- wgt->flag |= WM_MANIPULATORGROUPTYPE_PERSISTENT;
+ wgt->flag |= WM_GIZMOGROUPTYPE_PERSISTENT;
wgt->poll = WIDGETGROUP_node_crop_poll;
wgt->setup = WIDGETGROUP_node_crop_setup;
@@ -401,14 +401,14 @@ void NODE_WGT_backdrop_crop(wmManipulatorGroupType *wgt)
* \{ */
struct NodeSunBeamsWidgetGroup {
- wmManipulator *manipulator;
+ wmGizmo *gizmo;
struct {
float dims[2];
} state;
};
-static bool WIDGETGROUP_node_sbeam_poll(const bContext *C, wmManipulatorGroupType *UNUSED(wgt))
+static bool WIDGETGROUP_node_sbeam_poll(const bContext *C, wmGizmoGroupType *UNUSED(wgt))
{
SpaceNode *snode = CTX_wm_space_node(C);
@@ -427,36 +427,36 @@ static bool WIDGETGROUP_node_sbeam_poll(const bContext *C, wmManipulatorGroupTyp
return false;
}
-static void WIDGETGROUP_node_sbeam_setup(const bContext *UNUSED(C), wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_node_sbeam_setup(const bContext *UNUSED(C), wmGizmoGroup *mgroup)
{
struct NodeSunBeamsWidgetGroup *sbeam_group = MEM_mallocN(sizeof(struct NodeSunBeamsWidgetGroup), __func__);
- sbeam_group->manipulator = WM_manipulator_new("MANIPULATOR_WT_grab_3d", mgroup, NULL);
- wmManipulator *mpr = sbeam_group->manipulator;
+ sbeam_group->gizmo = WM_gizmo_new("GIZMO_WT_grab_3d", mgroup, NULL);
+ wmGizmo *mpr = sbeam_group->gizmo;
- RNA_enum_set(mpr->ptr, "draw_style", ED_MANIPULATOR_GRAB_STYLE_CROSS_2D);
+ RNA_enum_set(mpr->ptr, "draw_style", ED_GIZMO_GRAB_STYLE_CROSS_2D);
mpr->scale_basis = 0.05f;
mgroup->customdata = sbeam_group;
}
-static void WIDGETGROUP_node_sbeam_draw_prepare(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_node_sbeam_draw_prepare(const bContext *C, wmGizmoGroup *mgroup)
{
struct NodeSunBeamsWidgetGroup *sbeam_group = mgroup->customdata;
ARegion *ar = CTX_wm_region(C);
- wmManipulator *mpr = mgroup->manipulators.first;
+ wmGizmo *mpr = mgroup->gizmos.first;
SpaceNode *snode = CTX_wm_space_node(C);
- node_manipulator_calc_matrix_space_with_image_dims(snode, ar, sbeam_group->state.dims, mpr->matrix_space);
+ node_gizmo_calc_matrix_space_with_image_dims(snode, ar, sbeam_group->state.dims, mpr->matrix_space);
}
-static void WIDGETGROUP_node_sbeam_refresh(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_node_sbeam_refresh(const bContext *C, wmGizmoGroup *mgroup)
{
Main *bmain = CTX_data_main(C);
struct NodeSunBeamsWidgetGroup *sbeam_group = mgroup->customdata;
- wmManipulator *mpr = sbeam_group->manipulator;
+ wmGizmo *mpr = sbeam_group->gizmo;
void *lock;
Image *ima = BKE_image_verify_viewer(bmain, IMA_TYPE_COMPOSITE, "Viewer Node");
@@ -472,23 +472,23 @@ static void WIDGETGROUP_node_sbeam_refresh(const bContext *C, wmManipulatorGroup
/* need to set property here for undo. TODO would prefer to do this in _init */
PointerRNA nodeptr;
RNA_pointer_create((ID *)snode->edittree, &RNA_CompositorNodeSunBeams, node, &nodeptr);
- WM_manipulator_target_property_def_rna(mpr, "offset", &nodeptr, "source", -1);
+ WM_gizmo_target_property_def_rna(mpr, "offset", &nodeptr, "source", -1);
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_DRAW_MODAL, true);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_DRAW_MODAL, true);
}
else {
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_HIDDEN, true);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_HIDDEN, true);
}
BKE_image_release_ibuf(ima, ibuf, lock);
}
-void NODE_WGT_backdrop_sun_beams(wmManipulatorGroupType *wgt)
+void NODE_WGT_backdrop_sun_beams(wmGizmoGroupType *wgt)
{
wgt->name = "Sun Beams Widget";
wgt->idname = "NODE_WGT_sbeam";
- wgt->flag |= WM_MANIPULATORGROUPTYPE_PERSISTENT;
+ wgt->flag |= WM_GIZMOGROUPTYPE_PERSISTENT;
wgt->poll = WIDGETGROUP_node_sbeam_poll;
wgt->setup = WIDGETGROUP_node_sbeam_setup;
@@ -506,14 +506,14 @@ void NODE_WGT_backdrop_sun_beams(wmManipulatorGroupType *wgt)
* \{ */
struct NodeCornerPinWidgetGroup {
- wmManipulator *manipulators[4];
+ wmGizmo *gizmos[4];
struct {
float dims[2];
} state;
};
-static bool WIDGETGROUP_node_corner_pin_poll(const bContext *C, wmManipulatorGroupType *UNUSED(wgt))
+static bool WIDGETGROUP_node_corner_pin_poll(const bContext *C, wmGizmoGroupType *UNUSED(wgt))
{
SpaceNode *snode = CTX_wm_space_node(C);
@@ -532,16 +532,16 @@ static bool WIDGETGROUP_node_corner_pin_poll(const bContext *C, wmManipulatorGro
return false;
}
-static void WIDGETGROUP_node_corner_pin_setup(const bContext *UNUSED(C), wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_node_corner_pin_setup(const bContext *UNUSED(C), wmGizmoGroup *mgroup)
{
struct NodeCornerPinWidgetGroup *cpin_group = MEM_mallocN(sizeof(struct NodeCornerPinWidgetGroup), __func__);
- const wmManipulatorType *wt_grab_3d = WM_manipulatortype_find("MANIPULATOR_WT_grab_3d", false);
+ const wmGizmoType *wt_grab_3d = WM_gizmotype_find("GIZMO_WT_grab_3d", false);
for (int i = 0; i < 4; i++) {
- cpin_group->manipulators[i] = WM_manipulator_new_ptr(wt_grab_3d, mgroup, NULL);
- wmManipulator *mpr = cpin_group->manipulators[i];
+ cpin_group->gizmos[i] = WM_gizmo_new_ptr(wt_grab_3d, mgroup, NULL);
+ wmGizmo *mpr = cpin_group->gizmos[i];
- RNA_enum_set(mpr->ptr, "draw_style", ED_MANIPULATOR_GRAB_STYLE_CROSS_2D);
+ RNA_enum_set(mpr->ptr, "draw_style", ED_GIZMO_GRAB_STYLE_CROSS_2D);
mpr->scale_basis = 0.01f;
}
@@ -549,7 +549,7 @@ static void WIDGETGROUP_node_corner_pin_setup(const bContext *UNUSED(C), wmManip
mgroup->customdata = cpin_group;
}
-static void WIDGETGROUP_node_corner_pin_draw_prepare(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_node_corner_pin_draw_prepare(const bContext *C, wmGizmoGroup *mgroup)
{
struct NodeCornerPinWidgetGroup *cpin_group = mgroup->customdata;
ARegion *ar = CTX_wm_region(C);
@@ -557,15 +557,15 @@ static void WIDGETGROUP_node_corner_pin_draw_prepare(const bContext *C, wmManipu
SpaceNode *snode = CTX_wm_space_node(C);
float matrix_space[4][4];
- node_manipulator_calc_matrix_space_with_image_dims(snode, ar, cpin_group->state.dims, matrix_space);
+ node_gizmo_calc_matrix_space_with_image_dims(snode, ar, cpin_group->state.dims, matrix_space);
for (int i = 0; i < 4; i++) {
- wmManipulator *mpr = cpin_group->manipulators[i];
+ wmGizmo *mpr = cpin_group->gizmos[i];
copy_m4_m4(mpr->matrix_space, matrix_space);
}
}
-static void WIDGETGROUP_node_corner_pin_refresh(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_node_corner_pin_refresh(const bContext *C, wmGizmoGroup *mgroup)
{
Main *bmain = CTX_data_main(C);
struct NodeCornerPinWidgetGroup *cpin_group = mgroup->customdata;
@@ -585,32 +585,32 @@ static void WIDGETGROUP_node_corner_pin_refresh(const bContext *C, wmManipulator
int i = 0;
for (bNodeSocket *sock = node->inputs.first; sock && i < 4; sock = sock->next) {
if (sock->type == SOCK_VECTOR) {
- wmManipulator *mpr = cpin_group->manipulators[i++];
+ wmGizmo *mpr = cpin_group->gizmos[i++];
PointerRNA sockptr;
RNA_pointer_create((ID *)snode->edittree, &RNA_NodeSocket, sock, &sockptr);
- WM_manipulator_target_property_def_rna(mpr, "offset", &sockptr, "default_value", -1);
+ WM_gizmo_target_property_def_rna(mpr, "offset", &sockptr, "default_value", -1);
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_DRAW_MODAL, true);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_DRAW_MODAL, true);
}
}
}
else {
for (int i = 0; i < 4; i++) {
- wmManipulator *mpr = cpin_group->manipulators[i];
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_HIDDEN, true);
+ wmGizmo *mpr = cpin_group->gizmos[i];
+ WM_gizmo_set_flag(mpr, WM_GIZMO_HIDDEN, true);
}
}
BKE_image_release_ibuf(ima, ibuf, lock);
}
-void NODE_WGT_backdrop_corner_pin(wmManipulatorGroupType *wgt)
+void NODE_WGT_backdrop_corner_pin(wmGizmoGroupType *wgt)
{
wgt->name = "Corner Pin Widget";
wgt->idname = "NODE_WGT_backdrop_corner_pin";
- wgt->flag |= WM_MANIPULATORGROUPTYPE_PERSISTENT;
+ wgt->flag |= WM_GIZMOGROUPTYPE_PERSISTENT;
wgt->poll = WIDGETGROUP_node_corner_pin_poll;
wgt->setup = WIDGETGROUP_node_corner_pin_setup;
diff --git a/source/blender/editors/space_node/node_intern.h b/source/blender/editors/space_node/node_intern.h
index d7a43bda461..742c3975c8d 100644
--- a/source/blender/editors/space_node/node_intern.h
+++ b/source/blender/editors/space_node/node_intern.h
@@ -224,10 +224,10 @@ void NODE_OT_viewer_border(struct wmOperatorType *ot);
void NODE_OT_clear_viewer_border(struct wmOperatorType *ot);
/* node_widgets.c */
-void NODE_WGT_backdrop_transform(struct wmManipulatorGroupType *wgt);
-void NODE_WGT_backdrop_crop(struct wmManipulatorGroupType *wgt);
-void NODE_WGT_backdrop_sun_beams(struct wmManipulatorGroupType *wgt);
-void NODE_WGT_backdrop_corner_pin(struct wmManipulatorGroupType *wgt);
+void NODE_WGT_backdrop_transform(struct wmGizmoGroupType *wgt);
+void NODE_WGT_backdrop_crop(struct wmGizmoGroupType *wgt);
+void NODE_WGT_backdrop_sun_beams(struct wmGizmoGroupType *wgt);
+void NODE_WGT_backdrop_corner_pin(struct wmGizmoGroupType *wgt);
extern const char *node_context_dir[];
diff --git a/source/blender/editors/space_node/space_node.c b/source/blender/editors/space_node/space_node.c
index a87a68392c7..1149b910947 100644
--- a/source/blender/editors/space_node/space_node.c
+++ b/source/blender/editors/space_node/space_node.c
@@ -646,13 +646,13 @@ static void node_main_region_init(wmWindowManager *wm, ARegion *ar)
UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_CUSTOM, ar->winx, ar->winy);
- /* manipulators stay in the background for now - quick patchjob to make sure nodes themselves work */
- if (ar->manipulator_map == NULL) {
- ar->manipulator_map = WM_manipulatormap_new_from_type(
- &(const struct wmManipulatorMapType_Params){SPACE_NODE, RGN_TYPE_WINDOW});
+ /* gizmos stay in the background for now - quick patchjob to make sure nodes themselves work */
+ if (ar->gizmo_map == NULL) {
+ ar->gizmo_map = WM_gizmomap_new_from_type(
+ &(const struct wmGizmoMapType_Params){SPACE_NODE, RGN_TYPE_WINDOW});
}
- WM_manipulatormap_add_handlers(ar, ar->manipulator_map);
+ WM_gizmomap_add_handlers(ar, ar->gizmo_map);
/* own keymaps */
keymap = WM_keymap_find(wm->defaultconf, "Node Generic", SPACE_NODE, 0);
@@ -752,7 +752,7 @@ static void node_region_listener(
wmWindow *UNUSED(win), ScrArea *UNUSED(sa), ARegion *ar,
wmNotifier *wmn, const Scene *UNUSED(scene))
{
- wmManipulatorMap *mmap = ar->manipulator_map;
+ wmGizmoMap *mmap = ar->gizmo_map;
/* context changes */
switch (wmn->category) {
@@ -762,13 +762,13 @@ static void node_region_listener(
ED_region_tag_redraw(ar);
break;
case ND_SPACE_NODE_VIEW:
- WM_manipulatormap_tag_refresh(mmap);
+ WM_gizmomap_tag_refresh(mmap);
break;
}
break;
case NC_SCREEN:
if (wmn->data == ND_LAYOUTSET || wmn->action == NA_EDITED) {
- WM_manipulatormap_tag_refresh(mmap);
+ WM_gizmomap_tag_refresh(mmap);
}
switch (wmn->data) {
case ND_ANIMPLAY:
@@ -784,13 +784,13 @@ static void node_region_listener(
case NC_SCENE:
ED_region_tag_redraw(ar);
if (wmn->data == ND_RENDER_RESULT) {
- WM_manipulatormap_tag_refresh(mmap);
+ WM_gizmomap_tag_refresh(mmap);
}
break;
case NC_NODE:
ED_region_tag_redraw(ar);
if (ELEM(wmn->action, NA_EDITED, NA_SELECTED)) {
- WM_manipulatormap_tag_refresh(mmap);
+ WM_gizmomap_tag_refresh(mmap);
}
break;
case NC_MATERIAL:
@@ -863,12 +863,12 @@ static int node_context(const bContext *C, const char *member, bContextDataResul
static void node_widgets(void)
{
/* create the widgetmap for the area here */
- wmManipulatorMapType *mmap_type = WM_manipulatormaptype_ensure(
- &(const struct wmManipulatorMapType_Params){SPACE_NODE, RGN_TYPE_WINDOW});
- WM_manipulatorgrouptype_append_and_link(mmap_type, NODE_WGT_backdrop_transform);
- WM_manipulatorgrouptype_append_and_link(mmap_type, NODE_WGT_backdrop_crop);
- WM_manipulatorgrouptype_append_and_link(mmap_type, NODE_WGT_backdrop_sun_beams);
- WM_manipulatorgrouptype_append_and_link(mmap_type, NODE_WGT_backdrop_corner_pin);
+ wmGizmoMapType *mmap_type = WM_gizmomaptype_ensure(
+ &(const struct wmGizmoMapType_Params){SPACE_NODE, RGN_TYPE_WINDOW});
+ WM_gizmogrouptype_append_and_link(mmap_type, NODE_WGT_backdrop_transform);
+ WM_gizmogrouptype_append_and_link(mmap_type, NODE_WGT_backdrop_crop);
+ WM_gizmogrouptype_append_and_link(mmap_type, NODE_WGT_backdrop_sun_beams);
+ WM_gizmogrouptype_append_and_link(mmap_type, NODE_WGT_backdrop_corner_pin);
}
static void node_id_remap(ScrArea *UNUSED(sa), SpaceLink *slink, ID *old_id, ID *new_id)
@@ -987,7 +987,7 @@ void ED_spacetype_node(void)
st->refresh = node_area_refresh;
st->context = node_context;
st->dropboxes = node_dropboxes;
- st->manipulators = node_widgets;
+ st->gizmos = node_widgets;
st->id_remap = node_id_remap;
st->space_subtype_item_extend = node_space_subtype_item_extend;
st->space_subtype_get = node_space_subtype_get;
diff --git a/source/blender/editors/space_sequencer/sequencer_select.c b/source/blender/editors/space_sequencer/sequencer_select.c
index 1ec9ea53e33..c440d12e444 100644
--- a/source/blender/editors/space_sequencer/sequencer_select.c
+++ b/source/blender/editors/space_sequencer/sequencer_select.c
@@ -829,7 +829,7 @@ void SEQUENCER_OT_select_handles(wmOperatorType *ot)
/* identifiers */
ot->name = "Select Handles";
ot->idname = "SEQUENCER_OT_select_handles";
- ot->description = "Select manipulator handles on the sides of the selected strip";
+ ot->description = "Select gizmo handles on the sides of the selected strip";
/* api callbacks */
ot->exec = sequencer_select_handles_exec;
diff --git a/source/blender/editors/space_view3d/space_view3d.c b/source/blender/editors/space_view3d/space_view3d.c
index 691baaf48f7..6d4009e9d2b 100644
--- a/source/blender/editors/space_view3d/space_view3d.c
+++ b/source/blender/editors/space_view3d/space_view3d.c
@@ -451,12 +451,12 @@ static void view3d_main_region_init(wmWindowManager *wm, ARegion *ar)
ListBase *lb;
wmKeyMap *keymap;
- if (ar->manipulator_map == NULL) {
- ar->manipulator_map = WM_manipulatormap_new_from_type(
- &(const struct wmManipulatorMapType_Params) {SPACE_VIEW3D, RGN_TYPE_WINDOW});
+ if (ar->gizmo_map == NULL) {
+ ar->gizmo_map = WM_gizmomap_new_from_type(
+ &(const struct wmGizmoMapType_Params) {SPACE_VIEW3D, RGN_TYPE_WINDOW});
}
- WM_manipulatormap_add_handlers(ar, ar->manipulator_map);
+ WM_gizmomap_add_handlers(ar, ar->gizmo_map);
/* object ops. */
@@ -716,26 +716,26 @@ static void view3d_dropboxes(void)
static void view3d_widgets(void)
{
- wmManipulatorMapType *mmap_type = WM_manipulatormaptype_ensure(
- &(const struct wmManipulatorMapType_Params){SPACE_VIEW3D, RGN_TYPE_WINDOW});
-
- WM_manipulatorgrouptype_append_and_link(mmap_type, VIEW3D_WGT_lamp_spot);
- WM_manipulatorgrouptype_append_and_link(mmap_type, VIEW3D_WGT_lamp_area);
- WM_manipulatorgrouptype_append_and_link(mmap_type, VIEW3D_WGT_lamp_target);
- WM_manipulatorgrouptype_append_and_link(mmap_type, VIEW3D_WGT_force_field);
- WM_manipulatorgrouptype_append_and_link(mmap_type, VIEW3D_WGT_camera);
- WM_manipulatorgrouptype_append_and_link(mmap_type, VIEW3D_WGT_camera_view);
- WM_manipulatorgrouptype_append_and_link(mmap_type, VIEW3D_WGT_empty_image);
- WM_manipulatorgrouptype_append_and_link(mmap_type, VIEW3D_WGT_armature_spline);
-
- WM_manipulatorgrouptype_append(TRANSFORM_WGT_manipulator);
- WM_manipulatorgrouptype_append(VIEW3D_WGT_xform_cage);
-
- WM_manipulatorgrouptype_append(VIEW3D_WGT_ruler);
- WM_manipulatortype_append(VIEW3D_WT_ruler_item);
-
- WM_manipulatorgrouptype_append_and_link(mmap_type, VIEW3D_WGT_navigate);
- WM_manipulatortype_append(VIEW3D_WT_navigate_rotate);
+ wmGizmoMapType *mmap_type = WM_gizmomaptype_ensure(
+ &(const struct wmGizmoMapType_Params){SPACE_VIEW3D, RGN_TYPE_WINDOW});
+
+ WM_gizmogrouptype_append_and_link(mmap_type, VIEW3D_WGT_lamp_spot);
+ WM_gizmogrouptype_append_and_link(mmap_type, VIEW3D_WGT_lamp_area);
+ WM_gizmogrouptype_append_and_link(mmap_type, VIEW3D_WGT_lamp_target);
+ WM_gizmogrouptype_append_and_link(mmap_type, VIEW3D_WGT_force_field);
+ WM_gizmogrouptype_append_and_link(mmap_type, VIEW3D_WGT_camera);
+ WM_gizmogrouptype_append_and_link(mmap_type, VIEW3D_WGT_camera_view);
+ WM_gizmogrouptype_append_and_link(mmap_type, VIEW3D_WGT_empty_image);
+ WM_gizmogrouptype_append_and_link(mmap_type, VIEW3D_WGT_armature_spline);
+
+ WM_gizmogrouptype_append(TRANSFORM_WGT_gizmo);
+ WM_gizmogrouptype_append(VIEW3D_WGT_xform_cage);
+
+ WM_gizmogrouptype_append(VIEW3D_WGT_ruler);
+ WM_gizmotype_append(VIEW3D_WT_ruler_item);
+
+ WM_gizmogrouptype_append_and_link(mmap_type, VIEW3D_WGT_navigate);
+ WM_gizmotype_append(VIEW3D_WT_navigate_rotate);
}
@@ -815,13 +815,13 @@ static void view3d_main_region_listener(
{
View3D *v3d = sa->spacedata.first;
RegionView3D *rv3d = ar->regiondata;
- wmManipulatorMap *mmap = ar->manipulator_map;
+ wmGizmoMap *mmap = ar->gizmo_map;
/* context changes */
switch (wmn->category) {
case NC_WM:
if (ELEM(wmn->data, ND_UNDO)) {
- WM_manipulatormap_tag_refresh(mmap);
+ WM_gizmomap_tag_refresh(mmap);
}
break;
case NC_ANIMATION:
@@ -848,14 +848,14 @@ static void view3d_main_region_listener(
if (wmn->reference)
view3d_recalc_used_layers(ar, wmn, wmn->reference);
ED_region_tag_redraw(ar);
- WM_manipulatormap_tag_refresh(mmap);
+ WM_gizmomap_tag_refresh(mmap);
break;
case ND_LAYER:
if (wmn->reference) {
BKE_screen_view3d_sync(v3d, wmn->reference);
}
ED_region_tag_redraw(ar);
- WM_manipulatormap_tag_refresh(mmap);
+ WM_gizmomap_tag_refresh(mmap);
break;
case ND_OB_ACTIVE:
case ND_OB_SELECT:
@@ -867,7 +867,7 @@ static void view3d_main_region_listener(
case ND_MARKERS:
case ND_MODE:
ED_region_tag_redraw(ar);
- WM_manipulatormap_tag_refresh(mmap);
+ WM_gizmomap_tag_refresh(mmap);
break;
case ND_WORLD:
/* handled by space_view3d_listener() for v3d access */
@@ -899,7 +899,7 @@ static void view3d_main_region_listener(
case ND_POINTCACHE:
case ND_LOD:
ED_region_tag_redraw(ar);
- WM_manipulatormap_tag_refresh(mmap);
+ WM_gizmomap_tag_refresh(mmap);
break;
}
switch (wmn->action) {
@@ -912,7 +912,7 @@ static void view3d_main_region_listener(
switch (wmn->data) {
case ND_SELECT:
{
- WM_manipulatormap_tag_refresh(mmap);
+ WM_gizmomap_tag_refresh(mmap);
ATTR_FALLTHROUGH;
}
case ND_DATA:
@@ -993,7 +993,7 @@ static void view3d_main_region_listener(
break;
case ND_LIGHTING_DRAW:
ED_region_tag_redraw(ar);
- WM_manipulatormap_tag_refresh(mmap);
+ WM_gizmomap_tag_refresh(mmap);
break;
}
break;
@@ -1019,7 +1019,7 @@ static void view3d_main_region_listener(
rv3d->rflag |= RV3D_GPULIGHT_UPDATE;
}
ED_region_tag_redraw(ar);
- WM_manipulatormap_tag_refresh(mmap);
+ WM_gizmomap_tag_refresh(mmap);
}
break;
case NC_ID:
@@ -1035,7 +1035,7 @@ static void view3d_main_region_listener(
case ND_LAYOUTBROWSE:
case ND_LAYOUTDELETE:
case ND_LAYOUTSET:
- WM_manipulatormap_tag_refresh(mmap);
+ WM_gizmomap_tag_refresh(mmap);
ED_region_tag_redraw(ar);
break;
case ND_LAYER:
@@ -1545,7 +1545,7 @@ void ED_spacetype_view3d(void)
st->operatortypes = view3d_operatortypes;
st->keymap = view3d_keymap;
st->dropboxes = view3d_dropboxes;
- st->manipulators = view3d_widgets;
+ st->gizmos = view3d_widgets;
st->context = view3d_context;
st->id_remap = view3d_id_remap;
diff --git a/source/blender/editors/space_view3d/view3d_draw.c b/source/blender/editors/space_view3d/view3d_draw.c
index 62e9d4ee3bf..3b86e574a1a 100644
--- a/source/blender/editors/space_view3d/view3d_draw.c
+++ b/source/blender/editors/space_view3d/view3d_draw.c
@@ -1203,10 +1203,10 @@ void view3d_draw_region_info(const bContext *C, ARegion *ar, const int UNUSED(of
BLF_batch_draw_begin();
- if ((U.uiflag & USER_SHOW_MANIPULATOR_AXIS) ||
+ if ((U.uiflag & USER_SHOW_GIZMO_AXIS) ||
(v3d->flag2 & V3D_RENDER_OVERRIDE) ||
- /* No need to display manipulator and this info. */
- (v3d->mpr_flag & (V3D_MANIPULATOR_HIDE | V3D_MANIPULATOR_HIDE_NAVIGATE)))
+ /* No need to display gizmo and this info. */
+ (v3d->mpr_flag & (V3D_GIZMO_HIDE | V3D_GIZMO_HIDE_NAVIGATE)))
{
/* pass */
}
diff --git a/source/blender/editors/space_view3d/view3d_edit.c b/source/blender/editors/space_view3d/view3d_edit.c
index b6e20def432..792a341fba4 100644
--- a/source/blender/editors/space_view3d/view3d_edit.c
+++ b/source/blender/editors/space_view3d/view3d_edit.c
@@ -2812,8 +2812,8 @@ static int viewselected_exec(bContext *C, wmOperator *op)
ViewLayer *view_layer_eval = DEG_get_evaluated_view_layer(depsgraph);
bGPdata *gpd = CTX_data_gpencil_data(C);
const bool is_gp_edit = ((gpd) && (gpd->flag & GP_DATA_STROKE_EDITMODE));
- const bool is_face_map = ((is_gp_edit == false) && ar->manipulator_map &&
- WM_manipulatormap_is_any_selected(ar->manipulator_map));
+ const bool is_face_map = ((is_gp_edit == false) && ar->gizmo_map &&
+ WM_gizmomap_is_any_selected(ar->gizmo_map));
Object *ob_eval = OBACT(view_layer_eval);
Object *obedit = CTX_data_edit_object(C);
float min[3], max[3];
@@ -2858,7 +2858,7 @@ static int viewselected_exec(bContext *C, wmOperator *op)
CTX_DATA_END;
}
else if (is_face_map) {
- ok = WM_manipulatormap_minmax(ar->manipulator_map, true, true, min, max);
+ ok = WM_gizmomap_minmax(ar->gizmo_map, true, true, min, max);
}
else if (obedit) {
/* only selected */
@@ -3705,7 +3705,7 @@ static int view_axis_exec(bContext *C, wmOperator *op)
Object *obact = CTX_data_active_object(C);
if (obact != NULL) {
float twmat[3][3];
- /* same as transform manipulator when normal is set */
+ /* same as transform gizmo when normal is set */
ED_getTransformOrientationMatrix(C, twmat, V3D_AROUND_ACTIVE);
align_quat = align_quat_buf;
mat3_to_quat(align_quat, twmat);
diff --git a/source/blender/editors/space_view3d/view3d_gizmo_armature.c b/source/blender/editors/space_view3d/view3d_gizmo_armature.c
index 16c7d574873..c7b12529798 100644
--- a/source/blender/editors/space_view3d/view3d_gizmo_armature.c
+++ b/source/blender/editors/space_view3d/view3d_gizmo_armature.c
@@ -52,7 +52,7 @@
/* -------------------------------------------------------------------- */
-/** \name Armature Spline Manipulator
+/** \name Armature Spline Gizmo
*
* \{ */
@@ -68,7 +68,7 @@
#define BBONE_SCALE_Y 3.0f
struct BoneSplineHandle {
- wmManipulator *manipulator;
+ wmGizmo *gizmo;
bPoseChannel *pchan;
/* We could remove, keep since at the moment for checking the conversion. */
float co[3];
@@ -79,8 +79,8 @@ struct BoneSplineWidgetGroup {
struct BoneSplineHandle handles[2];
};
-static void manipulator_bbone_offset_get(
- const wmManipulator *UNUSED(mpr), wmManipulatorProperty *mpr_prop,
+static void gizmo_bbone_offset_get(
+ const wmGizmo *UNUSED(mpr), wmGizmoProperty *mpr_prop,
void *value_p)
{
struct BoneSplineHandle *bh = mpr_prop->custom_func.user_data;
@@ -102,8 +102,8 @@ static void manipulator_bbone_offset_get(
copy_v3_v3(value, bh->co);
}
-static void manipulator_bbone_offset_set(
- const wmManipulator *UNUSED(mpr), wmManipulatorProperty *mpr_prop,
+static void gizmo_bbone_offset_set(
+ const wmGizmo *UNUSED(mpr), wmGizmoProperty *mpr_prop,
const void *value_p)
{
struct BoneSplineHandle *bh = mpr_prop->custom_func.user_data;
@@ -127,7 +127,7 @@ static void manipulator_bbone_offset_set(
}
-static bool WIDGETGROUP_armature_spline_poll(const bContext *C, wmManipulatorGroupType *UNUSED(wgt))
+static bool WIDGETGROUP_armature_spline_poll(const bContext *C, wmGizmoGroupType *UNUSED(wgt))
{
Object *ob = BKE_object_pose_armature_get(CTX_data_active_object(C));
if (ob != NULL) {
@@ -136,7 +136,7 @@ static bool WIDGETGROUP_armature_spline_poll(const bContext *C, wmManipulatorGro
if (arm->act_bone && arm->act_bone->segments > 1) {
View3D *v3d = CTX_wm_view3d(C);
if ((v3d->flag2 & V3D_RENDER_OVERRIDE) ||
- (v3d->mpr_flag & (V3D_MANIPULATOR_HIDE | V3D_MANIPULATOR_HIDE_CONTEXT)))
+ (v3d->mpr_flag & (V3D_GIZMO_HIDE | V3D_GIZMO_HIDE_CONTEXT)))
{
/* pass */
}
@@ -150,27 +150,27 @@ static bool WIDGETGROUP_armature_spline_poll(const bContext *C, wmManipulatorGro
}
-static void WIDGETGROUP_armature_spline_setup(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_armature_spline_setup(const bContext *C, wmGizmoGroup *mgroup)
{
Object *ob = BKE_object_pose_armature_get(CTX_data_active_object(C));
bPoseChannel *pchan = BKE_pose_channel_active(ob);
- const wmManipulatorType *wt_grab = WM_manipulatortype_find("MANIPULATOR_WT_grab_3d", true);
+ const wmGizmoType *wt_grab = WM_gizmotype_find("GIZMO_WT_grab_3d", true);
struct BoneSplineWidgetGroup *bspline_group = MEM_callocN(sizeof(struct BoneSplineWidgetGroup), __func__);
mgroup->customdata = bspline_group;
/* Handles */
for (int i = 0; i < ARRAY_SIZE(bspline_group->handles); i++) {
- wmManipulator *mpr;
- mpr = bspline_group->handles[i].manipulator = WM_manipulator_new_ptr(wt_grab, mgroup, NULL);
- RNA_enum_set(mpr->ptr, "draw_style", ED_MANIPULATOR_GRAB_STYLE_RING_2D);
+ wmGizmo *mpr;
+ mpr = bspline_group->handles[i].gizmo = WM_gizmo_new_ptr(wt_grab, mgroup, NULL);
+ RNA_enum_set(mpr->ptr, "draw_style", ED_GIZMO_GRAB_STYLE_RING_2D);
RNA_enum_set(mpr->ptr, "draw_options",
- ED_MANIPULATOR_GRAB_DRAW_FLAG_FILL | ED_MANIPULATOR_GRAB_DRAW_FLAG_ALIGN_VIEW);
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_DRAW_VALUE, true);
+ ED_GIZMO_GRAB_DRAW_FLAG_FILL | ED_GIZMO_GRAB_DRAW_FLAG_ALIGN_VIEW);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_DRAW_VALUE, true);
- UI_GetThemeColor3fv(TH_MANIPULATOR_PRIMARY, mpr->color);
- UI_GetThemeColor3fv(TH_MANIPULATOR_HI, mpr->color_hi);
+ UI_GetThemeColor3fv(TH_GIZMO_PRIMARY, mpr->color);
+ UI_GetThemeColor3fv(TH_GIZMO_HI, mpr->color_hi);
mpr->scale_basis = 0.06f;
@@ -180,7 +180,7 @@ static void WIDGETGROUP_armature_spline_setup(const bContext *C, wmManipulatorGr
}
}
-static void WIDGETGROUP_armature_spline_refresh(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_armature_spline_refresh(const bContext *C, wmGizmoGroup *mgroup)
{
Object *ob = BKE_object_pose_armature_get(CTX_data_active_object(C));
@@ -192,7 +192,7 @@ static void WIDGETGROUP_armature_spline_refresh(const bContext *C, wmManipulator
/* Handles */
for (int i = 0; i < ARRAY_SIZE(bspline_group->handles); i++) {
- wmManipulator *mpr = bspline_group->handles[i].manipulator;
+ wmGizmo *mpr = bspline_group->handles[i].gizmo;
bspline_group->handles[i].pchan = pchan;
bspline_group->handles[i].index = i;
@@ -201,24 +201,24 @@ static void WIDGETGROUP_armature_spline_refresh(const bContext *C, wmManipulator
copy_m4_m4(mpr->matrix_space, mat);
/* need to set property here for undo. TODO would prefer to do this in _init */
- WM_manipulator_target_property_def_func(
+ WM_gizmo_target_property_def_func(
mpr, "offset",
- &(const struct wmManipulatorPropertyFnParams) {
- .value_get_fn = manipulator_bbone_offset_get,
- .value_set_fn = manipulator_bbone_offset_set,
+ &(const struct wmGizmoPropertyFnParams) {
+ .value_get_fn = gizmo_bbone_offset_get,
+ .value_set_fn = gizmo_bbone_offset_set,
.range_get_fn = NULL,
.user_data = &bspline_group->handles[i],
});
}
}
-void VIEW3D_WGT_armature_spline(wmManipulatorGroupType *wgt)
+void VIEW3D_WGT_armature_spline(wmGizmoGroupType *wgt)
{
wgt->name = "Armature Spline Widgets";
wgt->idname = "VIEW3D_WGT_armature_spline";
- wgt->flag = (WM_MANIPULATORGROUPTYPE_PERSISTENT |
- WM_MANIPULATORGROUPTYPE_3D);
+ wgt->flag = (WM_GIZMOGROUPTYPE_PERSISTENT |
+ WM_GIZMOGROUPTYPE_3D);
wgt->poll = WIDGETGROUP_armature_spline_poll;
wgt->setup = WIDGETGROUP_armature_spline_setup;
diff --git a/source/blender/editors/space_view3d/view3d_gizmo_camera.c b/source/blender/editors/space_view3d/view3d_gizmo_camera.c
index 0c97669a9af..b011e6e2e21 100644
--- a/source/blender/editors/space_view3d/view3d_gizmo_camera.c
+++ b/source/blender/editors/space_view3d/view3d_gizmo_camera.c
@@ -52,20 +52,20 @@
/* -------------------------------------------------------------------- */
-/** \name Camera Manipulators
+/** \name Camera Gizmos
* \{ */
struct CameraWidgetGroup {
- wmManipulator *dop_dist;
- wmManipulator *focal_len;
- wmManipulator *ortho_scale;
+ wmGizmo *dop_dist;
+ wmGizmo *focal_len;
+ wmGizmo *ortho_scale;
};
-static bool WIDGETGROUP_camera_poll(const bContext *C, wmManipulatorGroupType *UNUSED(wgt))
+static bool WIDGETGROUP_camera_poll(const bContext *C, wmGizmoGroupType *UNUSED(wgt))
{
View3D *v3d = CTX_wm_view3d(C);
if ((v3d->flag2 & V3D_RENDER_OVERRIDE) ||
- (v3d->mpr_flag & (V3D_MANIPULATOR_HIDE | V3D_MANIPULATOR_HIDE_CONTEXT)))
+ (v3d->mpr_flag & (V3D_GIZMO_HIDE | V3D_GIZMO_HIDE_CONTEXT)))
{
return false;
}
@@ -81,12 +81,12 @@ static bool WIDGETGROUP_camera_poll(const bContext *C, wmManipulatorGroupType *U
return false;
}
-static void WIDGETGROUP_camera_setup(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_camera_setup(const bContext *C, wmGizmoGroup *mgroup)
{
Object *ob = CTX_data_active_object(C);
float dir[3];
- const wmManipulatorType *wt_arrow = WM_manipulatortype_find("MANIPULATOR_WT_arrow_3d", true);
+ const wmGizmoType *wt_arrow = WM_gizmotype_find("GIZMO_WT_arrow_3d", true);
struct CameraWidgetGroup *camgroup = MEM_callocN(sizeof(struct CameraWidgetGroup), __func__);
mgroup->customdata = camgroup;
@@ -95,38 +95,38 @@ static void WIDGETGROUP_camera_setup(const bContext *C, wmManipulatorGroup *mgro
/* dof distance */
{
- wmManipulator *mpr;
- mpr = camgroup->dop_dist = WM_manipulator_new_ptr(wt_arrow, mgroup, NULL);
- RNA_enum_set(mpr->ptr, "draw_style", ED_MANIPULATOR_ARROW_STYLE_CROSS);
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_DRAW_HOVER, true);
+ wmGizmo *mpr;
+ mpr = camgroup->dop_dist = WM_gizmo_new_ptr(wt_arrow, mgroup, NULL);
+ RNA_enum_set(mpr->ptr, "draw_style", ED_GIZMO_ARROW_STYLE_CROSS);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_DRAW_HOVER, true);
- UI_GetThemeColor3fv(TH_MANIPULATOR_A, mpr->color);
- UI_GetThemeColor3fv(TH_MANIPULATOR_HI, mpr->color_hi);
+ UI_GetThemeColor3fv(TH_GIZMO_A, mpr->color);
+ UI_GetThemeColor3fv(TH_GIZMO_HI, mpr->color_hi);
}
/* focal length
* - logic/calculations are similar to BKE_camera_view_frame_ex, better keep in sync */
{
- wmManipulator *mpr;
- mpr = camgroup->focal_len = WM_manipulator_new_ptr(wt_arrow, mgroup, NULL);
- mpr->flag |= WM_MANIPULATOR_DRAW_NO_SCALE;
- RNA_enum_set(mpr->ptr, "draw_style", ED_MANIPULATOR_ARROW_STYLE_CONE);
- RNA_enum_set(mpr->ptr, "transform", ED_MANIPULATOR_ARROW_XFORM_FLAG_CONSTRAINED);
-
- UI_GetThemeColor3fv(TH_MANIPULATOR_PRIMARY, mpr->color);
- UI_GetThemeColor3fv(TH_MANIPULATOR_HI, mpr->color_hi);
-
- mpr = camgroup->ortho_scale = WM_manipulator_new_ptr(wt_arrow, mgroup, NULL);
- mpr->flag |= WM_MANIPULATOR_DRAW_NO_SCALE;
- RNA_enum_set(mpr->ptr, "draw_style", ED_MANIPULATOR_ARROW_STYLE_CONE);
- RNA_enum_set(mpr->ptr, "transform", ED_MANIPULATOR_ARROW_XFORM_FLAG_CONSTRAINED);
-
- UI_GetThemeColor3fv(TH_MANIPULATOR_PRIMARY, mpr->color);
- UI_GetThemeColor3fv(TH_MANIPULATOR_HI, mpr->color_hi);
+ wmGizmo *mpr;
+ mpr = camgroup->focal_len = WM_gizmo_new_ptr(wt_arrow, mgroup, NULL);
+ mpr->flag |= WM_GIZMO_DRAW_NO_SCALE;
+ RNA_enum_set(mpr->ptr, "draw_style", ED_GIZMO_ARROW_STYLE_CONE);
+ RNA_enum_set(mpr->ptr, "transform", ED_GIZMO_ARROW_XFORM_FLAG_CONSTRAINED);
+
+ UI_GetThemeColor3fv(TH_GIZMO_PRIMARY, mpr->color);
+ UI_GetThemeColor3fv(TH_GIZMO_HI, mpr->color_hi);
+
+ mpr = camgroup->ortho_scale = WM_gizmo_new_ptr(wt_arrow, mgroup, NULL);
+ mpr->flag |= WM_GIZMO_DRAW_NO_SCALE;
+ RNA_enum_set(mpr->ptr, "draw_style", ED_GIZMO_ARROW_STYLE_CONE);
+ RNA_enum_set(mpr->ptr, "transform", ED_GIZMO_ARROW_XFORM_FLAG_CONSTRAINED);
+
+ UI_GetThemeColor3fv(TH_GIZMO_PRIMARY, mpr->color);
+ UI_GetThemeColor3fv(TH_GIZMO_HI, mpr->color_hi);
}
}
-static void WIDGETGROUP_camera_refresh(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_camera_refresh(const bContext *C, wmGizmoGroup *mgroup)
{
if (!mgroup->customdata)
return;
@@ -149,16 +149,16 @@ static void WIDGETGROUP_camera_refresh(const bContext *C, wmManipulatorGroup *mg
negate_v3_v3(dir, ob->obmat[2]);
if (ca->flag & CAM_SHOWLIMITS) {
- WM_manipulator_set_matrix_location(camgroup->dop_dist, ob->obmat[3]);
- WM_manipulator_set_matrix_rotation_from_yz_axis(camgroup->dop_dist, ob->obmat[1], dir);
- WM_manipulator_set_scale(camgroup->dop_dist, ca->drawsize);
- WM_manipulator_set_flag(camgroup->dop_dist, WM_MANIPULATOR_HIDDEN, false);
+ WM_gizmo_set_matrix_location(camgroup->dop_dist, ob->obmat[3]);
+ WM_gizmo_set_matrix_rotation_from_yz_axis(camgroup->dop_dist, ob->obmat[1], dir);
+ WM_gizmo_set_scale(camgroup->dop_dist, ca->drawsize);
+ WM_gizmo_set_flag(camgroup->dop_dist, WM_GIZMO_HIDDEN, false);
/* need to set property here for undo. TODO would prefer to do this in _init */
- WM_manipulator_target_property_def_rna(camgroup->dop_dist, "offset", &camera_ptr, "dof_distance", -1);
+ WM_gizmo_target_property_def_rna(camgroup->dop_dist, "offset", &camera_ptr, "dof_distance", -1);
}
else {
- WM_manipulator_set_flag(camgroup->dop_dist, WM_MANIPULATOR_HIDDEN, true);
+ WM_gizmo_set_flag(camgroup->dop_dist, WM_GIZMO_HIDDEN, true);
}
/* TODO - make focal length/ortho ob_scale_inv widget optional */
@@ -167,14 +167,14 @@ static void WIDGETGROUP_camera_refresh(const bContext *C, wmManipulatorGroup *mg
const float aspy = (float)scene->r.ysch * scene->r.yasp;
const bool is_ortho = (ca->type == CAM_ORTHO);
const int sensor_fit = BKE_camera_sensor_fit(ca->sensor_fit, aspx, aspy);
- wmManipulator *widget = is_ortho ? camgroup->ortho_scale : camgroup->focal_len;
+ wmGizmo *widget = is_ortho ? camgroup->ortho_scale : camgroup->focal_len;
float scale_matrix;
if (true) {
float offset[3];
float aspect[2];
- WM_manipulator_set_flag(widget, WM_MANIPULATOR_HIDDEN, false);
- WM_manipulator_set_flag(is_ortho ? camgroup->focal_len : camgroup->ortho_scale, WM_MANIPULATOR_HIDDEN, true);
+ WM_gizmo_set_flag(widget, WM_GIZMO_HIDDEN, false);
+ WM_gizmo_set_flag(is_ortho ? camgroup->focal_len : camgroup->ortho_scale, WM_GIZMO_HIDDEN, true);
/* account for lens shifting */
@@ -187,8 +187,8 @@ static void WIDGETGROUP_camera_refresh(const bContext *C, wmManipulatorGroup *mg
aspect[1] = (sensor_fit == CAMERA_SENSOR_FIT_HOR) ? aspy / aspx : 1.0f;
unit_m4(widget->matrix_basis);
- WM_manipulator_set_matrix_location(widget, ob->obmat[3]);
- WM_manipulator_set_matrix_rotation_from_yz_axis(widget, ob->obmat[1], dir);
+ WM_gizmo_set_matrix_location(widget, ob->obmat[3]);
+ WM_gizmo_set_matrix_rotation_from_yz_axis(widget, ob->obmat[1], dir);
if (is_ortho) {
scale_matrix = ca->ortho_scale * 0.5f;
@@ -201,16 +201,16 @@ static void WIDGETGROUP_camera_refresh(const bContext *C, wmManipulatorGroup *mg
RNA_float_set_array(widget->ptr, "aspect", aspect);
- WM_manipulator_set_matrix_offset_location(widget, offset);
+ WM_gizmo_set_matrix_offset_location(widget, offset);
}
/* define & update properties */
{
const char *propname = is_ortho ? "ortho_scale" : "lens";
PropertyRNA *prop = RNA_struct_find_property(&camera_ptr, propname);
- const wmManipulatorPropertyType *mpr_prop_type = WM_manipulatortype_target_property_find(widget->type, "offset");
+ const wmGizmoPropertyType *mpr_prop_type = WM_gizmotype_target_property_find(widget->type, "offset");
- WM_manipulator_target_property_clear_rna_ptr(widget, mpr_prop_type);
+ WM_gizmo_target_property_clear_rna_ptr(widget, mpr_prop_type);
float min, max, range;
float step, precision;
@@ -219,20 +219,20 @@ static void WIDGETGROUP_camera_refresh(const bContext *C, wmManipulatorGroup *mg
RNA_property_float_ui_range(&camera_ptr, prop, &min, &max, &step, &precision);
range = max - min;
- ED_manipulator_arrow3d_set_range_fac(
+ ED_gizmo_arrow3d_set_range_fac(
widget, is_ortho ?
(ca->drawsize * range) :
(scale_matrix * range /
/* Half sensor, intentionally use sensor from camera and not calculated above. */
(0.5f * ((ca->sensor_fit == CAMERA_SENSOR_FIT_HOR) ? ca->sensor_x : ca->sensor_x))));
- WM_manipulator_target_property_def_rna_ptr(widget, mpr_prop_type, &camera_ptr, prop, -1);
+ WM_gizmo_target_property_def_rna_ptr(widget, mpr_prop_type, &camera_ptr, prop, -1);
}
}
static void WIDGETGROUP_camera_message_subscribe(
- const bContext *C, wmManipulatorGroup *mgroup, struct wmMsgBus *mbus)
+ const bContext *C, wmGizmoGroup *mgroup, struct wmMsgBus *mbus)
{
ARegion *ar = CTX_wm_region(C);
Object *ob = CTX_data_active_object(C);
@@ -241,7 +241,7 @@ static void WIDGETGROUP_camera_message_subscribe(
wmMsgSubscribeValue msg_sub_value_mpr_tag_refresh = {
.owner = ar,
.user_data = mgroup->parent_mmap,
- .notify = WM_manipulator_do_msg_notify_tag_refresh,
+ .notify = WM_gizmo_do_msg_notify_tag_refresh,
};
{
@@ -283,14 +283,14 @@ static void WIDGETGROUP_camera_message_subscribe(
}
}
-void VIEW3D_WGT_camera(wmManipulatorGroupType *wgt)
+void VIEW3D_WGT_camera(wmGizmoGroupType *wgt)
{
wgt->name = "Camera Widgets";
wgt->idname = "VIEW3D_WGT_camera";
- wgt->flag = (WM_MANIPULATORGROUPTYPE_PERSISTENT |
- WM_MANIPULATORGROUPTYPE_3D |
- WM_MANIPULATORGROUPTYPE_DEPTH_3D);
+ wgt->flag = (WM_GIZMOGROUPTYPE_PERSISTENT |
+ WM_GIZMOGROUPTYPE_3D |
+ WM_GIZMOGROUPTYPE_DEPTH_3D);
wgt->poll = WIDGETGROUP_camera_poll;
wgt->setup = WIDGETGROUP_camera_setup;
@@ -302,11 +302,11 @@ void VIEW3D_WGT_camera(wmManipulatorGroupType *wgt)
/* -------------------------------------------------------------------- */
-/** \name CameraView Manipulators
+/** \name CameraView Gizmos
* \{ */
struct CameraViewWidgetGroup {
- wmManipulator *border;
+ wmGizmo *border;
struct {
rctf *edit_border;
@@ -315,8 +315,8 @@ struct CameraViewWidgetGroup {
};
/* scale callbacks */
-static void manipulator_render_border_prop_matrix_get(
- const wmManipulator *UNUSED(mpr), wmManipulatorProperty *mpr_prop,
+static void gizmo_render_border_prop_matrix_get(
+ const wmGizmo *UNUSED(mpr), wmGizmoProperty *mpr_prop,
void *value_p)
{
float (*matrix)[4] = value_p;
@@ -331,8 +331,8 @@ static void manipulator_render_border_prop_matrix_get(
matrix[3][1] = BLI_rctf_cent_y(border);
}
-static void manipulator_render_border_prop_matrix_set(
- const wmManipulator *UNUSED(mpr), wmManipulatorProperty *mpr_prop,
+static void gizmo_render_border_prop_matrix_set(
+ const wmGizmo *UNUSED(mpr), wmGizmoProperty *mpr_prop,
const void *value_p)
{
const float (*matrix)[4] = value_p;
@@ -345,7 +345,7 @@ static void manipulator_render_border_prop_matrix_set(
BLI_rctf_isect(&(rctf){.xmin = 0, .ymin = 0, .xmax = 1, .ymax = 1}, border, border);
}
-static bool WIDGETGROUP_camera_view_poll(const bContext *C, wmManipulatorGroupType *UNUSED(wgt))
+static bool WIDGETGROUP_camera_view_poll(const bContext *C, wmGizmoGroupType *UNUSED(wgt))
{
Scene *scene = CTX_data_scene(C);
@@ -361,7 +361,7 @@ static bool WIDGETGROUP_camera_view_poll(const bContext *C, wmManipulatorGroupTy
View3D *v3d = CTX_wm_view3d(C);
if ((v3d->flag2 & V3D_RENDER_OVERRIDE) ||
- (v3d->mpr_flag & (V3D_MANIPULATOR_HIDE | V3D_MANIPULATOR_HIDE_CONTEXT)))
+ (v3d->mpr_flag & (V3D_GIZMO_HIDE | V3D_GIZMO_HIDE_CONTEXT)))
{
return false;
}
@@ -382,22 +382,22 @@ static bool WIDGETGROUP_camera_view_poll(const bContext *C, wmManipulatorGroupTy
return false;
}
-static void WIDGETGROUP_camera_view_setup(const bContext *UNUSED(C), wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_camera_view_setup(const bContext *UNUSED(C), wmGizmoGroup *mgroup)
{
struct CameraViewWidgetGroup *viewgroup = MEM_mallocN(sizeof(struct CameraViewWidgetGroup), __func__);
- viewgroup->border = WM_manipulator_new("MANIPULATOR_WT_cage_2d", mgroup, NULL);
+ viewgroup->border = WM_gizmo_new("GIZMO_WT_cage_2d", mgroup, NULL);
RNA_enum_set(viewgroup->border->ptr, "transform",
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_TRANSLATE | ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE);
+ ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE | ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE);
/* Box style is more subtle in this case. */
- RNA_enum_set(viewgroup->border->ptr, "draw_style", ED_MANIPULATOR_CAGE2D_STYLE_BOX);
+ RNA_enum_set(viewgroup->border->ptr, "draw_style", ED_GIZMO_CAGE2D_STYLE_BOX);
mgroup->customdata = viewgroup;
}
-static void WIDGETGROUP_camera_view_draw_prepare(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_camera_view_draw_prepare(const bContext *C, wmGizmoGroup *mgroup)
{
struct CameraViewWidgetGroup *viewgroup = mgroup->customdata;
@@ -413,7 +413,7 @@ static void WIDGETGROUP_camera_view_draw_prepare(const bContext *C, wmManipulato
viewgroup->state.view_border = (rctf){.xmin = 0, .ymin = 0, .xmax = ar->winx, .ymax = ar->winy};
}
- wmManipulator *mpr = viewgroup->border;
+ wmGizmo *mpr = viewgroup->border;
unit_m4(mpr->matrix_space);
mul_v3_fl(mpr->matrix_space[0], BLI_rctf_size_x(&viewgroup->state.view_border));
mul_v3_fl(mpr->matrix_space[1], BLI_rctf_size_y(&viewgroup->state.view_border));
@@ -421,7 +421,7 @@ static void WIDGETGROUP_camera_view_draw_prepare(const bContext *C, wmManipulato
mpr->matrix_space[3][1] = viewgroup->state.view_border.ymin;
}
-static void WIDGETGROUP_camera_view_refresh(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_camera_view_refresh(const bContext *C, wmGizmoGroup *mgroup)
{
struct CameraViewWidgetGroup *viewgroup = mgroup->customdata;
@@ -431,11 +431,11 @@ static void WIDGETGROUP_camera_view_refresh(const bContext *C, wmManipulatorGrou
Scene *scene = CTX_data_scene(C);
{
- wmManipulator *mpr = viewgroup->border;
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_HIDDEN, false);
+ wmGizmo *mpr = viewgroup->border;
+ WM_gizmo_set_flag(mpr, WM_GIZMO_HIDDEN, false);
RNA_enum_set(viewgroup->border->ptr, "transform",
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_TRANSLATE | ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE);
+ ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE | ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE);
if (rv3d->persp == RV3D_CAMOB) {
viewgroup->state.edit_border = &scene->r.border;
@@ -444,11 +444,11 @@ static void WIDGETGROUP_camera_view_refresh(const bContext *C, wmManipulatorGrou
viewgroup->state.edit_border = &v3d->render_border;
}
- WM_manipulator_target_property_def_func(
+ WM_gizmo_target_property_def_func(
mpr, "matrix",
- &(const struct wmManipulatorPropertyFnParams) {
- .value_get_fn = manipulator_render_border_prop_matrix_get,
- .value_set_fn = manipulator_render_border_prop_matrix_set,
+ &(const struct wmGizmoPropertyFnParams) {
+ .value_get_fn = gizmo_render_border_prop_matrix_get,
+ .value_set_fn = gizmo_render_border_prop_matrix_set,
.range_get_fn = NULL,
.user_data = viewgroup,
});
@@ -456,13 +456,13 @@ static void WIDGETGROUP_camera_view_refresh(const bContext *C, wmManipulatorGrou
}
-void VIEW3D_WGT_camera_view(wmManipulatorGroupType *wgt)
+void VIEW3D_WGT_camera_view(wmGizmoGroupType *wgt)
{
wgt->name = "Camera View Widgets";
wgt->idname = "VIEW3D_WGT_camera_view";
- wgt->flag = (WM_MANIPULATORGROUPTYPE_PERSISTENT |
- WM_MANIPULATORGROUPTYPE_SCALE);
+ wgt->flag = (WM_GIZMOGROUPTYPE_PERSISTENT |
+ WM_GIZMOGROUPTYPE_SCALE);
wgt->poll = WIDGETGROUP_camera_view_poll;
wgt->setup = WIDGETGROUP_camera_view_setup;
diff --git a/source/blender/editors/space_view3d/view3d_gizmo_empty.c b/source/blender/editors/space_view3d/view3d_gizmo_empty.c
index 89f55bc1d9a..3b51af5ca15 100644
--- a/source/blender/editors/space_view3d/view3d_gizmo_empty.c
+++ b/source/blender/editors/space_view3d/view3d_gizmo_empty.c
@@ -50,11 +50,11 @@
/* -------------------------------------------------------------------- */
-/** \name Empty Image Manipulators
+/** \name Empty Image Gizmos
* \{ */
struct EmptyImageWidgetGroup {
- wmManipulator *manipulator;
+ wmGizmo *gizmo;
struct {
Object *ob;
float dims[2];
@@ -62,8 +62,8 @@ struct EmptyImageWidgetGroup {
};
/* translate callbacks */
-static void manipulator_empty_image_prop_matrix_get(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_empty_image_prop_matrix_get(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
void *value_p)
{
float (*matrix)[4] = value_p;
@@ -84,8 +84,8 @@ static void manipulator_empty_image_prop_matrix_get(
matrix[3][1] = (ob->ima_ofs[1] * dims[1]) + (0.5f * dims[1]);
}
-static void manipulator_empty_image_prop_matrix_set(
- const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
+static void gizmo_empty_image_prop_matrix_set(
+ const wmGizmo *mpr, wmGizmoProperty *mpr_prop,
const void *value_p)
{
const float (*matrix)[4] = value_p;
@@ -104,12 +104,12 @@ static void manipulator_empty_image_prop_matrix_set(
ob->ima_ofs[1] = (matrix[3][1] - (0.5f * dims[1])) / dims[1];
}
-static bool WIDGETGROUP_empty_image_poll(const bContext *C, wmManipulatorGroupType *UNUSED(wgt))
+static bool WIDGETGROUP_empty_image_poll(const bContext *C, wmGizmoGroupType *UNUSED(wgt))
{
View3D *v3d = CTX_wm_view3d(C);
if ((v3d->flag2 & V3D_RENDER_OVERRIDE) ||
- (v3d->mpr_flag & (V3D_MANIPULATOR_HIDE | V3D_MANIPULATOR_HIDE_CONTEXT)))
+ (v3d->mpr_flag & (V3D_GIZMO_HIDE | V3D_GIZMO_HIDE_CONTEXT)))
{
return false;
}
@@ -122,34 +122,34 @@ static bool WIDGETGROUP_empty_image_poll(const bContext *C, wmManipulatorGroupTy
return false;
}
-static void WIDGETGROUP_empty_image_setup(const bContext *UNUSED(C), wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_empty_image_setup(const bContext *UNUSED(C), wmGizmoGroup *mgroup)
{
struct EmptyImageWidgetGroup *imgroup = MEM_mallocN(sizeof(struct EmptyImageWidgetGroup), __func__);
- imgroup->manipulator = WM_manipulator_new("MANIPULATOR_WT_cage_2d", mgroup, NULL);
- wmManipulator *mpr = imgroup->manipulator;
+ imgroup->gizmo = WM_gizmo_new("GIZMO_WT_cage_2d", mgroup, NULL);
+ wmGizmo *mpr = imgroup->gizmo;
RNA_enum_set(mpr->ptr, "transform",
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE);
+ ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE);
mgroup->customdata = imgroup;
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_DRAW_HOVER, true);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_DRAW_HOVER, true);
- UI_GetThemeColor3fv(TH_MANIPULATOR_PRIMARY, mpr->color);
- UI_GetThemeColor3fv(TH_MANIPULATOR_HI, mpr->color_hi);
+ UI_GetThemeColor3fv(TH_GIZMO_PRIMARY, mpr->color);
+ UI_GetThemeColor3fv(TH_GIZMO_HI, mpr->color_hi);
}
-static void WIDGETGROUP_empty_image_refresh(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_empty_image_refresh(const bContext *C, wmGizmoGroup *mgroup)
{
struct EmptyImageWidgetGroup *imgroup = mgroup->customdata;
Object *ob = CTX_data_active_object(C);
- wmManipulator *mpr = imgroup->manipulator;
+ wmGizmo *mpr = imgroup->gizmo;
copy_m4_m4(mpr->matrix_basis, ob->obmat);
RNA_enum_set(mpr->ptr, "transform",
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_TRANSLATE |
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE |
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE_UNIFORM);
+ ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE |
+ ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE |
+ ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE_UNIFORM);
imgroup->state.ob = ob;
@@ -177,24 +177,24 @@ static void WIDGETGROUP_empty_image_refresh(const bContext *C, wmManipulatorGrou
}
RNA_float_set_array(mpr->ptr, "dimensions", imgroup->state.dims);
- WM_manipulator_target_property_def_func(
+ WM_gizmo_target_property_def_func(
mpr, "matrix",
- &(const struct wmManipulatorPropertyFnParams) {
- .value_get_fn = manipulator_empty_image_prop_matrix_get,
- .value_set_fn = manipulator_empty_image_prop_matrix_set,
+ &(const struct wmGizmoPropertyFnParams) {
+ .value_get_fn = gizmo_empty_image_prop_matrix_get,
+ .value_set_fn = gizmo_empty_image_prop_matrix_set,
.range_get_fn = NULL,
.user_data = imgroup,
});
}
-void VIEW3D_WGT_empty_image(wmManipulatorGroupType *wgt)
+void VIEW3D_WGT_empty_image(wmGizmoGroupType *wgt)
{
wgt->name = "Area Light Widgets";
wgt->idname = "VIEW3D_WGT_empty_image";
- wgt->flag |= (WM_MANIPULATORGROUPTYPE_PERSISTENT |
- WM_MANIPULATORGROUPTYPE_3D |
- WM_MANIPULATORGROUPTYPE_DEPTH_3D);
+ wgt->flag |= (WM_GIZMOGROUPTYPE_PERSISTENT |
+ WM_GIZMOGROUPTYPE_3D |
+ WM_GIZMOGROUPTYPE_DEPTH_3D);
wgt->poll = WIDGETGROUP_empty_image_poll;
wgt->setup = WIDGETGROUP_empty_image_setup;
diff --git a/source/blender/editors/space_view3d/view3d_gizmo_forcefield.c b/source/blender/editors/space_view3d/view3d_gizmo_forcefield.c
index db985c18c08..d4605bb0c7d 100644
--- a/source/blender/editors/space_view3d/view3d_gizmo_forcefield.c
+++ b/source/blender/editors/space_view3d/view3d_gizmo_forcefield.c
@@ -49,15 +49,15 @@
/* -------------------------------------------------------------------- */
-/** \name Force Field Manipulators
+/** \name Force Field Gizmos
* \{ */
-static bool WIDGETGROUP_forcefield_poll(const bContext *C, wmManipulatorGroupType *UNUSED(wgt))
+static bool WIDGETGROUP_forcefield_poll(const bContext *C, wmGizmoGroupType *UNUSED(wgt))
{
View3D *v3d = CTX_wm_view3d(C);
if ((v3d->flag2 & V3D_RENDER_OVERRIDE) ||
- (v3d->mpr_flag & (V3D_MANIPULATOR_HIDE | V3D_MANIPULATOR_HIDE_CONTEXT)))
+ (v3d->mpr_flag & (V3D_GIZMO_HIDE | V3D_GIZMO_HIDE_CONTEXT)))
{
return false;
}
@@ -67,26 +67,26 @@ static bool WIDGETGROUP_forcefield_poll(const bContext *C, wmManipulatorGroupTyp
return (ob && ob->pd && ob->pd->forcefield);
}
-static void WIDGETGROUP_forcefield_setup(const bContext *UNUSED(C), wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_forcefield_setup(const bContext *UNUSED(C), wmGizmoGroup *mgroup)
{
/* only wind effector for now */
- wmManipulatorWrapper *wwrapper = MEM_mallocN(sizeof(wmManipulatorWrapper), __func__);
+ wmGizmoWrapper *wwrapper = MEM_mallocN(sizeof(wmGizmoWrapper), __func__);
mgroup->customdata = wwrapper;
- wwrapper->manipulator = WM_manipulator_new("MANIPULATOR_WT_arrow_3d", mgroup, NULL);
- wmManipulator *mpr = wwrapper->manipulator;
- RNA_enum_set(mpr->ptr, "transform", ED_MANIPULATOR_ARROW_XFORM_FLAG_CONSTRAINED);
- ED_manipulator_arrow3d_set_ui_range(mpr, -200.0f, 200.0f);
- ED_manipulator_arrow3d_set_range_fac(mpr, 6.0f);
+ wwrapper->gizmo = WM_gizmo_new("GIZMO_WT_arrow_3d", mgroup, NULL);
+ wmGizmo *mpr = wwrapper->gizmo;
+ RNA_enum_set(mpr->ptr, "transform", ED_GIZMO_ARROW_XFORM_FLAG_CONSTRAINED);
+ ED_gizmo_arrow3d_set_ui_range(mpr, -200.0f, 200.0f);
+ ED_gizmo_arrow3d_set_range_fac(mpr, 6.0f);
- UI_GetThemeColor3fv(TH_MANIPULATOR_PRIMARY, mpr->color);
- UI_GetThemeColor3fv(TH_MANIPULATOR_HI, mpr->color_hi);
+ UI_GetThemeColor3fv(TH_GIZMO_PRIMARY, mpr->color);
+ UI_GetThemeColor3fv(TH_GIZMO_HI, mpr->color_hi);
}
-static void WIDGETGROUP_forcefield_refresh(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_forcefield_refresh(const bContext *C, wmGizmoGroup *mgroup)
{
- wmManipulatorWrapper *wwrapper = mgroup->customdata;
- wmManipulator *mpr = wwrapper->manipulator;
+ wmGizmoWrapper *wwrapper = mgroup->customdata;
+ wmGizmo *mpr = wwrapper->gizmo;
Object *ob = CTX_data_active_object(C);
PartDeflect *pd = ob->pd;
@@ -96,26 +96,26 @@ static void WIDGETGROUP_forcefield_refresh(const bContext *C, wmManipulatorGroup
PointerRNA field_ptr;
RNA_pointer_create(&ob->id, &RNA_FieldSettings, pd, &field_ptr);
- WM_manipulator_set_matrix_location(mpr, ob->obmat[3]);
- WM_manipulator_set_matrix_rotation_from_z_axis(mpr, ob->obmat[2]);
- WM_manipulator_set_matrix_offset_location(mpr, ofs);
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_HIDDEN, false);
- WM_manipulator_target_property_def_rna(mpr, "offset", &field_ptr, "strength", -1);
+ WM_gizmo_set_matrix_location(mpr, ob->obmat[3]);
+ WM_gizmo_set_matrix_rotation_from_z_axis(mpr, ob->obmat[2]);
+ WM_gizmo_set_matrix_offset_location(mpr, ofs);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_HIDDEN, false);
+ WM_gizmo_target_property_def_rna(mpr, "offset", &field_ptr, "strength", -1);
}
else {
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_HIDDEN, true);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_HIDDEN, true);
}
}
-void VIEW3D_WGT_force_field(wmManipulatorGroupType *wgt)
+void VIEW3D_WGT_force_field(wmGizmoGroupType *wgt)
{
wgt->name = "Force Field Widgets";
wgt->idname = "VIEW3D_WGT_force_field";
- wgt->flag |= (WM_MANIPULATORGROUPTYPE_PERSISTENT |
- WM_MANIPULATORGROUPTYPE_3D |
- WM_MANIPULATORGROUPTYPE_SCALE |
- WM_MANIPULATORGROUPTYPE_DEPTH_3D);
+ wgt->flag |= (WM_GIZMOGROUPTYPE_PERSISTENT |
+ WM_GIZMOGROUPTYPE_3D |
+ WM_GIZMOGROUPTYPE_SCALE |
+ WM_GIZMOGROUPTYPE_DEPTH_3D);
wgt->poll = WIDGETGROUP_forcefield_poll;
wgt->setup = WIDGETGROUP_forcefield_setup;
diff --git a/source/blender/editors/space_view3d/view3d_gizmo_lamp.c b/source/blender/editors/space_view3d/view3d_gizmo_lamp.c
index 8087fcbdddd..a872cc96172 100644
--- a/source/blender/editors/space_view3d/view3d_gizmo_lamp.c
+++ b/source/blender/editors/space_view3d/view3d_gizmo_lamp.c
@@ -49,14 +49,14 @@
/* -------------------------------------------------------------------- */
-/** \name Spot Lamp Manipulators
+/** \name Spot Lamp Gizmos
* \{ */
-static bool WIDGETGROUP_lamp_spot_poll(const bContext *C, wmManipulatorGroupType *UNUSED(wgt))
+static bool WIDGETGROUP_lamp_spot_poll(const bContext *C, wmGizmoGroupType *UNUSED(wgt))
{
View3D *v3d = CTX_wm_view3d(C);
if ((v3d->flag2 & V3D_RENDER_OVERRIDE) ||
- (v3d->mpr_flag & (V3D_MANIPULATOR_HIDE | V3D_MANIPULATOR_HIDE_CONTEXT)))
+ (v3d->mpr_flag & (V3D_GIZMO_HIDE | V3D_GIZMO_HIDE_CONTEXT)))
{
return false;
}
@@ -70,49 +70,49 @@ static bool WIDGETGROUP_lamp_spot_poll(const bContext *C, wmManipulatorGroupType
return false;
}
-static void WIDGETGROUP_lamp_spot_setup(const bContext *UNUSED(C), wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_lamp_spot_setup(const bContext *UNUSED(C), wmGizmoGroup *mgroup)
{
- wmManipulatorWrapper *wwrapper = MEM_mallocN(sizeof(wmManipulatorWrapper), __func__);
+ wmGizmoWrapper *wwrapper = MEM_mallocN(sizeof(wmGizmoWrapper), __func__);
- wwrapper->manipulator = WM_manipulator_new("MANIPULATOR_WT_arrow_3d", mgroup, NULL);
- wmManipulator *mpr = wwrapper->manipulator;
- RNA_enum_set(mpr->ptr, "transform", ED_MANIPULATOR_ARROW_XFORM_FLAG_INVERTED);
+ wwrapper->gizmo = WM_gizmo_new("GIZMO_WT_arrow_3d", mgroup, NULL);
+ wmGizmo *mpr = wwrapper->gizmo;
+ RNA_enum_set(mpr->ptr, "transform", ED_GIZMO_ARROW_XFORM_FLAG_INVERTED);
mgroup->customdata = wwrapper;
- ED_manipulator_arrow3d_set_range_fac(mpr, 4.0f);
+ ED_gizmo_arrow3d_set_range_fac(mpr, 4.0f);
- UI_GetThemeColor3fv(TH_MANIPULATOR_SECONDARY, mpr->color);
+ UI_GetThemeColor3fv(TH_GIZMO_SECONDARY, mpr->color);
}
-static void WIDGETGROUP_lamp_spot_refresh(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_lamp_spot_refresh(const bContext *C, wmGizmoGroup *mgroup)
{
- wmManipulatorWrapper *wwrapper = mgroup->customdata;
- wmManipulator *mpr = wwrapper->manipulator;
+ wmGizmoWrapper *wwrapper = mgroup->customdata;
+ wmGizmo *mpr = wwrapper->gizmo;
Object *ob = CTX_data_active_object(C);
Lamp *la = ob->data;
float dir[3];
negate_v3_v3(dir, ob->obmat[2]);
- WM_manipulator_set_matrix_rotation_from_z_axis(mpr, dir);
- WM_manipulator_set_matrix_location(mpr, ob->obmat[3]);
+ WM_gizmo_set_matrix_rotation_from_z_axis(mpr, dir);
+ WM_gizmo_set_matrix_location(mpr, ob->obmat[3]);
/* need to set property here for undo. TODO would prefer to do this in _init */
PointerRNA lamp_ptr;
const char *propname = "spot_size";
RNA_pointer_create(&la->id, &RNA_Light, la, &lamp_ptr);
- WM_manipulator_target_property_def_rna(mpr, "offset", &lamp_ptr, propname, -1);
+ WM_gizmo_target_property_def_rna(mpr, "offset", &lamp_ptr, propname, -1);
}
-void VIEW3D_WGT_lamp_spot(wmManipulatorGroupType *wgt)
+void VIEW3D_WGT_lamp_spot(wmGizmoGroupType *wgt)
{
wgt->name = "Spot Light Widgets";
wgt->idname = "VIEW3D_WGT_lamp_spot";
- wgt->flag |= (WM_MANIPULATORGROUPTYPE_PERSISTENT |
- WM_MANIPULATORGROUPTYPE_3D |
- WM_MANIPULATORGROUPTYPE_DEPTH_3D);
+ wgt->flag |= (WM_GIZMOGROUPTYPE_PERSISTENT |
+ WM_GIZMOGROUPTYPE_3D |
+ WM_GIZMOGROUPTYPE_DEPTH_3D);
wgt->poll = WIDGETGROUP_lamp_spot_poll;
wgt->setup = WIDGETGROUP_lamp_spot_setup;
@@ -123,12 +123,12 @@ void VIEW3D_WGT_lamp_spot(wmManipulatorGroupType *wgt)
/* -------------------------------------------------------------------- */
-/** \name Area Lamp Manipulators
+/** \name Area Lamp Gizmos
* \{ */
/* scale callbacks */
-static void manipulator_area_lamp_prop_matrix_get(
- const wmManipulator *UNUSED(mpr), wmManipulatorProperty *mpr_prop,
+static void gizmo_area_lamp_prop_matrix_get(
+ const wmGizmo *UNUSED(mpr), wmGizmoProperty *mpr_prop,
void *value_p)
{
BLI_assert(mpr_prop->type->array_length == 16);
@@ -139,8 +139,8 @@ static void manipulator_area_lamp_prop_matrix_get(
matrix[1][1] = ELEM(la->area_shape, LA_AREA_RECT, LA_AREA_ELLIPSE) ? la->area_sizey : la->area_size;
}
-static void manipulator_area_lamp_prop_matrix_set(
- const wmManipulator *UNUSED(mpr), wmManipulatorProperty *mpr_prop,
+static void gizmo_area_lamp_prop_matrix_set(
+ const wmGizmo *UNUSED(mpr), wmGizmoProperty *mpr_prop,
const void *value_p)
{
const float (*matrix)[4] = value_p;
@@ -156,7 +156,7 @@ static void manipulator_area_lamp_prop_matrix_set(
}
}
-static bool WIDGETGROUP_lamp_area_poll(const bContext *C, wmManipulatorGroupType *UNUSED(wgt))
+static bool WIDGETGROUP_lamp_area_poll(const bContext *C, wmGizmoGroupType *UNUSED(wgt))
{
View3D *v3d = CTX_wm_view3d(C);
if (v3d->flag2 & V3D_RENDER_OVERRIDE) {
@@ -171,56 +171,56 @@ static bool WIDGETGROUP_lamp_area_poll(const bContext *C, wmManipulatorGroupType
return false;
}
-static void WIDGETGROUP_lamp_area_setup(const bContext *UNUSED(C), wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_lamp_area_setup(const bContext *UNUSED(C), wmGizmoGroup *mgroup)
{
- wmManipulatorWrapper *wwrapper = MEM_mallocN(sizeof(wmManipulatorWrapper), __func__);
- wwrapper->manipulator = WM_manipulator_new("MANIPULATOR_WT_cage_2d", mgroup, NULL);
- wmManipulator *mpr = wwrapper->manipulator;
+ wmGizmoWrapper *wwrapper = MEM_mallocN(sizeof(wmGizmoWrapper), __func__);
+ wwrapper->gizmo = WM_gizmo_new("GIZMO_WT_cage_2d", mgroup, NULL);
+ wmGizmo *mpr = wwrapper->gizmo;
RNA_enum_set(mpr->ptr, "transform",
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE);
+ ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE);
mgroup->customdata = wwrapper;
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_DRAW_HOVER, true);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_DRAW_HOVER, true);
- UI_GetThemeColor3fv(TH_MANIPULATOR_PRIMARY, mpr->color);
- UI_GetThemeColor3fv(TH_MANIPULATOR_HI, mpr->color_hi);
+ UI_GetThemeColor3fv(TH_GIZMO_PRIMARY, mpr->color);
+ UI_GetThemeColor3fv(TH_GIZMO_HI, mpr->color_hi);
}
-static void WIDGETGROUP_lamp_area_refresh(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_lamp_area_refresh(const bContext *C, wmGizmoGroup *mgroup)
{
- wmManipulatorWrapper *wwrapper = mgroup->customdata;
+ wmGizmoWrapper *wwrapper = mgroup->customdata;
Object *ob = CTX_data_active_object(C);
Lamp *la = ob->data;
- wmManipulator *mpr = wwrapper->manipulator;
+ wmGizmo *mpr = wwrapper->gizmo;
copy_m4_m4(mpr->matrix_basis, ob->obmat);
- int flag = ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE;
+ int flag = ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE;
if (ELEM(la->area_shape, LA_AREA_SQUARE, LA_AREA_DISK)) {
- flag |= ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE_UNIFORM;
+ flag |= ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE_UNIFORM;
}
RNA_enum_set(mpr->ptr, "transform", flag);
/* need to set property here for undo. TODO would prefer to do this in _init */
- WM_manipulator_target_property_def_func(
+ WM_gizmo_target_property_def_func(
mpr, "matrix",
- &(const struct wmManipulatorPropertyFnParams) {
- .value_get_fn = manipulator_area_lamp_prop_matrix_get,
- .value_set_fn = manipulator_area_lamp_prop_matrix_set,
+ &(const struct wmGizmoPropertyFnParams) {
+ .value_get_fn = gizmo_area_lamp_prop_matrix_get,
+ .value_set_fn = gizmo_area_lamp_prop_matrix_set,
.range_get_fn = NULL,
.user_data = la,
});
}
-void VIEW3D_WGT_lamp_area(wmManipulatorGroupType *wgt)
+void VIEW3D_WGT_lamp_area(wmGizmoGroupType *wgt)
{
wgt->name = "Area Light Widgets";
wgt->idname = "VIEW3D_WGT_lamp_area";
- wgt->flag |= (WM_MANIPULATORGROUPTYPE_PERSISTENT |
- WM_MANIPULATORGROUPTYPE_3D |
- WM_MANIPULATORGROUPTYPE_DEPTH_3D);
+ wgt->flag |= (WM_GIZMOGROUPTYPE_PERSISTENT |
+ WM_GIZMOGROUPTYPE_3D |
+ WM_GIZMOGROUPTYPE_DEPTH_3D);
wgt->poll = WIDGETGROUP_lamp_area_poll;
wgt->setup = WIDGETGROUP_lamp_area_setup;
@@ -232,10 +232,10 @@ void VIEW3D_WGT_lamp_area(wmManipulatorGroupType *wgt)
/* -------------------------------------------------------------------- */
-/** \name Lamp Target Manipulator
+/** \name Lamp Target Gizmo
* \{ */
-static bool WIDGETGROUP_lamp_target_poll(const bContext *C, wmManipulatorGroupType *UNUSED(wgt))
+static bool WIDGETGROUP_lamp_target_poll(const bContext *C, wmGizmoGroupType *UNUSED(wgt))
{
View3D *v3d = CTX_wm_view3d(C);
if (v3d->flag2 & V3D_RENDER_OVERRIDE) {
@@ -258,46 +258,46 @@ static bool WIDGETGROUP_lamp_target_poll(const bContext *C, wmManipulatorGroupTy
return false;
}
-static void WIDGETGROUP_lamp_target_setup(const bContext *UNUSED(C), wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_lamp_target_setup(const bContext *UNUSED(C), wmGizmoGroup *mgroup)
{
- wmManipulatorWrapper *wwrapper = MEM_mallocN(sizeof(wmManipulatorWrapper), __func__);
- wwrapper->manipulator = WM_manipulator_new("MANIPULATOR_WT_grab_3d", mgroup, NULL);
- wmManipulator *mpr = wwrapper->manipulator;
+ wmGizmoWrapper *wwrapper = MEM_mallocN(sizeof(wmGizmoWrapper), __func__);
+ wwrapper->gizmo = WM_gizmo_new("GIZMO_WT_grab_3d", mgroup, NULL);
+ wmGizmo *mpr = wwrapper->gizmo;
mgroup->customdata = wwrapper;
- UI_GetThemeColor3fv(TH_MANIPULATOR_PRIMARY, mpr->color);
- UI_GetThemeColor3fv(TH_MANIPULATOR_HI, mpr->color_hi);
+ UI_GetThemeColor3fv(TH_GIZMO_PRIMARY, mpr->color);
+ UI_GetThemeColor3fv(TH_GIZMO_HI, mpr->color_hi);
mpr->scale_basis = 0.06f;
wmOperatorType *ot = WM_operatortype_find("OBJECT_OT_transform_axis_target", true);
RNA_enum_set(mpr->ptr, "draw_options",
- ED_MANIPULATOR_GRAB_DRAW_FLAG_FILL | ED_MANIPULATOR_GRAB_DRAW_FLAG_ALIGN_VIEW);
+ ED_GIZMO_GRAB_DRAW_FLAG_FILL | ED_GIZMO_GRAB_DRAW_FLAG_ALIGN_VIEW);
- WM_manipulator_operator_set(mpr, 0, ot, NULL);
+ WM_gizmo_operator_set(mpr, 0, ot, NULL);
}
-static void WIDGETGROUP_lamp_target_draw_prepare(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_lamp_target_draw_prepare(const bContext *C, wmGizmoGroup *mgroup)
{
- wmManipulatorWrapper *wwrapper = mgroup->customdata;
+ wmGizmoWrapper *wwrapper = mgroup->customdata;
Object *ob = CTX_data_active_object(C);
- wmManipulator *mpr = wwrapper->manipulator;
+ wmGizmo *mpr = wwrapper->gizmo;
copy_m4_m4(mpr->matrix_basis, ob->obmat);
unit_m4(mpr->matrix_offset);
mpr->matrix_offset[3][2] = -2.4f / mpr->scale_basis;
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_DRAW_OFFSET_SCALE, true);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_DRAW_OFFSET_SCALE, true);
}
-void VIEW3D_WGT_lamp_target(wmManipulatorGroupType *wgt)
+void VIEW3D_WGT_lamp_target(wmGizmoGroupType *wgt)
{
wgt->name = "Target Light Widgets";
wgt->idname = "VIEW3D_WGT_lamp_target";
- wgt->flag |= (WM_MANIPULATORGROUPTYPE_PERSISTENT |
- WM_MANIPULATORGROUPTYPE_3D);
+ wgt->flag |= (WM_GIZMOGROUPTYPE_PERSISTENT |
+ WM_GIZMOGROUPTYPE_3D);
wgt->poll = WIDGETGROUP_lamp_target_poll;
wgt->setup = WIDGETGROUP_lamp_target_setup;
diff --git a/source/blender/editors/space_view3d/view3d_gizmo_navigate.c b/source/blender/editors/space_view3d/view3d_gizmo_navigate.c
index db4eeef18f7..98669739745 100644
--- a/source/blender/editors/space_view3d/view3d_gizmo_navigate.c
+++ b/source/blender/editors/space_view3d/view3d_gizmo_navigate.c
@@ -47,17 +47,17 @@
#include "view3d_intern.h" /* own include */
/* -------------------------------------------------------------------- */
-/** \name View3D Navigation Manipulator Group
+/** \name View3D Navigation Gizmo Group
* \{ */
/* Offset from screen edge. */
-#define MANIPULATOR_OFFSET_FAC 1.5f
+#define GIZMO_OFFSET_FAC 1.5f
/* Size of main icon. */
-#define MANIPULATOR_SIZE 64
+#define GIZMO_SIZE 64
/* Factor for size of smaller button. */
-#define MANIPULATOR_MINI_FAC 0.35f
+#define GIZMO_MINI_FAC 0.35f
/* How much mini buttons offset from the primary. */
-#define MANIPULATOR_MINI_OFFSET_FAC 0.42f
+#define GIZMO_MINI_OFFSET_FAC 0.42f
enum {
@@ -122,40 +122,40 @@ static const uchar shape_zoom[] = {
};
-struct NavigateManipulatorInfo {
+struct NavigateGizmoInfo {
const char *opname;
- const char *manipulator;
+ const char *gizmo;
const unsigned char *shape;
uint shape_size;
};
#define SHAPE_VARS(shape_id) shape = shape_id, .shape_size = ARRAY_SIZE(shape_id)
-struct NavigateManipulatorInfo g_navigate_params[MPR_TOTAL] = {
+struct NavigateGizmoInfo g_navigate_params[MPR_TOTAL] = {
{
.opname = "VIEW3D_OT_move",
- .manipulator = "MANIPULATOR_WT_button_2d",
+ .gizmo = "GIZMO_WT_button_2d",
.SHAPE_VARS(shape_pan),
}, {
.opname = "VIEW3D_OT_rotate",
- .manipulator = "VIEW3D_WT_navigate_rotate",
+ .gizmo = "VIEW3D_WT_navigate_rotate",
.shape = NULL,
.shape_size = 0,
}, {
.opname = "VIEW3D_OT_zoom",
- .manipulator = "MANIPULATOR_WT_button_2d",
+ .gizmo = "GIZMO_WT_button_2d",
.SHAPE_VARS(shape_zoom),
}, {
.opname = "VIEW3D_OT_view_persportho",
- .manipulator = "MANIPULATOR_WT_button_2d",
+ .gizmo = "GIZMO_WT_button_2d",
.SHAPE_VARS(shape_persp),
}, {
.opname = "VIEW3D_OT_view_persportho",
- .manipulator = "MANIPULATOR_WT_button_2d",
+ .gizmo = "GIZMO_WT_button_2d",
.SHAPE_VARS(shape_ortho),
}, {
.opname = "VIEW3D_OT_view_camera",
- .manipulator = "MANIPULATOR_WT_button_2d",
+ .gizmo = "GIZMO_WT_button_2d",
.SHAPE_VARS(shape_camera),
},
};
@@ -163,7 +163,7 @@ struct NavigateManipulatorInfo g_navigate_params[MPR_TOTAL] = {
#undef SHAPE_VARS
struct NavigateWidgetGroup {
- wmManipulator *mpr_array[MPR_TOTAL];
+ wmGizmo *mpr_array[MPR_TOTAL];
/* Store the view state to check for changes. */
struct {
rcti rect_visible;
@@ -176,12 +176,12 @@ struct NavigateWidgetGroup {
int region_size[2];
};
-static bool WIDGETGROUP_navigate_poll(const bContext *C, wmManipulatorGroupType *UNUSED(wgt))
+static bool WIDGETGROUP_navigate_poll(const bContext *C, wmGizmoGroupType *UNUSED(wgt))
{
View3D *v3d = CTX_wm_view3d(C);
- if (((U.uiflag & USER_SHOW_MANIPULATOR_AXIS) == 0) ||
+ if (((U.uiflag & USER_SHOW_GIZMO_AXIS) == 0) ||
(v3d->flag2 & V3D_RENDER_OVERRIDE) ||
- (v3d->mpr_flag & (V3D_MANIPULATOR_HIDE | V3D_MANIPULATOR_HIDE_NAVIGATE)))
+ (v3d->mpr_flag & (V3D_GIZMO_HIDE | V3D_GIZMO_HIDE_NAVIGATE)))
{
return false;
}
@@ -189,7 +189,7 @@ static bool WIDGETGROUP_navigate_poll(const bContext *C, wmManipulatorGroupType
}
-static void WIDGETGROUP_navigate_setup(const bContext *UNUSED(C), wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_navigate_setup(const bContext *UNUSED(C), wmGizmoGroup *mgroup)
{
struct NavigateWidgetGroup *navgroup = MEM_callocN(sizeof(struct NavigateWidgetGroup), __func__);
@@ -200,37 +200,37 @@ static void WIDGETGROUP_navigate_setup(const bContext *UNUSED(C), wmManipulatorG
wmOperatorType *ot_view_camera = WM_operatortype_find("VIEW3D_OT_view_camera", true);
for (int i = 0; i < MPR_TOTAL; i++) {
- const struct NavigateManipulatorInfo *info = &g_navigate_params[i];
- navgroup->mpr_array[i] = WM_manipulator_new(info->manipulator, mgroup, NULL);
- wmManipulator *mpr = navgroup->mpr_array[i];
- mpr->flag |= WM_MANIPULATOR_GRAB_CURSOR | WM_MANIPULATOR_DRAW_MODAL;
+ const struct NavigateGizmoInfo *info = &g_navigate_params[i];
+ navgroup->mpr_array[i] = WM_gizmo_new(info->gizmo, mgroup, NULL);
+ wmGizmo *mpr = navgroup->mpr_array[i];
+ mpr->flag |= WM_GIZMO_GRAB_CURSOR | WM_GIZMO_DRAW_MODAL;
mpr->color[3] = 0.2f;
mpr->color_hi[3] = 0.4f;
/* may be overwritten later */
- mpr->scale_basis = (MANIPULATOR_SIZE * MANIPULATOR_MINI_FAC) / 2;
+ mpr->scale_basis = (GIZMO_SIZE * GIZMO_MINI_FAC) / 2;
if (info->shape != NULL) {
PropertyRNA *prop = RNA_struct_find_property(mpr->ptr, "shape");
RNA_property_string_set_bytes(
mpr->ptr, prop,
(const char *)info->shape, info->shape_size);
- RNA_enum_set(mpr->ptr, "draw_options", ED_MANIPULATOR_BUTTON_SHOW_OUTLINE);
+ RNA_enum_set(mpr->ptr, "draw_options", ED_GIZMO_BUTTON_SHOW_OUTLINE);
}
wmOperatorType *ot = WM_operatortype_find(info->opname, true);
- WM_manipulator_operator_set(mpr, 0, ot, NULL);
+ WM_gizmo_operator_set(mpr, 0, ot, NULL);
}
{
- wmManipulator *mpr = navgroup->mpr_array[MPR_CAMERA];
- WM_manipulator_operator_set(mpr, 0, ot_view_camera, NULL);
+ wmGizmo *mpr = navgroup->mpr_array[MPR_CAMERA];
+ WM_gizmo_operator_set(mpr, 0, ot_view_camera, NULL);
}
/* Click only buttons (not modal). */
{
int mpr_ids[] = {MPR_PERSP, MPR_ORTHO, MPR_CAMERA};
for (int i = 0; i < ARRAY_SIZE(mpr_ids); i++) {
- wmManipulator *mpr = navgroup->mpr_array[mpr_ids[i]];
+ wmGizmo *mpr = navgroup->mpr_array[mpr_ids[i]];
RNA_boolean_set(mpr->ptr, "show_drag", false);
}
}
@@ -239,15 +239,15 @@ static void WIDGETGROUP_navigate_setup(const bContext *UNUSED(C), wmManipulatorG
{
int mpr_ids[] = {MPR_MOVE, MPR_ROTATE, MPR_ZOOM};
for (int i = 0; i < ARRAY_SIZE(mpr_ids); i++) {
- wmManipulator *mpr = navgroup->mpr_array[mpr_ids[i]];
- wmManipulatorOpElem *mpop = WM_manipulator_operator_get(mpr, 0);
+ wmGizmo *mpr = navgroup->mpr_array[mpr_ids[i]];
+ wmGizmoOpElem *mpop = WM_gizmo_operator_get(mpr, 0);
RNA_boolean_set(&mpop->ptr, "use_mouse_init", false);
}
}
{
- wmManipulator *mpr = navgroup->mpr_array[MPR_ROTATE];
- mpr->scale_basis = MANIPULATOR_SIZE / 2;
+ wmGizmo *mpr = navgroup->mpr_array[MPR_ROTATE];
+ mpr->scale_basis = GIZMO_SIZE / 2;
char mapping[6] = {
RV3D_VIEW_LEFT,
RV3D_VIEW_RIGHT,
@@ -258,7 +258,7 @@ static void WIDGETGROUP_navigate_setup(const bContext *UNUSED(C), wmManipulatorG
};
for (int part_index = 0; part_index < 6; part_index += 1) {
- PointerRNA *ptr = WM_manipulator_operator_set(mpr, part_index + 1, ot_view_axis, NULL);
+ PointerRNA *ptr = WM_gizmo_operator_set(mpr, part_index + 1, ot_view_axis, NULL);
RNA_enum_set(ptr, "type", mapping[part_index]);
}
@@ -269,7 +269,7 @@ static void WIDGETGROUP_navigate_setup(const bContext *UNUSED(C), wmManipulatorG
mgroup->customdata = navgroup;
}
-static void WIDGETGROUP_navigate_draw_prepare(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_navigate_draw_prepare(const bContext *C, wmGizmoGroup *mgroup)
{
struct NavigateWidgetGroup *navgroup = mgroup->customdata;
ARegion *ar = CTX_wm_region(C);
@@ -300,9 +300,9 @@ static void WIDGETGROUP_navigate_draw_prepare(const bContext *C, wmManipulatorGr
((rv3d->viewlock & RV3D_LOCKED) == 0) &&
(navgroup->state.rv3d.is_camera == false));
const bool show_fixed_offset = navgroup->state.rv3d.is_camera;
- const float icon_size = MANIPULATOR_SIZE;
- const float icon_offset = (icon_size * 0.52f) * MANIPULATOR_OFFSET_FAC * UI_DPI_FAC;
- const float icon_offset_mini = icon_size * MANIPULATOR_MINI_OFFSET_FAC * UI_DPI_FAC;
+ const float icon_size = GIZMO_SIZE;
+ const float icon_offset = (icon_size * 0.52f) * GIZMO_OFFSET_FAC * UI_DPI_FAC;
+ const float icon_offset_mini = icon_size * GIZMO_MINI_OFFSET_FAC * UI_DPI_FAC;
const float co_rotate[2] = {
rect_visible.xmax - icon_offset,
rect_visible.ymax - icon_offset,
@@ -312,11 +312,11 @@ static void WIDGETGROUP_navigate_draw_prepare(const bContext *C, wmManipulatorGr
rect_visible.ymax - icon_offset_mini * 0.75f,
};
- wmManipulator *mpr;
+ wmGizmo *mpr;
for (uint i = 0; i < ARRAY_SIZE(navgroup->mpr_array); i++) {
mpr = navgroup->mpr_array[i];
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_HIDDEN, true);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_HIDDEN, true);
}
/* RV3D_LOCKED or Camera: only show supported buttons. */
@@ -324,7 +324,7 @@ static void WIDGETGROUP_navigate_draw_prepare(const bContext *C, wmManipulatorGr
mpr = navgroup->mpr_array[MPR_ROTATE];
mpr->matrix_basis[3][0] = co_rotate[0];
mpr->matrix_basis[3][1] = co_rotate[1];
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_HIDDEN, false);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_HIDDEN, false);
}
int icon_mini_slot = 0;
@@ -332,36 +332,36 @@ static void WIDGETGROUP_navigate_draw_prepare(const bContext *C, wmManipulatorGr
mpr = navgroup->mpr_array[MPR_ZOOM];
mpr->matrix_basis[3][0] = co[0] - (icon_offset_mini * icon_mini_slot++);
mpr->matrix_basis[3][1] = co[1];
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_HIDDEN, false);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_HIDDEN, false);
mpr = navgroup->mpr_array[MPR_MOVE];
mpr->matrix_basis[3][0] = co[0] - (icon_offset_mini * icon_mini_slot++);
mpr->matrix_basis[3][1] = co[1];
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_HIDDEN, false);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_HIDDEN, false);
if ((rv3d->viewlock & RV3D_LOCKED) == 0) {
mpr = navgroup->mpr_array[MPR_CAMERA];
mpr->matrix_basis[3][0] = co[0] - (icon_offset_mini * icon_mini_slot++);
mpr->matrix_basis[3][1] = co[1];
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_HIDDEN, false);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_HIDDEN, false);
if (navgroup->state.rv3d.is_camera == false) {
mpr = navgroup->mpr_array[rv3d->is_persp ? MPR_PERSP : MPR_ORTHO];
mpr->matrix_basis[3][0] = co[0] - (icon_offset_mini * icon_mini_slot++);
mpr->matrix_basis[3][1] = co[1];
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_HIDDEN, false);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_HIDDEN, false);
}
}
}
-void VIEW3D_WGT_navigate(wmManipulatorGroupType *wgt)
+void VIEW3D_WGT_navigate(wmGizmoGroupType *wgt)
{
wgt->name = "View3D Navigate";
wgt->idname = "VIEW3D_WGT_navigate";
- wgt->flag |= (WM_MANIPULATORGROUPTYPE_PERSISTENT |
- WM_MANIPULATORGROUPTYPE_SCALE |
- WM_MANIPULATORGROUPTYPE_DRAW_MODAL_ALL);
+ wgt->flag |= (WM_GIZMOGROUPTYPE_PERSISTENT |
+ WM_GIZMOGROUPTYPE_SCALE |
+ WM_GIZMOGROUPTYPE_DRAW_MODAL_ALL);
wgt->poll = WIDGETGROUP_navigate_poll;
wgt->setup = WIDGETGROUP_navigate_setup;
diff --git a/source/blender/editors/space_view3d/view3d_gizmo_navigate_type.c b/source/blender/editors/space_view3d/view3d_gizmo_navigate_type.c
index 072f2ee4583..0136b235cc0 100644
--- a/source/blender/editors/space_view3d/view3d_gizmo_navigate_type.c
+++ b/source/blender/editors/space_view3d/view3d_gizmo_navigate_type.c
@@ -21,9 +21,9 @@
/** \file view3d_gizmo_navigate_type.c
* \ingroup wm
*
- * \name Custom Orientation/Navigation Manipulator for the 3D View
+ * \name Custom Orientation/Navigation Gizmo for the 3D View
*
- * \brief Simple manipulator to axis and translate.
+ * \brief Simple gizmo to axis and translate.
*
* - scale_basis: used for the size.
* - matrix_basis: used for the location.
@@ -63,7 +63,7 @@
#define HANDLE_SIZE 0.33
static void axis_geom_draw(
- const wmManipulator *mpr, const float color[4], const bool UNUSED(select))
+ const wmGizmo *mpr, const float color[4], const bool UNUSED(select))
{
GPU_line_width(mpr->line_width);
@@ -199,7 +199,7 @@ static void axis_geom_draw(
}
static void axis3d_draw_intern(
- const bContext *UNUSED(C), wmManipulator *mpr,
+ const bContext *UNUSED(C), wmGizmo *mpr,
const bool select, const bool highlight)
{
const float *color = highlight ? mpr->color_hi : mpr->color;
@@ -208,9 +208,9 @@ static void axis3d_draw_intern(
unit_m4(matrix_unit);
- WM_manipulator_calc_matrix_final_params(
+ WM_gizmo_calc_matrix_final_params(
mpr,
- &((struct WM_ManipulatorMatrixParams) {
+ &((struct WM_GizmoMatrixParams) {
.matrix_offset = matrix_unit,
}), matrix_final);
@@ -223,10 +223,10 @@ static void axis3d_draw_intern(
gpuPopMatrix();
}
-static void manipulator_axis_draw(const bContext *C, wmManipulator *mpr)
+static void gizmo_axis_draw(const bContext *C, wmGizmo *mpr)
{
- const bool is_modal = mpr->state & WM_MANIPULATOR_STATE_MODAL;
- const bool is_highlight = (mpr->state & WM_MANIPULATOR_STATE_HIGHLIGHT) != 0;
+ const bool is_modal = mpr->state & WM_GIZMO_STATE_MODAL;
+ const bool is_highlight = (mpr->state & WM_GIZMO_STATE_HIGHLIGHT) != 0;
(void)is_modal;
@@ -235,8 +235,8 @@ static void manipulator_axis_draw(const bContext *C, wmManipulator *mpr)
GPU_blend(false);
}
-static int manipulator_axis_test_select(
- bContext *UNUSED(C), wmManipulator *mpr, const wmEvent *event)
+static int gizmo_axis_test_select(
+ bContext *UNUSED(C), wmGizmo *mpr, const wmEvent *event)
{
float point_local[2] = {UNPACK2(event->mval)};
sub_v2_v2(point_local, mpr->matrix_basis[3]);
@@ -288,7 +288,7 @@ static int manipulator_axis_test_select(
return -1;
}
-static int manipulator_axis_cursor_get(wmManipulator *mpr)
+static int gizmo_axis_cursor_get(wmGizmo *mpr)
{
if (mpr->highlight_part > 0) {
return CURSOR_EDIT;
@@ -296,15 +296,15 @@ static int manipulator_axis_cursor_get(wmManipulator *mpr)
return BC_NSEW_SCROLLCURSOR;
}
-void VIEW3D_WT_navigate_rotate(wmManipulatorType *wt)
+void VIEW3D_WT_navigate_rotate(wmGizmoType *wt)
{
/* identifiers */
wt->idname = "VIEW3D_WT_navigate_rotate";
/* api callbacks */
- wt->draw = manipulator_axis_draw;
- wt->test_select = manipulator_axis_test_select;
- wt->cursor_get = manipulator_axis_cursor_get;
+ wt->draw = gizmo_axis_draw;
+ wt->test_select = gizmo_axis_test_select;
+ wt->cursor_get = gizmo_axis_cursor_get;
- wt->struct_size = sizeof(wmManipulator);
+ wt->struct_size = sizeof(wmGizmo);
}
diff --git a/source/blender/editors/space_view3d/view3d_gizmo_ruler.c b/source/blender/editors/space_view3d/view3d_gizmo_ruler.c
index c29b07e4147..ac6a984bea5 100644
--- a/source/blender/editors/space_view3d/view3d_gizmo_ruler.c
+++ b/source/blender/editors/space_view3d/view3d_gizmo_ruler.c
@@ -93,7 +93,7 @@ enum {
#define PART_LINE 0xff
/* -------------------------------------------------------------------- */
-/* Ruler Info (wmManipulatorGroup customdata) */
+/* Ruler Info (wmGizmoGroup customdata) */
enum {
RULER_STATE_NORMAL = 0,
@@ -123,7 +123,7 @@ typedef struct RulerInfo {
/* Ruler Item (two or three points) */
typedef struct RulerItem {
- wmManipulator mpr;
+ wmGizmo mpr;
/* worldspace coords, middle being optional */
float co[3][3];
@@ -143,18 +143,18 @@ typedef struct RulerInteraction {
/** \name Internal Ruler Utilities
* \{ */
-static RulerItem *ruler_item_add(wmManipulatorGroup *mgroup)
+static RulerItem *ruler_item_add(wmGizmoGroup *mgroup)
{
/* could pass this as an arg */
- const wmManipulatorType *wt_ruler = WM_manipulatortype_find("VIEW3D_WT_ruler_item", true);
- RulerItem *ruler_item = (RulerItem *)WM_manipulator_new_ptr(wt_ruler, mgroup, NULL);
- WM_manipulator_set_flag(&ruler_item->mpr, WM_MANIPULATOR_DRAW_MODAL, true);
+ const wmGizmoType *wt_ruler = WM_gizmotype_find("VIEW3D_WT_ruler_item", true);
+ RulerItem *ruler_item = (RulerItem *)WM_gizmo_new_ptr(wt_ruler, mgroup, NULL);
+ WM_gizmo_set_flag(&ruler_item->mpr, WM_GIZMO_DRAW_MODAL, true);
return ruler_item;
}
-static void ruler_item_remove(bContext *C, wmManipulatorGroup *mgroup, RulerItem *ruler_item)
+static void ruler_item_remove(bContext *C, wmGizmoGroup *mgroup, RulerItem *ruler_item)
{
- WM_manipulator_unlink(&mgroup->manipulators, mgroup->parent_mmap, &ruler_item->mpr, C);
+ WM_gizmo_unlink(&mgroup->gizmos, mgroup->parent_mmap, &ruler_item->mpr, C);
}
static void ruler_item_as_string(RulerItem *ruler_item, UnitSettings *unit,
@@ -192,7 +192,7 @@ static void ruler_item_as_string(RulerItem *ruler_item, UnitSettings *unit,
}
static bool view3d_ruler_pick(
- wmManipulatorGroup *mgroup, RulerItem *ruler_item, const float mval[2],
+ wmGizmoGroup *mgroup, RulerItem *ruler_item, const float mval[2],
int *r_co_index)
{
RulerInfo *ruler_info = mgroup->customdata;
@@ -380,7 +380,7 @@ static bool view3d_ruler_item_mousemove(
* \{ */
#define RULER_ID "RulerData3D"
-static bool view3d_ruler_to_gpencil(bContext *C, wmManipulatorGroup *mgroup)
+static bool view3d_ruler_to_gpencil(bContext *C, wmGizmoGroup *mgroup)
{
// RulerInfo *ruler_info = mgroup->customdata;
Main *bmain = CTX_data_main(C);
@@ -419,7 +419,7 @@ static bool view3d_ruler_to_gpencil(bContext *C, wmManipulatorGroup *mgroup)
gpf = BKE_gpencil_layer_getframe(gpl, CFRA, true);
BKE_gpencil_free_strokes(gpf);
- for (ruler_item = mgroup->manipulators.first; ruler_item; ruler_item = (RulerItem *)ruler_item->mpr.next) {
+ for (ruler_item = mgroup->gizmos.first; ruler_item; ruler_item = (RulerItem *)ruler_item->mpr.next) {
bGPDspoint *pt;
int j;
@@ -457,7 +457,7 @@ static bool view3d_ruler_to_gpencil(bContext *C, wmManipulatorGroup *mgroup)
return changed;
}
-static bool view3d_ruler_from_gpencil(const bContext *C, wmManipulatorGroup *mgroup)
+static bool view3d_ruler_from_gpencil(const bContext *C, wmGizmoGroup *mgroup)
{
Scene *scene = CTX_data_scene(C);
bool changed = false;
@@ -503,10 +503,10 @@ static bool view3d_ruler_from_gpencil(const bContext *C, wmManipulatorGroup *mgr
/** \} */
/* -------------------------------------------------------------------- */
-/** \name Ruler Item Manipulator Type
+/** \name Ruler Item Gizmo Type
* \{ */
-static void manipulator_ruler_draw(const bContext *C, wmManipulator *mpr)
+static void gizmo_ruler_draw(const bContext *C, wmGizmo *mpr)
{
Scene *scene = CTX_data_scene(C);
UnitSettings *unit = &scene->unit;
@@ -536,7 +536,7 @@ static void manipulator_ruler_draw(const bContext *C, wmManipulator *mpr)
UI_GetThemeColor3ubv(TH_TEXT, color_text);
UI_GetThemeColor3ubv(TH_WIRE, color_wire);
- const bool is_act = (mpr->flag & WM_MANIPULATOR_DRAW_HOVER);
+ const bool is_act = (mpr->flag & WM_GIZMO_DRAW_HOVER);
float dir_ruler[2];
float co_ss[3][2];
int j;
@@ -804,8 +804,8 @@ static void manipulator_ruler_draw(const bContext *C, wmManipulator *mpr)
}
}
-static int manipulator_ruler_test_select(
- bContext *UNUSED(C), wmManipulator *mpr, const wmEvent *event)
+static int gizmo_ruler_test_select(
+ bContext *UNUSED(C), wmGizmo *mpr, const wmEvent *event)
{
RulerItem *ruler_item_pick = (RulerItem *)mpr;
float mval_fl[2] = {UNPACK2(event->mval)};
@@ -825,9 +825,9 @@ static int manipulator_ruler_test_select(
return -1;
}
-static int manipulator_ruler_modal(
- bContext *C, wmManipulator *mpr, const wmEvent *event,
- eWM_ManipulatorTweak UNUSED(tweak_flag))
+static int gizmo_ruler_modal(
+ bContext *C, wmGizmo *mpr, const wmEvent *event,
+ eWM_GizmoFlagTweak UNUSED(tweak_flag))
{
bool do_draw = false;
int exit_code = OPERATOR_RUNNING_MODAL;
@@ -859,10 +859,10 @@ static int manipulator_ruler_modal(
return exit_code;
}
-static int manipulator_ruler_invoke(
- bContext *C, wmManipulator *mpr, const wmEvent *event)
+static int gizmo_ruler_invoke(
+ bContext *C, wmGizmo *mpr, const wmEvent *event)
{
- wmManipulatorGroup *mgroup = mpr->parent_mgroup;
+ wmGizmoGroup *mgroup = mpr->parent_mgroup;
RulerInfo *ruler_info = mgroup->customdata;
RulerItem *ruler_item_pick = (RulerItem *)mpr;
RulerInteraction *inter = MEM_callocN(sizeof(RulerInteraction), __func__);
@@ -913,9 +913,9 @@ static int manipulator_ruler_invoke(
return OPERATOR_RUNNING_MODAL;
}
-static void manipulator_ruler_exit(bContext *C, wmManipulator *mpr, const bool cancel)
+static void gizmo_ruler_exit(bContext *C, wmGizmo *mpr, const bool cancel)
{
- wmManipulatorGroup *mgroup = mpr->parent_mgroup;
+ wmGizmoGroup *mgroup = mpr->parent_mgroup;
RulerInfo *ruler_info = mgroup->customdata;
if (!cancel) {
@@ -941,7 +941,7 @@ static void manipulator_ruler_exit(bContext *C, wmManipulator *mpr, const bool c
}
ruler_state_set(C, ruler_info, RULER_STATE_NORMAL);
}
- /* We could convert only the current manipulator, for now just re-generate. */
+ /* We could convert only the current gizmo, for now just re-generate. */
view3d_ruler_to_gpencil(C, mgroup);
}
@@ -952,7 +952,7 @@ static void manipulator_ruler_exit(bContext *C, wmManipulator *mpr, const bool c
ruler_state_set(C, ruler_info, RULER_STATE_NORMAL);
}
-static int manipulator_ruler_cursor_get(wmManipulator *mpr)
+static int gizmo_ruler_cursor_get(wmGizmo *mpr)
{
if (mpr->highlight_part == PART_LINE) {
return BC_CROSSCURSOR;
@@ -960,18 +960,18 @@ static int manipulator_ruler_cursor_get(wmManipulator *mpr)
return BC_NSEW_SCROLLCURSOR;
}
-void VIEW3D_WT_ruler_item(wmManipulatorType *wt)
+void VIEW3D_WT_ruler_item(wmGizmoType *wt)
{
/* identifiers */
wt->idname = "VIEW3D_WT_ruler_item";
/* api callbacks */
- wt->draw = manipulator_ruler_draw;
- wt->test_select = manipulator_ruler_test_select;
- wt->modal = manipulator_ruler_modal;
- wt->invoke = manipulator_ruler_invoke;
- wt->exit = manipulator_ruler_exit;
- wt->cursor_get = manipulator_ruler_cursor_get;
+ wt->draw = gizmo_ruler_draw;
+ wt->test_select = gizmo_ruler_test_select;
+ wt->modal = gizmo_ruler_modal;
+ wt->invoke = gizmo_ruler_invoke;
+ wt->exit = gizmo_ruler_exit;
+ wt->cursor_get = gizmo_ruler_cursor_get;
wt->struct_size = sizeof(RulerItem);
}
@@ -979,22 +979,22 @@ void VIEW3D_WT_ruler_item(wmManipulatorType *wt)
/** \} */
/* -------------------------------------------------------------------- */
-/** \name Ruler Manipulator Group
+/** \name Ruler Gizmo Group
* \{ */
-static bool WIDGETGROUP_ruler_poll(const bContext *C, wmManipulatorGroupType *wgt)
+static bool WIDGETGROUP_ruler_poll(const bContext *C, wmGizmoGroupType *wgt)
{
bToolRef_Runtime *tref_rt = WM_toolsystem_runtime_from_context((bContext *)C);
if ((tref_rt == NULL) ||
- !STREQ(wgt->idname, tref_rt->manipulator_group))
+ !STREQ(wgt->idname, tref_rt->gizmo_group))
{
- WM_manipulator_group_type_unlink_delayed_ptr(wgt);
+ WM_gizmo_group_type_unlink_delayed_ptr(wgt);
return false;
}
return true;
}
-static void WIDGETGROUP_ruler_setup(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_ruler_setup(const bContext *C, wmGizmoGroup *mgroup)
{
RulerInfo *ruler_info = MEM_callocN(sizeof(RulerInfo), __func__);
@@ -1012,12 +1012,12 @@ static void WIDGETGROUP_ruler_setup(const bContext *C, wmManipulatorGroup *mgrou
mgroup->customdata = ruler_info;
}
-void VIEW3D_WGT_ruler(wmManipulatorGroupType *wgt)
+void VIEW3D_WGT_ruler(wmGizmoGroupType *wgt)
{
wgt->name = "Ruler Widgets";
wgt->idname = view3d_wgt_ruler_id;
- wgt->flag |= WM_MANIPULATORGROUPTYPE_SCALE | WM_MANIPULATORGROUPTYPE_DRAW_MODAL_ALL;
+ wgt->flag |= WM_GIZMOGROUPTYPE_SCALE | WM_GIZMOGROUPTYPE_DRAW_MODAL_ALL;
wgt->mmap_params.spaceid = SPACE_VIEW3D;
wgt->mmap_params.regionid = RGN_TYPE_WINDOW;
@@ -1036,7 +1036,7 @@ static bool view3d_ruler_poll(bContext *C)
{
bToolRef_Runtime *tref_rt = WM_toolsystem_runtime_from_context((bContext *)C);
if ((tref_rt == NULL) ||
- !STREQ(view3d_wgt_ruler_id, tref_rt->manipulator_group) ||
+ !STREQ(view3d_wgt_ruler_id, tref_rt->gizmo_group) ||
CTX_wm_region_view3d(C) == NULL)
{
return false;
@@ -1050,8 +1050,8 @@ static int view3d_ruler_add_invoke(bContext *C, wmOperator *UNUSED(op), const wm
View3D *v3d = CTX_wm_view3d(C);
RegionView3D *rv3d = ar->regiondata;
- wmManipulatorMap *mmap = ar->manipulator_map;
- wmManipulatorGroup *mgroup = WM_manipulatormap_group_find(mmap, view3d_wgt_ruler_id);
+ wmGizmoMap *mmap = ar->gizmo_map;
+ wmGizmoGroup *mgroup = WM_gizmomap_group_find(mmap, view3d_wgt_ruler_id);
const bool use_depth = (v3d->drawtype >= OB_SOLID);
/* Create new line */
@@ -1059,9 +1059,9 @@ static int view3d_ruler_add_invoke(bContext *C, wmOperator *UNUSED(op), const wm
ruler_item = ruler_item_add(mgroup);
/* This is a little weak, but there is no real good way to tweak directly. */
- WM_manipulator_highlight_set(mmap, &ruler_item->mpr);
+ WM_gizmo_highlight_set(mmap, &ruler_item->mpr);
if (WM_operator_name_call(
- C, "MANIPULATORGROUP_OT_manipulator_tweak",
+ C, "GIZMOGROUP_OT_gizmo_tweak",
WM_OP_INVOKE_REGION_WIN, NULL) == OPERATOR_RUNNING_MODAL)
{
RulerInfo *ruler_info = mgroup->customdata;
diff --git a/source/blender/editors/space_view3d/view3d_header.c b/source/blender/editors/space_view3d/view3d_header.c
index a2dda8d6403..c9277235d50 100644
--- a/source/blender/editors/space_view3d/view3d_header.c
+++ b/source/blender/editors/space_view3d/view3d_header.c
@@ -308,7 +308,7 @@ static void uiTemplatePaintModeSelection(uiLayout *layout, struct bContext *C)
ViewLayer *view_layer = CTX_data_view_layer(C);
Object *ob = OBACT(view_layer);
- /* Manipulators aren't used in paint modes */
+ /* Gizmos aren't used in paint modes */
if (!ELEM(ob->mode, OB_MODE_SCULPT, OB_MODE_PARTICLE_EDIT)) {
/* masks aren't used for sculpt and particle painting */
PointerRNA meshptr;
@@ -391,9 +391,9 @@ void uiTemplateHeader3D(uiLayout *layout, struct bContext *C)
else {
/* Moved to popover and topbar. */
#if 0
- /* Transform widget / manipulators */
+ /* Transform widget / gizmos */
row = uiLayoutRow(layout, true);
- uiItemR(row, &v3dptr, "show_manipulator", UI_ITEM_R_ICON_ONLY, "", ICON_NONE);
+ uiItemR(row, &v3dptr, "show_gizmo", UI_ITEM_R_ICON_ONLY, "", ICON_NONE);
uiItemR(row, &sceneptr, "transform_orientation", 0, "", ICON_NONE);
#endif
}
diff --git a/source/blender/editors/space_view3d/view3d_intern.h b/source/blender/editors/space_view3d/view3d_intern.h
index b74a40969a1..89dd254c130 100644
--- a/source/blender/editors/space_view3d/view3d_intern.h
+++ b/source/blender/editors/space_view3d/view3d_intern.h
@@ -51,8 +51,8 @@ struct Mesh;
struct ViewLayer;
struct wmOperatorType;
struct wmKeyConfig;
-struct wmManipulatorGroupType;
-struct wmManipulatorType;
+struct wmGizmoGroupType;
+struct wmGizmoType;
struct wmWindowManager;
/* drawing flags: */
@@ -254,21 +254,21 @@ ARegion *view3d_has_tools_region(ScrArea *sa);
extern const char *view3d_context_dir[]; /* doc access */
/* view3d_widgets.c */
-void VIEW3D_WGT_lamp_spot(struct wmManipulatorGroupType *wgt);
-void VIEW3D_WGT_lamp_area(struct wmManipulatorGroupType *wgt);
-void VIEW3D_WGT_lamp_target(struct wmManipulatorGroupType *wgt);
-void VIEW3D_WGT_camera(struct wmManipulatorGroupType *wgt);
-void VIEW3D_WGT_camera_view(struct wmManipulatorGroupType *wgt);
-void VIEW3D_WGT_force_field(struct wmManipulatorGroupType *wgt);
-void VIEW3D_WGT_empty_image(struct wmManipulatorGroupType *wgt);
-void VIEW3D_WGT_armature_spline(struct wmManipulatorGroupType *wgt);
-void VIEW3D_WGT_navigate(struct wmManipulatorGroupType *wgt);
-
-void VIEW3D_WGT_ruler(struct wmManipulatorGroupType *wgt);
-void VIEW3D_WT_ruler_item(struct wmManipulatorType *wt);
+void VIEW3D_WGT_lamp_spot(struct wmGizmoGroupType *wgt);
+void VIEW3D_WGT_lamp_area(struct wmGizmoGroupType *wgt);
+void VIEW3D_WGT_lamp_target(struct wmGizmoGroupType *wgt);
+void VIEW3D_WGT_camera(struct wmGizmoGroupType *wgt);
+void VIEW3D_WGT_camera_view(struct wmGizmoGroupType *wgt);
+void VIEW3D_WGT_force_field(struct wmGizmoGroupType *wgt);
+void VIEW3D_WGT_empty_image(struct wmGizmoGroupType *wgt);
+void VIEW3D_WGT_armature_spline(struct wmGizmoGroupType *wgt);
+void VIEW3D_WGT_navigate(struct wmGizmoGroupType *wgt);
+
+void VIEW3D_WGT_ruler(struct wmGizmoGroupType *wgt);
+void VIEW3D_WT_ruler_item(struct wmGizmoType *wt);
void VIEW3D_OT_ruler_add(struct wmOperatorType *ot);
-void VIEW3D_WT_navigate_rotate(struct wmManipulatorType *wt);
+void VIEW3D_WT_navigate_rotate(struct wmGizmoType *wt);
/* draw_volume.c */
void draw_smoke_volume(struct SmokeDomainSettings *sds, struct Object *ob,
diff --git a/source/blender/editors/space_view3d/view3d_ops.c b/source/blender/editors/space_view3d/view3d_ops.c
index fb9cf917701..cf9b8afe8e5 100644
--- a/source/blender/editors/space_view3d/view3d_ops.c
+++ b/source/blender/editors/space_view3d/view3d_ops.c
@@ -541,7 +541,7 @@ void view3d_keymap(wmKeyConfig *keyconf)
#else
kmi = WM_keymap_add_item(keymap, "WM_OT_context_toggle", ACCENTGRAVEKEY, KM_PRESS, KM_CTRL, 0);
#endif
- RNA_string_set(kmi->ptr, "data_path", "space_data.show_manipulator_tool");
+ RNA_string_set(kmi->ptr, "data_path", "space_data.show_gizmo_tool");
transform_keymap_for_space(keyconf, keymap, SPACE_VIEW3D);
diff --git a/source/blender/editors/transform/transform.c b/source/blender/editors/transform/transform.c
index 15c830e45d0..ad7b5d55ba5 100644
--- a/source/blender/editors/transform/transform.c
+++ b/source/blender/editors/transform/transform.c
@@ -2215,7 +2215,7 @@ bool initTransform(bContext *C, TransInfo *t, wmOperator *op, const wmEvent *eve
t->launch_event = event ? WM_userdef_event_type_from_keymap_type(event->type) : -1;
// XXX Remove this when wm_operator_call_internal doesn't use window->eventstate (which can have type = 0)
- // For manipulator only, so assume LEFTMOUSE
+ // For gizmo only, so assume LEFTMOUSE
if (t->launch_event == 0) {
t->launch_event = LEFTMOUSE;
}
@@ -2267,10 +2267,10 @@ bool initTransform(bContext *C, TransInfo *t, wmOperator *op, const wmEvent *eve
/* keymap for shortcut header prints */
t->keymap = WM_keymap_active(CTX_wm_manager(C), op->type->modalkeymap);
- /* Stupid code to have Ctrl-Click on manipulator work ok
+ /* Stupid code to have Ctrl-Click on gizmo work ok
*
* do this only for translation/rotation/resize due to only this
- * moded are available from manipulator and doing such check could
+ * moded are available from gizmo and doing such check could
* lead to keymap conflicts for other modes (see #31584)
*/
if (ELEM(mode, TFM_TRANSLATION, TFM_ROTATION, TFM_RESIZE)) {
@@ -3590,7 +3590,7 @@ static void applyResize(TransInfo *t, const int UNUSED(mval[2]))
t->con.applySize(t, NULL, NULL, mat);
}
- copy_m3_m3(t->mat, mat); // used in manipulator
+ copy_m3_m3(t->mat, mat); // used in gizmo
headerResize(t, t->values, str);
@@ -4302,7 +4302,7 @@ static void applyTrackball(TransInfo *t, const int UNUSED(mval[2]))
mul_m3_m3m3(mat, smat, totmat);
// TRANSFORM_FIX_ME
- //copy_m3_m3(t->mat, mat); // used in manipulator
+ //copy_m3_m3(t->mat, mat); // used in gizmo
#endif
applyTrackballValue(t, axis1, axis2, phi);
@@ -5453,7 +5453,7 @@ static void applyBoneSize(TransInfo *t, const int UNUSED(mval[2]))
t->con.applySize(t, NULL, NULL, mat);
}
- copy_m3_m3(t->mat, mat); // used in manipulator
+ copy_m3_m3(t->mat, mat); // used in gizmo
headerBoneSize(t, size, str);
diff --git a/source/blender/editors/transform/transform.h b/source/blender/editors/transform/transform.h
index b022d5a3058..2006bd830b4 100644
--- a/source/blender/editors/transform/transform.h
+++ b/source/blender/editors/transform/transform.h
@@ -491,7 +491,7 @@ typedef struct TransInfo {
short persp;
short around;
char spacetype; /* spacetype where transforming is */
- char helpline; /* Choice of custom cursor with or without a help line from the manipulator to the mouse position. */
+ char helpline; /* Choice of custom cursor with or without a help line from the gizmo to the mouse position. */
short obedit_type; /* Avoid looking inside TransDataContainer obedit. */
float vec[3]; /* translation, to show for widget */
@@ -710,9 +710,9 @@ void flushTransMasking(TransInfo *t);
void flushTransPaintCurve(TransInfo *t);
void restoreBones(TransDataContainer *tc);
-/*********************** transform_manipulator.c ********** */
+/*********************** transform_gizmo.c ********** */
-#define MANIPULATOR_AXIS_LINE_WIDTH 2.0f
+#define GIZMO_AXIS_LINE_WIDTH 2.0f
/* return 0 when no gimbal for selection */
bool gimbal_axis(struct Object *ob, float gmat[3][3]);
diff --git a/source/blender/editors/transform/transform_conversions.c b/source/blender/editors/transform/transform_conversions.c
index 83b568b494c..a5706f4a003 100644
--- a/source/blender/editors/transform/transform_conversions.c
+++ b/source/blender/editors/transform/transform_conversions.c
@@ -6684,7 +6684,7 @@ void special_aftertrans_update(bContext *C, TransInfo *t)
BKE_pose_where_is(t->depsgraph, t->scene, pose_ob);
}
- /* set BONE_TRANSFORM flags for autokey, manipulator draw might have changed them */
+ /* set BONE_TRANSFORM flags for autokey, gizmo draw might have changed them */
if (!canceled && (t->mode != TFM_DUMMY)) {
count_set_pose_transflags(ob, t->mode, t->around, NULL);
}
diff --git a/source/blender/editors/transform/transform_generics.c b/source/blender/editors/transform/transform_generics.c
index c79c28a99da..e32bef72cf6 100644
--- a/source/blender/editors/transform/transform_generics.c
+++ b/source/blender/editors/transform/transform_generics.c
@@ -1348,10 +1348,10 @@ void initTransInfo(bContext *C, TransInfo *t, wmOperator *op, const wmEvent *eve
t->view = v3d;
t->animtimer = (animscreen) ? animscreen->animtimer : NULL;
- /* turn manipulator off during transform */
+ /* turn gizmo off during transform */
if (t->flag & T_MODAL) {
t->mpr_flag = v3d->mpr_flag;
- v3d->mpr_flag = V3D_MANIPULATOR_HIDE;
+ v3d->mpr_flag = V3D_GIZMO_HIDE;
}
if (t->scene->toolsettings->transform_flag & SCE_XFORM_AXIS_ALIGN) {
@@ -1688,7 +1688,7 @@ void postTrans(bContext *C, TransInfo *t)
}
else if (t->spacetype == SPACE_VIEW3D) {
View3D *v3d = t->sa->spacedata.first;
- /* restore manipulator */
+ /* restore gizmo */
if (t->flag & T_MODAL) {
v3d->mpr_flag = t->mpr_flag;
}
diff --git a/source/blender/editors/transform/transform_gizmo_2d.c b/source/blender/editors/transform/transform_gizmo_2d.c
index 5d5d55de848..995faae8333 100644
--- a/source/blender/editors/transform/transform_gizmo_2d.c
+++ b/source/blender/editors/transform/transform_gizmo_2d.c
@@ -21,7 +21,7 @@
/** \file blender/editors/transform/transform_gizmo_2d.c
* \ingroup edtransform
*
- * \name 2D Transform Manipulator
+ * \name 2D Transform Gizmo
*
* Used for UV/Image Editor
*/
@@ -64,18 +64,18 @@ enum {
MAN2D_AXIS_LAST,
};
-typedef struct ManipulatorGroup2D {
- wmManipulator *translate_x,
+typedef struct GizmoGroup2D {
+ wmGizmo *translate_x,
*translate_y;
- wmManipulator *cage;
+ wmGizmo *cage;
/* Current origin in view space, used to update widget origin for possible view changes */
float origin[2];
float min[2];
float max[2];
-} ManipulatorGroup2D;
+} GizmoGroup2D;
/* **************** Utilities **************** */
@@ -83,16 +83,16 @@ typedef struct ManipulatorGroup2D {
/* loop over axes */
#define MAN2D_ITER_AXES_BEGIN(axis, axis_idx) \
{ \
- wmManipulator *axis; \
+ wmGizmo *axis; \
int axis_idx; \
for (axis_idx = 0; axis_idx < MAN2D_AXIS_LAST; axis_idx++) { \
- axis = manipulator2d_get_axis_from_index(man, axis_idx);
+ axis = gizmo2d_get_axis_from_index(man, axis_idx);
#define MAN2D_ITER_AXES_END \
} \
} ((void)0)
-static wmManipulator *manipulator2d_get_axis_from_index(const ManipulatorGroup2D *man, const short axis_idx)
+static wmGizmo *gizmo2d_get_axis_from_index(const GizmoGroup2D *man, const short axis_idx)
{
BLI_assert(IN_RANGE_INCL(axis_idx, (float)MAN2D_AXIS_TRANS_X, (float)MAN2D_AXIS_TRANS_Y));
@@ -106,7 +106,7 @@ static wmManipulator *manipulator2d_get_axis_from_index(const ManipulatorGroup2D
return NULL;
}
-static void manipulator2d_get_axis_color(const int axis_idx, float *r_col, float *r_col_hi)
+static void gizmo2d_get_axis_color(const int axis_idx, float *r_col, float *r_col_hi)
{
const float alpha = 0.6f;
const float alpha_hi = 1.0f;
@@ -128,29 +128,29 @@ static void manipulator2d_get_axis_color(const int axis_idx, float *r_col, float
r_col_hi[3] *= alpha_hi;
}
-static ManipulatorGroup2D *manipulatorgroup2d_init(wmManipulatorGroup *mgroup)
+static GizmoGroup2D *gizmogroup2d_init(wmGizmoGroup *mgroup)
{
- const wmManipulatorType *wt_arrow = WM_manipulatortype_find("MANIPULATOR_WT_arrow_2d", true);
- const wmManipulatorType *wt_cage = WM_manipulatortype_find("MANIPULATOR_WT_cage_2d", true);
+ const wmGizmoType *wt_arrow = WM_gizmotype_find("GIZMO_WT_arrow_2d", true);
+ const wmGizmoType *wt_cage = WM_gizmotype_find("GIZMO_WT_cage_2d", true);
- ManipulatorGroup2D *man = MEM_callocN(sizeof(ManipulatorGroup2D), __func__);
+ GizmoGroup2D *man = MEM_callocN(sizeof(GizmoGroup2D), __func__);
- man->translate_x = WM_manipulator_new_ptr(wt_arrow, mgroup, NULL);
- man->translate_y = WM_manipulator_new_ptr(wt_arrow, mgroup, NULL);
- man->cage = WM_manipulator_new_ptr(wt_cage, mgroup, NULL);
+ man->translate_x = WM_gizmo_new_ptr(wt_arrow, mgroup, NULL);
+ man->translate_y = WM_gizmo_new_ptr(wt_arrow, mgroup, NULL);
+ man->cage = WM_gizmo_new_ptr(wt_cage, mgroup, NULL);
RNA_enum_set(man->cage->ptr, "transform",
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_TRANSLATE |
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE |
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_ROTATE);
+ ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE |
+ ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE |
+ ED_GIZMO_CAGE2D_XFORM_FLAG_ROTATE);
return man;
}
/**
- * Calculates origin in view space, use with #manipulator2d_origin_to_region.
+ * Calculates origin in view space, use with #gizmo2d_origin_to_region.
*/
-static void manipulator2d_calc_bounds(const bContext *C, float *r_center, float *r_min, float *r_max)
+static void gizmo2d_calc_bounds(const bContext *C, float *r_center, float *r_min, float *r_max)
{
SpaceImage *sima = CTX_wm_space_image(C);
Image *ima = ED_space_image(sima);
@@ -173,34 +173,34 @@ static void manipulator2d_calc_bounds(const bContext *C, float *r_center, float
/**
* Convert origin (or any other point) from view to region space.
*/
-BLI_INLINE void manipulator2d_origin_to_region(ARegion *ar, float *r_origin)
+BLI_INLINE void gizmo2d_origin_to_region(ARegion *ar, float *r_origin)
{
UI_view2d_view_to_region_fl(&ar->v2d, r_origin[0], r_origin[1], &r_origin[0], &r_origin[1]);
}
/**
- * Custom handler for manipulator widgets
+ * Custom handler for gizmo widgets
*/
-static int manipulator2d_modal(
- bContext *C, wmManipulator *widget, const wmEvent *UNUSED(event),
- eWM_ManipulatorTweak UNUSED(tweak_flag))
+static int gizmo2d_modal(
+ bContext *C, wmGizmo *widget, const wmEvent *UNUSED(event),
+ eWM_GizmoFlagTweak UNUSED(tweak_flag))
{
ARegion *ar = CTX_wm_region(C);
float origin[3];
- manipulator2d_calc_bounds(C, origin, NULL, NULL);
- manipulator2d_origin_to_region(ar, origin);
- WM_manipulator_set_matrix_location(widget, origin);
+ gizmo2d_calc_bounds(C, origin, NULL, NULL);
+ gizmo2d_origin_to_region(ar, origin);
+ WM_gizmo_set_matrix_location(widget, origin);
ED_region_tag_redraw(ar);
return OPERATOR_RUNNING_MODAL;
}
-void ED_widgetgroup_manipulator2d_setup(const bContext *UNUSED(C), wmManipulatorGroup *mgroup)
+void ED_widgetgroup_gizmo2d_setup(const bContext *UNUSED(C), wmGizmoGroup *mgroup)
{
wmOperatorType *ot_translate = WM_operatortype_find("TRANSFORM_OT_translate", true);
- ManipulatorGroup2D *man = manipulatorgroup2d_init(mgroup);
+ GizmoGroup2D *man = gizmogroup2d_init(mgroup);
mgroup->customdata = man;
MAN2D_ITER_AXES_BEGIN(axis, axis_idx)
@@ -208,21 +208,21 @@ void ED_widgetgroup_manipulator2d_setup(const bContext *UNUSED(C), wmManipulator
const float offset[3] = {0.0f, 0.2f};
float color[4], color_hi[4];
- manipulator2d_get_axis_color(axis_idx, color, color_hi);
+ gizmo2d_get_axis_color(axis_idx, color, color_hi);
/* custom handler! */
- WM_manipulator_set_fn_custom_modal(axis, manipulator2d_modal);
+ WM_gizmo_set_fn_custom_modal(axis, gizmo2d_modal);
/* set up widget data */
RNA_float_set(axis->ptr, "angle", -M_PI_2 * axis_idx);
RNA_float_set(axis->ptr, "length", 0.8f);
- WM_manipulator_set_matrix_offset_location(axis, offset);
- WM_manipulator_set_line_width(axis, MANIPULATOR_AXIS_LINE_WIDTH);
- WM_manipulator_set_scale(axis, U.manipulator_size);
- WM_manipulator_set_color(axis, color);
- WM_manipulator_set_color_highlight(axis, color_hi);
+ WM_gizmo_set_matrix_offset_location(axis, offset);
+ WM_gizmo_set_line_width(axis, GIZMO_AXIS_LINE_WIDTH);
+ WM_gizmo_set_scale(axis, U.gizmo_size);
+ WM_gizmo_set_color(axis, color);
+ WM_gizmo_set_color_highlight(axis, color_hi);
/* assign operator */
- PointerRNA *ptr = WM_manipulator_operator_set(axis, 0, ot_translate, NULL);
+ PointerRNA *ptr = WM_gizmo_operator_set(axis, 0, ot_translate, NULL);
bool constraint[3] = {0};
constraint[(axis_idx + 1) % 2] = 1;
if (RNA_struct_find_property(ptr, "constraint_axis"))
@@ -237,107 +237,107 @@ void ED_widgetgroup_manipulator2d_setup(const bContext *UNUSED(C), wmManipulator
PointerRNA *ptr;
/* assign operator */
- ptr = WM_manipulator_operator_set(man->cage, 0, ot_translate, NULL);
+ ptr = WM_gizmo_operator_set(man->cage, 0, ot_translate, NULL);
RNA_boolean_set(ptr, "release_confirm", 1);
bool constraint_x[3] = {1, 0, 0};
bool constraint_y[3] = {0, 1, 0};
- ptr = WM_manipulator_operator_set(man->cage, ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X, ot_resize, NULL);
+ ptr = WM_gizmo_operator_set(man->cage, ED_GIZMO_CAGE2D_PART_SCALE_MIN_X, ot_resize, NULL);
PropertyRNA *prop_release_confirm = RNA_struct_find_property(ptr, "release_confirm");
PropertyRNA *prop_constraint_axis = RNA_struct_find_property(ptr, "constraint_axis");
RNA_property_boolean_set_array(ptr, prop_constraint_axis, constraint_x);
RNA_property_boolean_set(ptr, prop_release_confirm, true);
- ptr = WM_manipulator_operator_set(man->cage, ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X, ot_resize, NULL);
+ ptr = WM_gizmo_operator_set(man->cage, ED_GIZMO_CAGE2D_PART_SCALE_MAX_X, ot_resize, NULL);
RNA_property_boolean_set_array(ptr, prop_constraint_axis, constraint_x);
RNA_property_boolean_set(ptr, prop_release_confirm, true);
- ptr = WM_manipulator_operator_set(man->cage, ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_Y, ot_resize, NULL);
+ ptr = WM_gizmo_operator_set(man->cage, ED_GIZMO_CAGE2D_PART_SCALE_MIN_Y, ot_resize, NULL);
RNA_property_boolean_set_array(ptr, prop_constraint_axis, constraint_y);
RNA_property_boolean_set(ptr, prop_release_confirm, true);
- ptr = WM_manipulator_operator_set(man->cage, ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_Y, ot_resize, NULL);
+ ptr = WM_gizmo_operator_set(man->cage, ED_GIZMO_CAGE2D_PART_SCALE_MAX_Y, ot_resize, NULL);
RNA_property_boolean_set_array(ptr, prop_constraint_axis, constraint_y);
RNA_property_boolean_set(ptr, prop_release_confirm, true);
- ptr = WM_manipulator_operator_set(man->cage, ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X_MIN_Y, ot_resize, NULL);
+ ptr = WM_gizmo_operator_set(man->cage, ED_GIZMO_CAGE2D_PART_SCALE_MIN_X_MIN_Y, ot_resize, NULL);
RNA_property_boolean_set(ptr, prop_release_confirm, true);
- ptr = WM_manipulator_operator_set(man->cage, ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X_MAX_Y, ot_resize, NULL);
+ ptr = WM_gizmo_operator_set(man->cage, ED_GIZMO_CAGE2D_PART_SCALE_MIN_X_MAX_Y, ot_resize, NULL);
RNA_property_boolean_set(ptr, prop_release_confirm, true);
- ptr = WM_manipulator_operator_set(man->cage, ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X_MIN_Y, ot_resize, NULL);
+ ptr = WM_gizmo_operator_set(man->cage, ED_GIZMO_CAGE2D_PART_SCALE_MAX_X_MIN_Y, ot_resize, NULL);
RNA_property_boolean_set(ptr, prop_release_confirm, true);
- ptr = WM_manipulator_operator_set(man->cage, ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X_MAX_Y, ot_resize, NULL);
+ ptr = WM_gizmo_operator_set(man->cage, ED_GIZMO_CAGE2D_PART_SCALE_MAX_X_MAX_Y, ot_resize, NULL);
RNA_property_boolean_set(ptr, prop_release_confirm, true);
- ptr = WM_manipulator_operator_set(man->cage, ED_MANIPULATOR_CAGE2D_PART_ROTATE, ot_rotate, NULL);
+ ptr = WM_gizmo_operator_set(man->cage, ED_GIZMO_CAGE2D_PART_ROTATE, ot_rotate, NULL);
RNA_property_boolean_set(ptr, prop_release_confirm, true);
}
}
-void ED_widgetgroup_manipulator2d_refresh(const bContext *C, wmManipulatorGroup *mgroup)
+void ED_widgetgroup_gizmo2d_refresh(const bContext *C, wmGizmoGroup *mgroup)
{
- ManipulatorGroup2D *man = mgroup->customdata;
+ GizmoGroup2D *man = mgroup->customdata;
float origin[3];
- manipulator2d_calc_bounds(C, origin, man->min, man->max);
+ gizmo2d_calc_bounds(C, origin, man->min, man->max);
copy_v2_v2(man->origin, origin);
bool show_cage = !equals_v2v2(man->min, man->max);
if (show_cage) {
- man->cage->flag &= ~WM_MANIPULATOR_HIDDEN;
- man->translate_x->flag |= WM_MANIPULATOR_HIDDEN;
- man->translate_y->flag |= WM_MANIPULATOR_HIDDEN;
+ man->cage->flag &= ~WM_GIZMO_HIDDEN;
+ man->translate_x->flag |= WM_GIZMO_HIDDEN;
+ man->translate_y->flag |= WM_GIZMO_HIDDEN;
}
else {
- man->cage->flag |= WM_MANIPULATOR_HIDDEN;
- man->translate_x->flag &= ~WM_MANIPULATOR_HIDDEN;
- man->translate_y->flag &= ~WM_MANIPULATOR_HIDDEN;
+ man->cage->flag |= WM_GIZMO_HIDDEN;
+ man->translate_x->flag &= ~WM_GIZMO_HIDDEN;
+ man->translate_y->flag &= ~WM_GIZMO_HIDDEN;
}
if (show_cage) {
- wmManipulatorOpElem *mpop;
+ wmGizmoOpElem *mpop;
float mid[2];
const float *min = man->min;
const float *max = man->max;
mid_v2_v2v2(mid, min, max);
- mpop = WM_manipulator_operator_get(man->cage, ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X);
+ mpop = WM_gizmo_operator_get(man->cage, ED_GIZMO_CAGE2D_PART_SCALE_MIN_X);
PropertyRNA *prop_center_override = RNA_struct_find_property(&mpop->ptr, "center_override");
RNA_property_float_set_array(&mpop->ptr, prop_center_override, (float[3]){max[0], mid[1], 0.0f});
- mpop = WM_manipulator_operator_get(man->cage, ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X);
+ mpop = WM_gizmo_operator_get(man->cage, ED_GIZMO_CAGE2D_PART_SCALE_MAX_X);
RNA_property_float_set_array(&mpop->ptr, prop_center_override, (float[3]){min[0], mid[1], 0.0f});
- mpop = WM_manipulator_operator_get(man->cage, ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_Y);
+ mpop = WM_gizmo_operator_get(man->cage, ED_GIZMO_CAGE2D_PART_SCALE_MIN_Y);
RNA_property_float_set_array(&mpop->ptr, prop_center_override, (float[3]){mid[0], max[1], 0.0f});
- mpop = WM_manipulator_operator_get(man->cage, ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_Y);
+ mpop = WM_gizmo_operator_get(man->cage, ED_GIZMO_CAGE2D_PART_SCALE_MAX_Y);
RNA_property_float_set_array(&mpop->ptr, prop_center_override, (float[3]){mid[0], min[1], 0.0f});
- mpop = WM_manipulator_operator_get(man->cage, ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X_MIN_Y);
+ mpop = WM_gizmo_operator_get(man->cage, ED_GIZMO_CAGE2D_PART_SCALE_MIN_X_MIN_Y);
RNA_property_float_set_array(&mpop->ptr, prop_center_override, (float[3]){max[0], max[1], 0.0f});
- mpop = WM_manipulator_operator_get(man->cage, ED_MANIPULATOR_CAGE2D_PART_SCALE_MIN_X_MAX_Y);
+ mpop = WM_gizmo_operator_get(man->cage, ED_GIZMO_CAGE2D_PART_SCALE_MIN_X_MAX_Y);
RNA_property_float_set_array(&mpop->ptr, prop_center_override, (float[3]){max[0], min[1], 0.0f});
- mpop = WM_manipulator_operator_get(man->cage, ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X_MIN_Y);
+ mpop = WM_gizmo_operator_get(man->cage, ED_GIZMO_CAGE2D_PART_SCALE_MAX_X_MIN_Y);
RNA_property_float_set_array(&mpop->ptr, prop_center_override, (float[3]){min[0], max[1], 0.0f});
- mpop = WM_manipulator_operator_get(man->cage, ED_MANIPULATOR_CAGE2D_PART_SCALE_MAX_X_MAX_Y);
+ mpop = WM_gizmo_operator_get(man->cage, ED_GIZMO_CAGE2D_PART_SCALE_MAX_X_MAX_Y);
RNA_property_float_set_array(&mpop->ptr, prop_center_override, (float[3]){min[0], min[1], 0.0f});
- mpop = WM_manipulator_operator_get(man->cage, ED_MANIPULATOR_CAGE2D_PART_ROTATE);
+ mpop = WM_gizmo_operator_get(man->cage, ED_GIZMO_CAGE2D_PART_ROTATE);
RNA_property_float_set_array(&mpop->ptr, prop_center_override, (float[3]){mid[0], mid[1], 0.0f});
}
}
-void ED_widgetgroup_manipulator2d_draw_prepare(const bContext *C, wmManipulatorGroup *mgroup)
+void ED_widgetgroup_gizmo2d_draw_prepare(const bContext *C, wmGizmoGroup *mgroup)
{
ARegion *ar = CTX_wm_region(C);
- ManipulatorGroup2D *man = mgroup->customdata;
+ GizmoGroup2D *man = mgroup->customdata;
float origin[3] = {UNPACK2(man->origin), 0.0f};
float origin_aa[3] = {UNPACK2(man->origin), 0.0f};
- manipulator2d_origin_to_region(ar, origin);
+ gizmo2d_origin_to_region(ar, origin);
MAN2D_ITER_AXES_BEGIN(axis, axis_idx)
{
- WM_manipulator_set_matrix_location(axis, origin);
+ WM_gizmo_set_matrix_location(axis, origin);
}
MAN2D_ITER_AXES_END;
UI_view2d_view_to_region_m4(&ar->v2d, man->cage->matrix_space);
- WM_manipulator_set_matrix_offset_location(man->cage, origin_aa);
+ WM_gizmo_set_matrix_offset_location(man->cage, origin_aa);
man->cage->matrix_offset[0][0] = (man->max[0] - man->min[0]);
man->cage->matrix_offset[1][1] = (man->max[1] - man->min[1]);
}
@@ -346,9 +346,9 @@ void ED_widgetgroup_manipulator2d_draw_prepare(const bContext *C, wmManipulatorG
* - Called on every redraw, better to do a more simple poll and check for selection in _refresh
* - UV editing only, could be expanded for other things.
*/
-bool ED_widgetgroup_manipulator2d_poll(const bContext *C, wmManipulatorGroupType *UNUSED(wgt))
+bool ED_widgetgroup_gizmo2d_poll(const bContext *C, wmGizmoGroupType *UNUSED(wgt))
{
- if ((U.manipulator_flag & USER_MANIPULATOR_DRAW) == 0) {
+ if ((U.gizmo_flag & USER_GIZMO_DRAW) == 0) {
return false;
}
diff --git a/source/blender/editors/transform/transform_gizmo_3d.c b/source/blender/editors/transform/transform_gizmo_3d.c
index 1a30bd1cdcb..7d608c433c3 100644
--- a/source/blender/editors/transform/transform_gizmo_3d.c
+++ b/source/blender/editors/transform/transform_gizmo_3d.c
@@ -21,7 +21,7 @@
/** \file blender/editors/transform/transform_gizmo_3d.c
* \ingroup edtransform
*
- * \name 3D Transform Manipulator
+ * \name 3D Transform Gizmo
*
* Used for 3D View
*/
@@ -106,7 +106,7 @@
#define MAN_SCALE_Z (1 << 10)
#define MAN_SCALE_C (MAN_SCALE_X | MAN_SCALE_Y | MAN_SCALE_Z)
-/* threshold for testing view aligned manipulator axis */
+/* threshold for testing view aligned gizmo axis */
struct {
float min, max;
} g_tw_axis_range[2] = {
@@ -159,17 +159,17 @@ enum {
MAN_AXES_SCALE,
};
-typedef struct ManipulatorGroup {
+typedef struct GizmoGroup {
bool all_hidden;
int twtype;
- /* Users may change the twtype, detect changes to re-setup manipulator options. */
+ /* Users may change the twtype, detect changes to re-setup gizmo options. */
int twtype_init;
int twtype_prev;
int use_twtype_refresh;
- struct wmManipulator *manipulators[MAN_AXIS_LAST];
-} ManipulatorGroup;
+ struct wmGizmo *gizmos[MAN_AXIS_LAST];
+} GizmoGroup;
/* -------------------------------------------------------------------- */
/** \name Utilities
@@ -178,22 +178,22 @@ typedef struct ManipulatorGroup {
/* loop over axes */
#define MAN_ITER_AXES_BEGIN(axis, axis_idx) \
{ \
- wmManipulator *axis; \
+ wmGizmo *axis; \
int axis_idx; \
for (axis_idx = 0; axis_idx < MAN_AXIS_LAST; axis_idx++) { \
- axis = manipulator_get_axis_from_index(man, axis_idx);
+ axis = gizmo_get_axis_from_index(man, axis_idx);
#define MAN_ITER_AXES_END \
} \
} ((void)0)
-static wmManipulator *manipulator_get_axis_from_index(const ManipulatorGroup *man, const short axis_idx)
+static wmGizmo *gizmo_get_axis_from_index(const GizmoGroup *man, const short axis_idx)
{
BLI_assert(IN_RANGE_INCL(axis_idx, (float)MAN_AXIS_TRANS_X, (float)MAN_AXIS_LAST));
- return man->manipulators[axis_idx];
+ return man->gizmos[axis_idx];
}
-static short manipulator_get_axis_type(const int axis_idx)
+static short gizmo_get_axis_type(const int axis_idx)
{
if (axis_idx >= MAN_AXIS_RANGE_TRANS_START && axis_idx < MAN_AXIS_RANGE_TRANS_END) {
return MAN_AXES_TRANSLATE;
@@ -208,7 +208,7 @@ static short manipulator_get_axis_type(const int axis_idx)
return -1;
}
-static uint manipulator_orientation_axis(const int axis_idx, bool *r_is_plane)
+static uint gizmo_orientation_axis(const int axis_idx, bool *r_is_plane)
{
switch (axis_idx) {
case MAN_AXIS_TRANS_YZ:
@@ -247,13 +247,13 @@ static uint manipulator_orientation_axis(const int axis_idx, bool *r_is_plane)
return 3;
}
-static bool manipulator_is_axis_visible(
+static bool gizmo_is_axis_visible(
const RegionView3D *rv3d, const int twtype,
const float idot[3], const int axis_type, const int axis_idx)
{
if ((axis_idx >= MAN_AXIS_RANGE_ROT_START && axis_idx < MAN_AXIS_RANGE_ROT_END) == 0) {
bool is_plane = false;
- const uint aidx_norm = manipulator_orientation_axis(axis_idx, &is_plane);
+ const uint aidx_norm = gizmo_orientation_axis(axis_idx, &is_plane);
/* don't draw axis perpendicular to the view */
if (aidx_norm < 3) {
float idot_axis = idot[aidx_norm];
@@ -330,7 +330,7 @@ static bool manipulator_is_axis_visible(
return false;
}
-static void manipulator_get_axis_color(
+static void gizmo_get_axis_color(
const int axis_idx, const float idot[3],
float r_col[4], float r_col_hi[4])
{
@@ -346,7 +346,7 @@ static void manipulator_get_axis_color(
}
else {
bool is_plane = false;
- const int axis_idx_norm = manipulator_orientation_axis(axis_idx, &is_plane);
+ const int axis_idx_norm = gizmo_orientation_axis(axis_idx, &is_plane);
/* get alpha fac based on axis angle, to fade axis out when hiding it because it points towards view */
if (axis_idx_norm < 3) {
const float idot_min = g_tw_axis_range[is_plane].min;
@@ -401,7 +401,7 @@ static void manipulator_get_axis_color(
r_col_hi[3] = alpha_hi * alpha_fac;
}
-static void manipulator_get_axis_constraint(const int axis_idx, bool r_axis[3])
+static void gizmo_get_axis_constraint(const int axis_idx, bool r_axis[3])
{
ARRAY_SET_ITEMS(r_axis, 0, 0, 0);
@@ -596,7 +596,7 @@ bool gimbal_axis(Object *ob, float gmat[3][3])
/* centroid, boundbox, of selection */
/* returns total items selected */
-int ED_transform_calc_manipulator_stats(
+int ED_transform_calc_gizmo_stats(
const bContext *C,
const struct TransformCalcParams *params,
struct TransformBounds *tbounds)
@@ -952,7 +952,7 @@ int ED_transform_calc_manipulator_stats(
}
else if (ob && (ob->mode & OB_MODE_POSE)) {
bPoseChannel *pchan;
- int mode = TFM_ROTATION; // mislead counting bones... bah. We don't know the manipulator mode, could be mixed
+ int mode = TFM_ROTATION; // mislead counting bones... bah. We don't know the gizmo mode, could be mixed
bool ok = false;
if ((pivot_point == V3D_AROUND_ACTIVE) && (pchan = BKE_pose_channel_active(ob))) {
@@ -1061,7 +1061,7 @@ int ED_transform_calc_manipulator_stats(
return totsel;
}
-static void manipulator_get_idot(RegionView3D *rv3d, float r_idot[3])
+static void gizmo_get_idot(RegionView3D *rv3d, float r_idot[3])
{
float view_vec[3], axis_vec[3];
ED_view3d_global_to_vector(rv3d, rv3d->twmat[3], view_vec);
@@ -1071,7 +1071,7 @@ static void manipulator_get_idot(RegionView3D *rv3d, float r_idot[3])
}
}
-static void manipulator_prepare_mat(
+static void gizmo_prepare_mat(
const bContext *C, View3D *v3d, RegionView3D *rv3d, const struct TransformBounds *tbounds)
{
Scene *scene = CTX_data_scene(C);
@@ -1108,9 +1108,9 @@ static void manipulator_prepare_mat(
/**
* Sets up \a r_start and \a r_len to define arrow line range.
- * Needed to adjust line drawing for combined manipulator axis types.
+ * Needed to adjust line drawing for combined gizmo axis types.
*/
-static void manipulator_line_range(const int twtype, const short axis_type, float *r_start, float *r_len)
+static void gizmo_line_range(const int twtype, const short axis_type, float *r_start, float *r_len)
{
const float ofs = 0.2f;
@@ -1136,15 +1136,15 @@ static void manipulator_line_range(const int twtype, const short axis_type, floa
*r_len -= *r_start;
}
-static void manipulator_xform_message_subscribe(
- wmManipulatorGroup *mgroup, struct wmMsgBus *mbus,
+static void gizmo_xform_message_subscribe(
+ wmGizmoGroup *mgroup, struct wmMsgBus *mbus,
Scene *scene, bScreen *UNUSED(screen), ScrArea *UNUSED(sa), ARegion *ar, const void *type_fn)
{
/* Subscribe to view properties */
wmMsgSubscribeValue msg_sub_value_mpr_tag_refresh = {
.owner = ar,
.user_data = mgroup->parent_mmap,
- .notify = WM_manipulator_do_msg_notify_tag_refresh,
+ .notify = WM_gizmo_do_msg_notify_tag_refresh,
};
PointerRNA scene_ptr;
@@ -1167,12 +1167,12 @@ static void manipulator_xform_message_subscribe(
PointerRNA toolsettings_ptr;
RNA_pointer_create(&scene->id, &RNA_ToolSettings, scene->toolsettings, &toolsettings_ptr);
- if (type_fn == TRANSFORM_WGT_manipulator) {
+ if (type_fn == TRANSFORM_WGT_gizmo) {
extern PropertyRNA rna_ToolSettings_transform_pivot_point;
- extern PropertyRNA rna_ToolSettings_use_manipulator_mode;
+ extern PropertyRNA rna_ToolSettings_use_gizmo_mode;
const PropertyRNA *props[] = {
&rna_ToolSettings_transform_pivot_point,
- &rna_ToolSettings_use_manipulator_mode,
+ &rna_ToolSettings_use_gizmo_mode,
};
for (int i = 0; i < ARRAY_SIZE(props); i++) {
WM_msg_subscribe_rna(mbus, &toolsettings_ptr, props[i], &msg_sub_value_mpr_tag_refresh, __func__);
@@ -1192,73 +1192,73 @@ static void manipulator_xform_message_subscribe(
/* -------------------------------------------------------------------- */
-/** \name Transform Manipulator
+/** \name Transform Gizmo
* \{ */
-static ManipulatorGroup *manipulatorgroup_init(wmManipulatorGroup *mgroup)
+static GizmoGroup *gizmogroup_init(wmGizmoGroup *mgroup)
{
- ManipulatorGroup *man;
+ GizmoGroup *man;
- man = MEM_callocN(sizeof(ManipulatorGroup), "manipulator_data");
+ man = MEM_callocN(sizeof(GizmoGroup), "gizmo_data");
- const wmManipulatorType *wt_arrow = WM_manipulatortype_find("MANIPULATOR_WT_arrow_3d", true);
- const wmManipulatorType *wt_dial = WM_manipulatortype_find("MANIPULATOR_WT_dial_3d", true);
- const wmManipulatorType *wt_prim = WM_manipulatortype_find("MANIPULATOR_WT_primitive_3d", true);
+ const wmGizmoType *wt_arrow = WM_gizmotype_find("GIZMO_WT_arrow_3d", true);
+ const wmGizmoType *wt_dial = WM_gizmotype_find("GIZMO_WT_dial_3d", true);
+ const wmGizmoType *wt_prim = WM_gizmotype_find("GIZMO_WT_primitive_3d", true);
-#define MANIPULATOR_NEW_ARROW(v, draw_style) { \
- man->manipulators[v] = WM_manipulator_new_ptr(wt_arrow, mgroup, NULL); \
- RNA_enum_set(man->manipulators[v]->ptr, "draw_style", draw_style); \
+#define GIZMO_NEW_ARROW(v, draw_style) { \
+ man->gizmos[v] = WM_gizmo_new_ptr(wt_arrow, mgroup, NULL); \
+ RNA_enum_set(man->gizmos[v]->ptr, "draw_style", draw_style); \
} ((void)0)
-#define MANIPULATOR_NEW_DIAL(v, draw_options) { \
- man->manipulators[v] = WM_manipulator_new_ptr(wt_dial, mgroup, NULL); \
- RNA_enum_set(man->manipulators[v]->ptr, "draw_options", draw_options); \
+#define GIZMO_NEW_DIAL(v, draw_options) { \
+ man->gizmos[v] = WM_gizmo_new_ptr(wt_dial, mgroup, NULL); \
+ RNA_enum_set(man->gizmos[v]->ptr, "draw_options", draw_options); \
} ((void)0)
-#define MANIPULATOR_NEW_PRIM(v, draw_style) { \
- man->manipulators[v] = WM_manipulator_new_ptr(wt_prim, mgroup, NULL); \
- RNA_enum_set(man->manipulators[v]->ptr, "draw_style", draw_style); \
+#define GIZMO_NEW_PRIM(v, draw_style) { \
+ man->gizmos[v] = WM_gizmo_new_ptr(wt_prim, mgroup, NULL); \
+ RNA_enum_set(man->gizmos[v]->ptr, "draw_style", draw_style); \
} ((void)0)
/* add/init widgets - order matters! */
- MANIPULATOR_NEW_DIAL(MAN_AXIS_ROT_T, ED_MANIPULATOR_DIAL_DRAW_FLAG_FILL);
+ GIZMO_NEW_DIAL(MAN_AXIS_ROT_T, ED_GIZMO_DIAL_DRAW_FLAG_FILL);
- MANIPULATOR_NEW_DIAL(MAN_AXIS_SCALE_C, ED_MANIPULATOR_DIAL_DRAW_FLAG_NOP);
+ GIZMO_NEW_DIAL(MAN_AXIS_SCALE_C, ED_GIZMO_DIAL_DRAW_FLAG_NOP);
- MANIPULATOR_NEW_ARROW(MAN_AXIS_SCALE_X, ED_MANIPULATOR_ARROW_STYLE_BOX);
- MANIPULATOR_NEW_ARROW(MAN_AXIS_SCALE_Y, ED_MANIPULATOR_ARROW_STYLE_BOX);
- MANIPULATOR_NEW_ARROW(MAN_AXIS_SCALE_Z, ED_MANIPULATOR_ARROW_STYLE_BOX);
+ GIZMO_NEW_ARROW(MAN_AXIS_SCALE_X, ED_GIZMO_ARROW_STYLE_BOX);
+ GIZMO_NEW_ARROW(MAN_AXIS_SCALE_Y, ED_GIZMO_ARROW_STYLE_BOX);
+ GIZMO_NEW_ARROW(MAN_AXIS_SCALE_Z, ED_GIZMO_ARROW_STYLE_BOX);
- MANIPULATOR_NEW_PRIM(MAN_AXIS_SCALE_XY, ED_MANIPULATOR_PRIMITIVE_STYLE_PLANE);
- MANIPULATOR_NEW_PRIM(MAN_AXIS_SCALE_YZ, ED_MANIPULATOR_PRIMITIVE_STYLE_PLANE);
- MANIPULATOR_NEW_PRIM(MAN_AXIS_SCALE_ZX, ED_MANIPULATOR_PRIMITIVE_STYLE_PLANE);
+ GIZMO_NEW_PRIM(MAN_AXIS_SCALE_XY, ED_GIZMO_PRIMITIVE_STYLE_PLANE);
+ GIZMO_NEW_PRIM(MAN_AXIS_SCALE_YZ, ED_GIZMO_PRIMITIVE_STYLE_PLANE);
+ GIZMO_NEW_PRIM(MAN_AXIS_SCALE_ZX, ED_GIZMO_PRIMITIVE_STYLE_PLANE);
- MANIPULATOR_NEW_DIAL(MAN_AXIS_ROT_X, ED_MANIPULATOR_DIAL_DRAW_FLAG_CLIP);
- MANIPULATOR_NEW_DIAL(MAN_AXIS_ROT_Y, ED_MANIPULATOR_DIAL_DRAW_FLAG_CLIP);
- MANIPULATOR_NEW_DIAL(MAN_AXIS_ROT_Z, ED_MANIPULATOR_DIAL_DRAW_FLAG_CLIP);
+ GIZMO_NEW_DIAL(MAN_AXIS_ROT_X, ED_GIZMO_DIAL_DRAW_FLAG_CLIP);
+ GIZMO_NEW_DIAL(MAN_AXIS_ROT_Y, ED_GIZMO_DIAL_DRAW_FLAG_CLIP);
+ GIZMO_NEW_DIAL(MAN_AXIS_ROT_Z, ED_GIZMO_DIAL_DRAW_FLAG_CLIP);
/* init screen aligned widget last here, looks better, behaves better */
- MANIPULATOR_NEW_DIAL(MAN_AXIS_ROT_C, ED_MANIPULATOR_DIAL_DRAW_FLAG_NOP);
+ GIZMO_NEW_DIAL(MAN_AXIS_ROT_C, ED_GIZMO_DIAL_DRAW_FLAG_NOP);
- MANIPULATOR_NEW_DIAL(MAN_AXIS_TRANS_C, ED_MANIPULATOR_DIAL_DRAW_FLAG_NOP);
+ GIZMO_NEW_DIAL(MAN_AXIS_TRANS_C, ED_GIZMO_DIAL_DRAW_FLAG_NOP);
- MANIPULATOR_NEW_ARROW(MAN_AXIS_TRANS_X, ED_MANIPULATOR_ARROW_STYLE_NORMAL);
- MANIPULATOR_NEW_ARROW(MAN_AXIS_TRANS_Y, ED_MANIPULATOR_ARROW_STYLE_NORMAL);
- MANIPULATOR_NEW_ARROW(MAN_AXIS_TRANS_Z, ED_MANIPULATOR_ARROW_STYLE_NORMAL);
+ GIZMO_NEW_ARROW(MAN_AXIS_TRANS_X, ED_GIZMO_ARROW_STYLE_NORMAL);
+ GIZMO_NEW_ARROW(MAN_AXIS_TRANS_Y, ED_GIZMO_ARROW_STYLE_NORMAL);
+ GIZMO_NEW_ARROW(MAN_AXIS_TRANS_Z, ED_GIZMO_ARROW_STYLE_NORMAL);
- MANIPULATOR_NEW_PRIM(MAN_AXIS_TRANS_XY, ED_MANIPULATOR_PRIMITIVE_STYLE_PLANE);
- MANIPULATOR_NEW_PRIM(MAN_AXIS_TRANS_YZ, ED_MANIPULATOR_PRIMITIVE_STYLE_PLANE);
- MANIPULATOR_NEW_PRIM(MAN_AXIS_TRANS_ZX, ED_MANIPULATOR_PRIMITIVE_STYLE_PLANE);
+ GIZMO_NEW_PRIM(MAN_AXIS_TRANS_XY, ED_GIZMO_PRIMITIVE_STYLE_PLANE);
+ GIZMO_NEW_PRIM(MAN_AXIS_TRANS_YZ, ED_GIZMO_PRIMITIVE_STYLE_PLANE);
+ GIZMO_NEW_PRIM(MAN_AXIS_TRANS_ZX, ED_GIZMO_PRIMITIVE_STYLE_PLANE);
- man->manipulators[MAN_AXIS_ROT_T]->flag |= WM_MANIPULATOR_SELECT_BACKGROUND;
+ man->gizmos[MAN_AXIS_ROT_T]->flag |= WM_GIZMO_SELECT_BACKGROUND;
return man;
}
/**
- * Custom handler for manipulator widgets
+ * Custom handler for gizmo widgets
*/
-static int manipulator_modal(
- bContext *C, wmManipulator *widget, const wmEvent *event,
- eWM_ManipulatorTweak UNUSED(tweak_flag))
+static int gizmo_modal(
+ bContext *C, wmGizmo *widget, const wmEvent *event,
+ eWM_GizmoFlagTweak UNUSED(tweak_flag))
{
/* Avoid unnecessary updates, partially address: T55458. */
if (ELEM(event->type, TIMER, INBETWEEN_MOUSEMOVE)) {
@@ -1272,13 +1272,13 @@ static int manipulator_modal(
struct TransformBounds tbounds;
- if (ED_transform_calc_manipulator_stats(
+ if (ED_transform_calc_gizmo_stats(
C, &(struct TransformCalcParams){
.use_only_center = true,
}, &tbounds))
{
- manipulator_prepare_mat(C, v3d, rv3d, &tbounds);
- WM_manipulator_set_matrix_location(widget, rv3d->twmat[3]);
+ gizmo_prepare_mat(C, v3d, rv3d, &tbounds);
+ WM_gizmo_set_matrix_location(widget, rv3d->twmat[3]);
}
ED_region_tag_redraw(ar);
@@ -1286,22 +1286,22 @@ static int manipulator_modal(
return OPERATOR_RUNNING_MODAL;
}
-static void manipulatorgroup_init_properties_from_twtype(wmManipulatorGroup *mgroup)
+static void gizmogroup_init_properties_from_twtype(wmGizmoGroup *mgroup)
{
struct {
wmOperatorType *translate, *rotate, *trackball, *resize;
} ot_store = {NULL};
- ManipulatorGroup *man = mgroup->customdata;
+ GizmoGroup *man = mgroup->customdata;
MAN_ITER_AXES_BEGIN(axis, axis_idx)
{
- const short axis_type = manipulator_get_axis_type(axis_idx);
+ const short axis_type = gizmo_get_axis_type(axis_idx);
bool constraint_axis[3] = {1, 0, 0};
PointerRNA *ptr;
- manipulator_get_axis_constraint(axis_idx, constraint_axis);
+ gizmo_get_axis_constraint(axis_idx, constraint_axis);
/* custom handler! */
- WM_manipulator_set_fn_custom_modal(axis, manipulator_modal);
+ WM_gizmo_set_fn_custom_modal(axis, gizmo_modal);
switch (axis_idx) {
case MAN_AXIS_TRANS_X:
@@ -1313,19 +1313,19 @@ static void manipulatorgroup_init_properties_from_twtype(wmManipulatorGroup *mgr
if (axis_idx >= MAN_AXIS_RANGE_TRANS_START && axis_idx < MAN_AXIS_RANGE_TRANS_END) {
int draw_options = 0;
if ((man->twtype & (SCE_MANIP_ROTATE | SCE_MANIP_SCALE)) == 0) {
- draw_options |= ED_MANIPULATOR_ARROW_DRAW_FLAG_STEM;
+ draw_options |= ED_GIZMO_ARROW_DRAW_FLAG_STEM;
}
RNA_enum_set(axis->ptr, "draw_options", draw_options);
}
- WM_manipulator_set_line_width(axis, MANIPULATOR_AXIS_LINE_WIDTH);
+ WM_gizmo_set_line_width(axis, GIZMO_AXIS_LINE_WIDTH);
break;
case MAN_AXIS_ROT_X:
case MAN_AXIS_ROT_Y:
case MAN_AXIS_ROT_Z:
/* increased line width for better display */
- WM_manipulator_set_line_width(axis, MANIPULATOR_AXIS_LINE_WIDTH + 1.0f);
- WM_manipulator_set_flag(axis, WM_MANIPULATOR_DRAW_VALUE, true);
+ WM_gizmo_set_line_width(axis, GIZMO_AXIS_LINE_WIDTH + 1.0f);
+ WM_gizmo_set_flag(axis, WM_GIZMO_DRAW_VALUE, true);
break;
case MAN_AXIS_TRANS_XY:
case MAN_AXIS_TRANS_YZ:
@@ -1336,25 +1336,25 @@ static void manipulatorgroup_init_properties_from_twtype(wmManipulatorGroup *mgr
{
const float ofs_ax = 7.0f;
const float ofs[3] = {ofs_ax, ofs_ax, 0.0f};
- WM_manipulator_set_scale(axis, 0.07f);
- WM_manipulator_set_matrix_offset_location(axis, ofs);
- WM_manipulator_set_flag(axis, WM_MANIPULATOR_DRAW_OFFSET_SCALE, true);
+ WM_gizmo_set_scale(axis, 0.07f);
+ WM_gizmo_set_matrix_offset_location(axis, ofs);
+ WM_gizmo_set_flag(axis, WM_GIZMO_DRAW_OFFSET_SCALE, true);
break;
}
case MAN_AXIS_TRANS_C:
case MAN_AXIS_ROT_C:
case MAN_AXIS_SCALE_C:
case MAN_AXIS_ROT_T:
- WM_manipulator_set_line_width(axis, MANIPULATOR_AXIS_LINE_WIDTH);
+ WM_gizmo_set_line_width(axis, GIZMO_AXIS_LINE_WIDTH);
if (axis_idx == MAN_AXIS_ROT_T) {
- WM_manipulator_set_flag(axis, WM_MANIPULATOR_DRAW_HOVER, true);
+ WM_gizmo_set_flag(axis, WM_GIZMO_DRAW_HOVER, true);
}
else if (axis_idx == MAN_AXIS_ROT_C) {
- WM_manipulator_set_flag(axis, WM_MANIPULATOR_DRAW_VALUE, true);
- WM_manipulator_set_scale(axis, 1.2f);
+ WM_gizmo_set_flag(axis, WM_GIZMO_DRAW_VALUE, true);
+ WM_gizmo_set_scale(axis, 1.2f);
}
else {
- WM_manipulator_set_scale(axis, 0.2f);
+ WM_gizmo_set_scale(axis, 0.2f);
}
break;
}
@@ -1364,7 +1364,7 @@ static void manipulatorgroup_init_properties_from_twtype(wmManipulatorGroup *mgr
if (ot_store.translate == NULL) {
ot_store.translate = WM_operatortype_find("TRANSFORM_OT_translate", true);
}
- ptr = WM_manipulator_operator_set(axis, 0, ot_store.translate, NULL);
+ ptr = WM_gizmo_operator_set(axis, 0, ot_store.translate, NULL);
break;
case MAN_AXES_ROTATE:
{
@@ -1381,7 +1381,7 @@ static void manipulatorgroup_init_properties_from_twtype(wmManipulatorGroup *mgr
}
ot_rotate = ot_store.rotate;
}
- ptr = WM_manipulator_operator_set(axis, 0, ot_rotate, NULL);
+ ptr = WM_gizmo_operator_set(axis, 0, ot_rotate, NULL);
break;
}
case MAN_AXES_SCALE:
@@ -1389,7 +1389,7 @@ static void manipulatorgroup_init_properties_from_twtype(wmManipulatorGroup *mgr
if (ot_store.resize == NULL) {
ot_store.resize = WM_operatortype_find("TRANSFORM_OT_resize", true);
}
- ptr = WM_manipulator_operator_set(axis, 0, ot_store.resize, NULL);
+ ptr = WM_gizmo_operator_set(axis, 0, ot_store.resize, NULL);
break;
}
}
@@ -1406,9 +1406,9 @@ static void manipulatorgroup_init_properties_from_twtype(wmManipulatorGroup *mgr
MAN_ITER_AXES_END;
}
-static void WIDGETGROUP_manipulator_setup(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_gizmo_setup(const bContext *C, wmGizmoGroup *mgroup)
{
- ManipulatorGroup *man = manipulatorgroup_init(mgroup);
+ GizmoGroup *man = gizmogroup_init(mgroup);
mgroup->customdata = man;
@@ -1418,7 +1418,7 @@ static void WIDGETGROUP_manipulator_setup(const bContext *C, wmManipulatorGroup
const bToolRef *tref = sa->runtime.tool;
if (tref == NULL || STREQ(tref->idname, "Transform")) {
- /* Setup all manipulators, they can be toggled via 'ToolSettings.manipulator_flag' */
+ /* Setup all gizmos, they can be toggled via 'ToolSettings.gizmo_flag' */
man->twtype = SCE_MANIP_TRANSLATE | SCE_MANIP_ROTATE | SCE_MANIP_SCALE;
man->use_twtype_refresh = true;
}
@@ -1436,12 +1436,12 @@ static void WIDGETGROUP_manipulator_setup(const bContext *C, wmManipulatorGroup
}
/* *** set properties for axes *** */
- manipulatorgroup_init_properties_from_twtype(mgroup);
+ gizmogroup_init_properties_from_twtype(mgroup);
}
-static void WIDGETGROUP_manipulator_refresh(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_gizmo_refresh(const bContext *C, wmGizmoGroup *mgroup)
{
- ManipulatorGroup *man = mgroup->customdata;
+ GizmoGroup *man = mgroup->customdata;
ScrArea *sa = CTX_wm_area(C);
ARegion *ar = CTX_wm_region(C);
View3D *v3d = sa->spacedata.first;
@@ -1450,16 +1450,16 @@ static void WIDGETGROUP_manipulator_refresh(const bContext *C, wmManipulatorGrou
if (man->use_twtype_refresh) {
Scene *scene = CTX_data_scene(C);
- man->twtype = scene->toolsettings->manipulator_flag & man->twtype_init;
+ man->twtype = scene->toolsettings->gizmo_flag & man->twtype_init;
if (man->twtype != man->twtype_prev) {
man->twtype_prev = man->twtype;
- manipulatorgroup_init_properties_from_twtype(mgroup);
+ gizmogroup_init_properties_from_twtype(mgroup);
}
}
/* skip, we don't draw anything anyway */
if ((man->all_hidden =
- (ED_transform_calc_manipulator_stats(
+ (ED_transform_calc_gizmo_stats(
C, &(struct TransformCalcParams){
.use_only_center = true,
}, &tbounds) == 0)))
@@ -1467,16 +1467,16 @@ static void WIDGETGROUP_manipulator_refresh(const bContext *C, wmManipulatorGrou
return;
}
- manipulator_prepare_mat(C, v3d, rv3d, &tbounds);
+ gizmo_prepare_mat(C, v3d, rv3d, &tbounds);
/* *** set properties for axes *** */
MAN_ITER_AXES_BEGIN(axis, axis_idx)
{
- const short axis_type = manipulator_get_axis_type(axis_idx);
- const int aidx_norm = manipulator_orientation_axis(axis_idx, NULL);
+ const short axis_type = gizmo_get_axis_type(axis_idx);
+ const int aidx_norm = gizmo_orientation_axis(axis_idx, NULL);
- WM_manipulator_set_matrix_location(axis, rv3d->twmat[3]);
+ WM_gizmo_set_matrix_location(axis, rv3d->twmat[3]);
switch (axis_idx) {
case MAN_AXIS_TRANS_X:
@@ -1489,9 +1489,9 @@ static void WIDGETGROUP_manipulator_refresh(const bContext *C, wmManipulatorGrou
float start_co[3] = {0.0f, 0.0f, 0.0f};
float len;
- manipulator_line_range(man->twtype, axis_type, &start_co[2], &len);
+ gizmo_line_range(man->twtype, axis_type, &start_co[2], &len);
- WM_manipulator_set_matrix_rotation_from_z_axis(axis, rv3d->twmat[aidx_norm]);
+ WM_gizmo_set_matrix_rotation_from_z_axis(axis, rv3d->twmat[aidx_norm]);
RNA_float_set(axis->ptr, "length", len);
if (axis_idx >= MAN_AXIS_RANGE_TRANS_START && axis_idx < MAN_AXIS_RANGE_TRANS_END) {
@@ -1500,14 +1500,14 @@ static void WIDGETGROUP_manipulator_refresh(const bContext *C, wmManipulatorGrou
start_co[2] += 0.215f;
}
}
- WM_manipulator_set_matrix_offset_location(axis, start_co);
- WM_manipulator_set_flag(axis, WM_MANIPULATOR_DRAW_OFFSET_SCALE, true);
+ WM_gizmo_set_matrix_offset_location(axis, start_co);
+ WM_gizmo_set_flag(axis, WM_GIZMO_DRAW_OFFSET_SCALE, true);
break;
}
case MAN_AXIS_ROT_X:
case MAN_AXIS_ROT_Y:
case MAN_AXIS_ROT_Z:
- WM_manipulator_set_matrix_rotation_from_z_axis(axis, rv3d->twmat[aidx_norm]);
+ WM_gizmo_set_matrix_rotation_from_z_axis(axis, rv3d->twmat[aidx_norm]);
break;
case MAN_AXIS_TRANS_XY:
case MAN_AXIS_TRANS_YZ:
@@ -1518,7 +1518,7 @@ static void WIDGETGROUP_manipulator_refresh(const bContext *C, wmManipulatorGrou
{
const float *y_axis = rv3d->twmat[aidx_norm - 1 < 0 ? 2 : aidx_norm - 1];
const float *z_axis = rv3d->twmat[aidx_norm];
- WM_manipulator_set_matrix_rotation_from_yz_axis(axis, y_axis, z_axis);
+ WM_gizmo_set_matrix_rotation_from_yz_axis(axis, y_axis, z_axis);
break;
}
}
@@ -1526,134 +1526,134 @@ static void WIDGETGROUP_manipulator_refresh(const bContext *C, wmManipulatorGrou
MAN_ITER_AXES_END;
}
-static void WIDGETGROUP_manipulator_message_subscribe(
- const bContext *C, wmManipulatorGroup *mgroup, struct wmMsgBus *mbus)
+static void WIDGETGROUP_gizmo_message_subscribe(
+ const bContext *C, wmGizmoGroup *mgroup, struct wmMsgBus *mbus)
{
Scene *scene = CTX_data_scene(C);
bScreen *screen = CTX_wm_screen(C);
ScrArea *sa = CTX_wm_area(C);
ARegion *ar = CTX_wm_region(C);
- manipulator_xform_message_subscribe(mgroup, mbus, scene, screen, sa, ar, TRANSFORM_WGT_manipulator);
+ gizmo_xform_message_subscribe(mgroup, mbus, scene, screen, sa, ar, TRANSFORM_WGT_gizmo);
}
-static void WIDGETGROUP_manipulator_draw_prepare(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_gizmo_draw_prepare(const bContext *C, wmGizmoGroup *mgroup)
{
- ManipulatorGroup *man = mgroup->customdata;
+ GizmoGroup *man = mgroup->customdata;
// ScrArea *sa = CTX_wm_area(C);
ARegion *ar = CTX_wm_region(C);
// View3D *v3d = sa->spacedata.first;
RegionView3D *rv3d = ar->regiondata;
float idot[3];
- /* when looking through a selected camera, the manipulator can be at the
+ /* when looking through a selected camera, the gizmo can be at the
* exact same position as the view, skip so we don't break selection */
if (man->all_hidden || fabsf(ED_view3d_pixel_size(rv3d, rv3d->twmat[3])) < 1e-6f) {
MAN_ITER_AXES_BEGIN(axis, axis_idx)
{
- WM_manipulator_set_flag(axis, WM_MANIPULATOR_HIDDEN, true);
+ WM_gizmo_set_flag(axis, WM_GIZMO_HIDDEN, true);
}
MAN_ITER_AXES_END;
return;
}
- manipulator_get_idot(rv3d, idot);
+ gizmo_get_idot(rv3d, idot);
/* *** set properties for axes *** */
MAN_ITER_AXES_BEGIN(axis, axis_idx)
{
- const short axis_type = manipulator_get_axis_type(axis_idx);
+ const short axis_type = gizmo_get_axis_type(axis_idx);
/* XXX maybe unset _HIDDEN flag on redraw? */
- if (manipulator_is_axis_visible(rv3d, man->twtype, idot, axis_type, axis_idx)) {
- WM_manipulator_set_flag(axis, WM_MANIPULATOR_HIDDEN, false);
+ if (gizmo_is_axis_visible(rv3d, man->twtype, idot, axis_type, axis_idx)) {
+ WM_gizmo_set_flag(axis, WM_GIZMO_HIDDEN, false);
}
else {
- WM_manipulator_set_flag(axis, WM_MANIPULATOR_HIDDEN, true);
+ WM_gizmo_set_flag(axis, WM_GIZMO_HIDDEN, true);
continue;
}
float color[4], color_hi[4];
- manipulator_get_axis_color(axis_idx, idot, color, color_hi);
- WM_manipulator_set_color(axis, color);
- WM_manipulator_set_color_highlight(axis, color_hi);
+ gizmo_get_axis_color(axis_idx, idot, color, color_hi);
+ WM_gizmo_set_color(axis, color);
+ WM_gizmo_set_color_highlight(axis, color_hi);
switch (axis_idx) {
case MAN_AXIS_TRANS_C:
case MAN_AXIS_ROT_C:
case MAN_AXIS_SCALE_C:
case MAN_AXIS_ROT_T:
- WM_manipulator_set_matrix_rotation_from_z_axis(axis, rv3d->viewinv[2]);
+ WM_gizmo_set_matrix_rotation_from_z_axis(axis, rv3d->viewinv[2]);
break;
}
}
MAN_ITER_AXES_END;
}
-static bool WIDGETGROUP_manipulator_poll(const struct bContext *C, struct wmManipulatorGroupType *wgt)
+static bool WIDGETGROUP_gizmo_poll(const struct bContext *C, struct wmGizmoGroupType *wgt)
{
/* it's a given we only use this in 3D view */
bToolRef_Runtime *tref_rt = WM_toolsystem_runtime_from_context((bContext *)C);
if ((tref_rt == NULL) ||
- !STREQ(wgt->idname, tref_rt->manipulator_group))
+ !STREQ(wgt->idname, tref_rt->gizmo_group))
{
- WM_manipulator_group_type_unlink_delayed_ptr(wgt);
+ WM_gizmo_group_type_unlink_delayed_ptr(wgt);
return false;
}
View3D *v3d = CTX_wm_view3d(C);
- if (v3d->mpr_flag & (V3D_MANIPULATOR_HIDE | V3D_MANIPULATOR_HIDE_TOOL)) {
+ if (v3d->mpr_flag & (V3D_GIZMO_HIDE | V3D_GIZMO_HIDE_TOOL)) {
return false;
}
return true;
}
-void TRANSFORM_WGT_manipulator(wmManipulatorGroupType *wgt)
+void TRANSFORM_WGT_gizmo(wmGizmoGroupType *wgt)
{
- wgt->name = "Transform Manipulator";
- wgt->idname = "TRANSFORM_WGT_manipulator";
+ wgt->name = "Transform Gizmo";
+ wgt->idname = "TRANSFORM_WGT_gizmo";
- wgt->flag |= WM_MANIPULATORGROUPTYPE_3D;
+ wgt->flag |= WM_GIZMOGROUPTYPE_3D;
wgt->mmap_params.spaceid = SPACE_VIEW3D;
wgt->mmap_params.regionid = RGN_TYPE_WINDOW;
- wgt->poll = WIDGETGROUP_manipulator_poll;
- wgt->setup = WIDGETGROUP_manipulator_setup;
- wgt->refresh = WIDGETGROUP_manipulator_refresh;
- wgt->message_subscribe = WIDGETGROUP_manipulator_message_subscribe;
- wgt->draw_prepare = WIDGETGROUP_manipulator_draw_prepare;
+ wgt->poll = WIDGETGROUP_gizmo_poll;
+ wgt->setup = WIDGETGROUP_gizmo_setup;
+ wgt->refresh = WIDGETGROUP_gizmo_refresh;
+ wgt->message_subscribe = WIDGETGROUP_gizmo_message_subscribe;
+ wgt->draw_prepare = WIDGETGROUP_gizmo_draw_prepare;
}
/** \} */
/* -------------------------------------------------------------------- */
-/** \name Scale Cage Manipulator
+/** \name Scale Cage Gizmo
* \{ */
struct XFormCageWidgetGroup {
- wmManipulator *manipulator;
+ wmGizmo *gizmo;
};
-static bool WIDGETGROUP_xform_cage_poll(const bContext *C, wmManipulatorGroupType *wgt)
+static bool WIDGETGROUP_xform_cage_poll(const bContext *C, wmGizmoGroupType *wgt)
{
bToolRef_Runtime *tref_rt = WM_toolsystem_runtime_from_context((bContext *)C);
- if (!STREQ(wgt->idname, tref_rt->manipulator_group)) {
- WM_manipulator_group_type_unlink_delayed_ptr(wgt);
+ if (!STREQ(wgt->idname, tref_rt->gizmo_group)) {
+ WM_gizmo_group_type_unlink_delayed_ptr(wgt);
return false;
}
return true;
}
-static void WIDGETGROUP_xform_cage_setup(const bContext *UNUSED(C), wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_xform_cage_setup(const bContext *UNUSED(C), wmGizmoGroup *mgroup)
{
struct XFormCageWidgetGroup *xmgroup = MEM_mallocN(sizeof(struct XFormCageWidgetGroup), __func__);
- const wmManipulatorType *wt_cage = WM_manipulatortype_find("MANIPULATOR_WT_cage_3d", true);
- xmgroup->manipulator = WM_manipulator_new_ptr(wt_cage, mgroup, NULL);
- wmManipulator *mpr = xmgroup->manipulator;
+ const wmGizmoType *wt_cage = WM_gizmotype_find("GIZMO_WT_cage_3d", true);
+ xmgroup->gizmo = WM_gizmo_new_ptr(wt_cage, mgroup, NULL);
+ wmGizmo *mpr = xmgroup->gizmo;
RNA_enum_set(mpr->ptr, "transform",
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_SCALE |
- ED_MANIPULATOR_CAGE2D_XFORM_FLAG_TRANSLATE);
+ ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE |
+ ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE);
mpr->color[0] = 1;
mpr->color_hi[0] = 1;
@@ -1668,12 +1668,12 @@ static void WIDGETGROUP_xform_cage_setup(const bContext *UNUSED(C), wmManipulato
PropertyRNA *prop_release_confirm = NULL;
PropertyRNA *prop_constraint_axis = NULL;
- int i = ED_MANIPULATOR_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MIN_Z;
+ int i = ED_GIZMO_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MIN_Z;
for (int x = 0; x < 3; x++) {
for (int y = 0; y < 3; y++) {
for (int z = 0; z < 3; z++) {
bool constraint[3] = {x != 1, y != 1, z != 1};
- ptr = WM_manipulator_operator_set(mpr, i, ot_resize, NULL);
+ ptr = WM_gizmo_operator_set(mpr, i, ot_resize, NULL);
if (prop_release_confirm == NULL) {
prop_release_confirm = RNA_struct_find_property(ptr, "release_confirm");
prop_constraint_axis = RNA_struct_find_property(ptr, "constraint_axis");
@@ -1687,7 +1687,7 @@ static void WIDGETGROUP_xform_cage_setup(const bContext *UNUSED(C), wmManipulato
}
}
-static void WIDGETGROUP_xform_cage_refresh(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_xform_cage_refresh(const bContext *C, wmGizmoGroup *mgroup)
{
ScrArea *sa = CTX_wm_area(C);
View3D *v3d = sa->spacedata.first;
@@ -1695,23 +1695,23 @@ static void WIDGETGROUP_xform_cage_refresh(const bContext *C, wmManipulatorGroup
RegionView3D *rv3d = ar->regiondata;
struct XFormCageWidgetGroup *xmgroup = mgroup->customdata;
- wmManipulator *mpr = xmgroup->manipulator;
+ wmGizmo *mpr = xmgroup->gizmo;
struct TransformBounds tbounds;
- if ((ED_transform_calc_manipulator_stats(
+ if ((ED_transform_calc_gizmo_stats(
C, &(struct TransformCalcParams) {
.use_local_axis = true,
}, &tbounds) == 0) ||
equals_v3v3(rv3d->tw_axis_min, rv3d->tw_axis_max))
{
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_HIDDEN, true);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_HIDDEN, true);
}
else {
- manipulator_prepare_mat(C, v3d, rv3d, &tbounds);
+ gizmo_prepare_mat(C, v3d, rv3d, &tbounds);
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_HIDDEN, false);
- WM_manipulator_set_flag(mpr, WM_MANIPULATOR_GRAB_CURSOR, true);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_HIDDEN, false);
+ WM_gizmo_set_flag(mpr, WM_GIZMO_GRAB_CURSOR, true);
float dims[3];
sub_v3_v3v3(dims, rv3d->tw_axis_max, rv3d->tw_axis_min);
@@ -1725,14 +1725,14 @@ static void WIDGETGROUP_xform_cage_refresh(const bContext *C, wmManipulatorGroup
PropertyRNA *prop_center_override = NULL;
float center[3];
float center_global[3];
- int i = ED_MANIPULATOR_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MIN_Z;
+ int i = ED_GIZMO_CAGE3D_PART_SCALE_MIN_X_MIN_Y_MIN_Z;
for (int x = 0; x < 3; x++) {
center[0] = (float)(1 - x) * dims[0];
for (int y = 0; y < 3; y++) {
center[1] = (float)(1 - y) * dims[1];
for (int z = 0; z < 3; z++) {
center[2] = (float)(1 - z) * dims[2];
- struct wmManipulatorOpElem *mpop = WM_manipulator_operator_get(mpr, i);
+ struct wmGizmoOpElem *mpop = WM_gizmo_operator_get(mpr, i);
if (prop_center_override == NULL) {
prop_center_override = RNA_struct_find_property(&mpop->ptr, "center_override");
}
@@ -1746,19 +1746,19 @@ static void WIDGETGROUP_xform_cage_refresh(const bContext *C, wmManipulatorGroup
}
static void WIDGETGROUP_xform_cage_message_subscribe(
- const bContext *C, wmManipulatorGroup *mgroup, struct wmMsgBus *mbus)
+ const bContext *C, wmGizmoGroup *mgroup, struct wmMsgBus *mbus)
{
Scene *scene = CTX_data_scene(C);
bScreen *screen = CTX_wm_screen(C);
ScrArea *sa = CTX_wm_area(C);
ARegion *ar = CTX_wm_region(C);
- manipulator_xform_message_subscribe(mgroup, mbus, scene, screen, sa, ar, VIEW3D_WGT_xform_cage);
+ gizmo_xform_message_subscribe(mgroup, mbus, scene, screen, sa, ar, VIEW3D_WGT_xform_cage);
}
-static void WIDGETGROUP_xform_cage_draw_prepare(const bContext *C, wmManipulatorGroup *mgroup)
+static void WIDGETGROUP_xform_cage_draw_prepare(const bContext *C, wmGizmoGroup *mgroup)
{
struct XFormCageWidgetGroup *xmgroup = mgroup->customdata;
- wmManipulator *mpr = xmgroup->manipulator;
+ wmGizmo *mpr = xmgroup->gizmo;
ViewLayer *view_layer = CTX_data_view_layer(C);
Object *ob = OBACT(view_layer);
@@ -1770,12 +1770,12 @@ static void WIDGETGROUP_xform_cage_draw_prepare(const bContext *C, wmManipulator
}
}
-void VIEW3D_WGT_xform_cage(wmManipulatorGroupType *wgt)
+void VIEW3D_WGT_xform_cage(wmGizmoGroupType *wgt)
{
wgt->name = "Transform Cage";
wgt->idname = "VIEW3D_WGT_xform_cage";
- wgt->flag |= WM_MANIPULATORGROUPTYPE_3D;
+ wgt->flag |= WM_GIZMOGROUPTYPE_3D;
wgt->mmap_params.spaceid = SPACE_VIEW3D;
wgt->mmap_params.regionid = RGN_TYPE_WINDOW;
diff --git a/source/blender/editors/transform/transform_ops.c b/source/blender/editors/transform/transform_ops.c
index eedf6f50a1f..c9a97c8530c 100644
--- a/source/blender/editors/transform/transform_ops.c
+++ b/source/blender/editors/transform/transform_ops.c
@@ -493,7 +493,7 @@ static int transform_invoke(bContext *C, wmOperator *op, const wmEvent *event)
/* add temp handler */
WM_event_add_modal_handler(C, op);
- op->flag |= OP_IS_MODAL_GRAB_CURSOR; // XXX maybe we want this with the manipulator only?
+ op->flag |= OP_IS_MODAL_GRAB_CURSOR; // XXX maybe we want this with the gizmo only?
/* Use when modal input has some transformation to begin with. */
{
@@ -585,7 +585,7 @@ void Transform_Properties(struct wmOperatorType *ot, int flags)
}
if (flags & P_CENTER) {
- /* For manipulators that define their own center. */
+ /* For gizmos that define their own center. */
prop = RNA_def_property(ot->srna, "center_override", PROP_FLOAT, PROP_XYZ);
RNA_def_property_array(prop, 3);
RNA_def_property_flag(prop, PROP_HIDDEN | PROP_SKIP_SAVE);