Manipulator: use 'void *' for callback data args
Non-float properties should be editable too.
This commit is contained in:
parent
2d2c64dd18
commit
3edff2e1a4
|
@ -457,10 +457,11 @@ static void manipulator_mesh_bisect_update_from_op(ManipulatorGroup *man)
|
|||
/* depth callbacks */
|
||||
static void manipulator_bisect_prop_depth_get(
|
||||
const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
|
||||
float *value)
|
||||
void *value_p)
|
||||
{
|
||||
ManipulatorGroup *man = mpr->parent_mgroup->customdata;
|
||||
wmOperator *op = man->data.op;
|
||||
float *value = value_p;
|
||||
|
||||
BLI_assert(mpr_prop->type->array_length == 1);
|
||||
UNUSED_VARS_NDEBUG(mpr_prop);
|
||||
|
@ -474,10 +475,11 @@ static void manipulator_bisect_prop_depth_get(
|
|||
|
||||
static void manipulator_bisect_prop_depth_set(
|
||||
const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
|
||||
const float *value)
|
||||
const void *value_p)
|
||||
{
|
||||
ManipulatorGroup *man = mpr->parent_mgroup->customdata;
|
||||
wmOperator *op = man->data.op;
|
||||
const float *value = value_p;
|
||||
|
||||
BLI_assert(mpr_prop->type->array_length == 1);
|
||||
UNUSED_VARS_NDEBUG(mpr_prop);
|
||||
|
@ -500,7 +502,7 @@ static void manipulator_bisect_prop_depth_set(
|
|||
/* translate callbacks */
|
||||
static void manipulator_bisect_prop_translate_get(
|
||||
const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
|
||||
float *value)
|
||||
void *value_p)
|
||||
{
|
||||
ManipulatorGroup *man = mpr->parent_mgroup->customdata;
|
||||
wmOperator *op = man->data.op;
|
||||
|
@ -508,12 +510,12 @@ static void manipulator_bisect_prop_translate_get(
|
|||
BLI_assert(mpr_prop->type->array_length == 3);
|
||||
UNUSED_VARS_NDEBUG(mpr_prop);
|
||||
|
||||
RNA_property_float_get_array(op->ptr, man->data.prop_plane_co, value);
|
||||
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,
|
||||
const float *value)
|
||||
const void *value_p)
|
||||
{
|
||||
ManipulatorGroup *man = mpr->parent_mgroup->customdata;
|
||||
wmOperator *op = man->data.op;
|
||||
|
@ -521,7 +523,7 @@ static void manipulator_bisect_prop_translate_set(
|
|||
BLI_assert(mpr_prop->type->array_length == 3);
|
||||
UNUSED_VARS_NDEBUG(mpr_prop);
|
||||
|
||||
RNA_property_float_set_array(op->ptr, man->data.prop_plane_co, value);
|
||||
RNA_property_float_set_array(op->ptr, man->data.prop_plane_co, value_p);
|
||||
|
||||
manipulator_bisect_exec(man);
|
||||
}
|
||||
|
@ -529,10 +531,11 @@ static void manipulator_bisect_prop_translate_set(
|
|||
/* angle callbacks */
|
||||
static void manipulator_bisect_prop_angle_get(
|
||||
const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
|
||||
float *value)
|
||||
void *value_p)
|
||||
{
|
||||
ManipulatorGroup *man = mpr->parent_mgroup->customdata;
|
||||
wmOperator *op = man->data.op;
|
||||
float *value = value_p;
|
||||
|
||||
BLI_assert(mpr_prop->type->array_length == 1);
|
||||
UNUSED_VARS_NDEBUG(mpr_prop);
|
||||
|
@ -555,10 +558,11 @@ static void manipulator_bisect_prop_angle_get(
|
|||
|
||||
static void manipulator_bisect_prop_angle_set(
|
||||
const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
|
||||
const float *value)
|
||||
const void *value_p)
|
||||
{
|
||||
ManipulatorGroup *man = mpr->parent_mgroup->customdata;
|
||||
wmOperator *op = man->data.op;
|
||||
const float *value = value_p;
|
||||
|
||||
BLI_assert(mpr_prop->type->array_length == 1);
|
||||
UNUSED_VARS_NDEBUG(mpr_prop);
|
||||
|
|
|
@ -891,10 +891,11 @@ static void manipulator_mesh_spin_update_from_op(ManipulatorSpinGroup *man)
|
|||
/* depth callbacks */
|
||||
static void manipulator_spin_prop_depth_get(
|
||||
const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
|
||||
float *value)
|
||||
void *value_p)
|
||||
{
|
||||
ManipulatorSpinGroup *man = mpr->parent_mgroup->customdata;
|
||||
wmOperator *op = man->data.op;
|
||||
float *value = value_p;
|
||||
|
||||
BLI_assert(mpr_prop->type->array_length == 1);
|
||||
UNUSED_VARS_NDEBUG(mpr_prop);
|
||||
|
@ -908,10 +909,11 @@ static void manipulator_spin_prop_depth_get(
|
|||
|
||||
static void manipulator_spin_prop_depth_set(
|
||||
const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
|
||||
const float *value)
|
||||
const void *value_p)
|
||||
{
|
||||
ManipulatorSpinGroup *man = mpr->parent_mgroup->customdata;
|
||||
wmOperator *op = man->data.op;
|
||||
const float *value = value_p;
|
||||
|
||||
BLI_assert(mpr_prop->type->array_length == 1);
|
||||
UNUSED_VARS_NDEBUG(mpr_prop);
|
||||
|
@ -934,10 +936,11 @@ static void manipulator_spin_prop_depth_set(
|
|||
/* translate callbacks */
|
||||
static void manipulator_spin_prop_translate_get(
|
||||
const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
|
||||
float *value)
|
||||
void *value_p)
|
||||
{
|
||||
ManipulatorSpinGroup *man = mpr->parent_mgroup->customdata;
|
||||
wmOperator *op = man->data.op;
|
||||
float *value = value_p;
|
||||
|
||||
BLI_assert(mpr_prop->type->array_length == 3);
|
||||
UNUSED_VARS_NDEBUG(mpr_prop);
|
||||
|
@ -947,7 +950,7 @@ static void manipulator_spin_prop_translate_get(
|
|||
|
||||
static void manipulator_spin_prop_translate_set(
|
||||
const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
|
||||
const float *value)
|
||||
const void *value)
|
||||
{
|
||||
ManipulatorSpinGroup *man = mpr->parent_mgroup->customdata;
|
||||
wmOperator *op = man->data.op;
|
||||
|
@ -963,10 +966,11 @@ static void manipulator_spin_prop_translate_set(
|
|||
/* angle callbacks */
|
||||
static void manipulator_spin_prop_axis_angle_get(
|
||||
const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
|
||||
float *value)
|
||||
void *value_p)
|
||||
{
|
||||
ManipulatorSpinGroup *man = mpr->parent_mgroup->customdata;
|
||||
wmOperator *op = man->data.op;
|
||||
float *value = value_p;
|
||||
|
||||
BLI_assert(mpr_prop->type->array_length == 1);
|
||||
UNUSED_VARS_NDEBUG(mpr_prop);
|
||||
|
@ -989,10 +993,11 @@ static void manipulator_spin_prop_axis_angle_get(
|
|||
|
||||
static void manipulator_spin_prop_axis_angle_set(
|
||||
const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
|
||||
const float *value)
|
||||
const void *value_p)
|
||||
{
|
||||
ManipulatorSpinGroup *man = mpr->parent_mgroup->customdata;
|
||||
wmOperator *op = man->data.op;
|
||||
const float *value = value_p;
|
||||
|
||||
BLI_assert(mpr_prop->type->array_length == 1);
|
||||
UNUSED_VARS_NDEBUG(mpr_prop);
|
||||
|
@ -1023,10 +1028,12 @@ static void manipulator_spin_prop_axis_angle_set(
|
|||
/* angle callbacks */
|
||||
static void manipulator_spin_prop_angle_get(
|
||||
const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
|
||||
float *value)
|
||||
void *value_p)
|
||||
{
|
||||
ManipulatorSpinGroup *man = mpr->parent_mgroup->customdata;
|
||||
wmOperator *op = man->data.op;
|
||||
float *value = value_p;
|
||||
|
||||
BLI_assert(mpr_prop->type->array_length == 1);
|
||||
UNUSED_VARS_NDEBUG(mpr_prop);
|
||||
value[0] = RNA_property_float_get(op->ptr, man->data.prop_angle);
|
||||
|
@ -1034,12 +1041,13 @@ static void manipulator_spin_prop_angle_get(
|
|||
|
||||
static void manipulator_spin_prop_angle_set(
|
||||
const wmManipulator *mpr, wmManipulatorProperty *mpr_prop,
|
||||
const float *value)
|
||||
const void *value_p)
|
||||
{
|
||||
ManipulatorSpinGroup *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);
|
||||
|
|
|
@ -61,13 +61,16 @@ typedef void (*wmManipulatorFnSelect)(struct bContext *, struct wmManipulator
|
|||
/* wmManipulatorProperty */
|
||||
typedef void (*wmManipulatorPropertyFnGet)(
|
||||
const struct wmManipulator *, struct wmManipulatorProperty *,
|
||||
float *value);
|
||||
/* typically 'float *' */
|
||||
void *value);
|
||||
typedef void (*wmManipulatorPropertyFnSet)(
|
||||
const struct wmManipulator *, struct wmManipulatorProperty *,
|
||||
const float *value);
|
||||
/* typically 'const float *' */
|
||||
const void *value);
|
||||
typedef void (*wmManipulatorPropertyFnRangeGet)(
|
||||
const struct wmManipulator *, struct wmManipulatorProperty *,
|
||||
float range[2]);
|
||||
/* typically 'float[2]' */
|
||||
void *range);
|
||||
typedef void (*wmManipulatorPropertyFnFree)(
|
||||
const struct wmManipulator *, struct wmManipulatorProperty *);
|
||||
|
||||
|
|
Loading…
Reference in New Issue