From 8f34bf5ebbbf1b25833be8c395d7c26a0a9fe3db Mon Sep 17 00:00:00 2001 From: Matias Herrero Date: Thu, 6 Aug 2020 13:54:04 +0200 Subject: UI: Name force fields using the type of force by default When adding multiple force fields of different types they are all called "Field", making it difficult to tell them apart. Lights were already named based on their type. This follows the light code. New names: - Force - Vortex - Magnet - Wind - Guide - TextureField - Harmonic - Charge - Lennard-Jones - Boid - Turbulence - Drag - Fluid - Field Reviewed by: Julian Eisel Differential Revision: https://developer.blender.org/D8420 --- source/blender/editors/object/object_add.c | 47 +++++++++++++++++++++++++++--- 1 file changed, 43 insertions(+), 4 deletions(-) (limited to 'source/blender/editors/object/object_add.c') diff --git a/source/blender/editors/object/object_add.c b/source/blender/editors/object/object_add.c index 4270f1cbc72..78839a0dca5 100644 --- a/source/blender/editors/object/object_add.c +++ b/source/blender/editors/object/object_add.c @@ -692,6 +692,46 @@ void OBJECT_OT_lightprobe_add(wmOperatorType *ot) * \{ */ /* for object add operator */ + +static const char *get_effector_defname(ePFieldType type) +{ + switch (type) { + case PFIELD_FORCE: + return CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "Force"); + case PFIELD_VORTEX: + return CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "Vortex"); + case PFIELD_MAGNET: + return CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "Magnet"); + case PFIELD_WIND: + return CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "Wind"); + case PFIELD_GUIDE: + return CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "CurveGuide"); + case PFIELD_TEXTURE: + return CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "TextureField"); + case PFIELD_HARMONIC: + return CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "Harmonic"); + case PFIELD_CHARGE: + return CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "Charge"); + case PFIELD_LENNARDJ: + return CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "Lennard-Jones"); + case PFIELD_BOID: + return CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "Boid"); + case PFIELD_TURBULENCE: + return CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "Turbulence"); + case PFIELD_DRAG: + return CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "Drag"); + case PFIELD_FLUIDFLOW : + return CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "FluidField"); + case PFIELD_NULL: + return CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "Field"); + case NUM_PFIELD_TYPES: + break; + } + + BLI_assert(false); + return CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "Field"); +} + static int effector_add_exec(bContext *C, wmOperator *op) { Object *ob; @@ -712,8 +752,8 @@ static int effector_add_exec(bContext *C, wmOperator *op) if (type == PFIELD_GUIDE) { Curve *cu; - const char *name = CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "CurveGuide"); - ob = ED_object_add_type(C, OB_CURVE, name, loc, rot, false, local_view_bits); + ob = ED_object_add_type( + C, OB_CURVE, get_effector_defname(type), loc, rot, false, local_view_bits); cu = ob->data; cu->flag |= CU_PATH | CU_3D; @@ -726,8 +766,7 @@ static int effector_add_exec(bContext *C, wmOperator *op) } } else { - const char *name = CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "Field"); - ob = ED_object_add_type(C, OB_EMPTY, name, loc, rot, false, local_view_bits); + ob = ED_object_add_type(C, OB_EMPTY, get_effector_defname(type), loc, rot, false, local_view_bits); BKE_object_obdata_size_init(ob, dia); if (ELEM(type, PFIELD_WIND, PFIELD_VORTEX)) { ob->empty_drawtype = OB_SINGLE_ARROW; -- cgit v1.2.3