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.c37
1 files changed, 37 insertions, 0 deletions
diff --git a/source/blender/editors/object/object_add.c b/source/blender/editors/object/object_add.c
index d3f6a42c3c1..3a12d56d9c2 100644
--- a/source/blender/editors/object/object_add.c
+++ b/source/blender/editors/object/object_add.c
@@ -36,6 +36,7 @@
#include "DNA_anim_types.h"
#include "DNA_camera_types.h"
#include "DNA_curve_types.h"
+#include "DNA_groom_types.h"
#include "DNA_group_types.h"
#include "DNA_lamp_types.h"
#include "DNA_key_types.h"
@@ -72,6 +73,7 @@
#include "BKE_displist.h"
#include "BKE_effect.h"
#include "BKE_font.h"
+#include "BKE_groom.h"
#include "BKE_group.h"
#include "BKE_lamp.h"
#include "BKE_lattice.h"
@@ -776,6 +778,41 @@ void OBJECT_OT_metaball_add(wmOperatorType *ot)
ED_object_add_generic_props(ot, true);
}
+/********************* Add Groom Operator ********************/
+
+static int object_groom_add_exec(bContext *C, wmOperator *op)
+{
+ bool enter_editmode;
+ unsigned int layer;
+ float loc[3], rot[3];
+ if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, &layer, NULL))
+ return OPERATOR_CANCELLED;
+
+ Object *ob = ED_object_add_type(C, OB_GROOM, NULL, loc, rot, false, layer);
+
+ Groom *groom = ob->data;
+ UNUSED_VARS(groom);
+
+ return OPERATOR_FINISHED;
+}
+
+void OBJECT_OT_groom_add(wmOperatorType *ot)
+{
+ /* identifiers */
+ ot->name = "Add Groom";
+ ot->description = "Add a groom object to the scene";
+ ot->idname = "OBJECT_OT_groom_add";
+
+ /* api callbacks */
+ ot->exec = object_groom_add_exec;
+ ot->poll = ED_operator_objectmode;
+
+ /* flags */
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
+
+ ED_object_add_generic_props(ot, true);
+}
+
/********************* Add Text Operator ********************/
static int object_add_text_exec(bContext *C, wmOperator *op)