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:
Diffstat (limited to 'source/blender/editors/object/object_add.c')
-rw-r--r--source/blender/editors/object/object_add.c47
1 files changed, 43 insertions, 4 deletions
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;