[Bf-blender-cvs] [9407456e3f6] master: Cleanup: remove EM_IGNORE_LAYER

Campbell Barton noreply at git.blender.org
Thu Jan 31 05:35:01 CET 2019


Commit: 9407456e3f6991f5d703bd6b4e25b18b048d95a9
Author: Campbell Barton
Date:   Thu Jan 31 15:36:24 2019 +1100
Branches: master
https://developer.blender.org/rB9407456e3f6991f5d703bd6b4e25b18b048d95a9

Cleanup: remove EM_IGNORE_LAYER

Call ED_object_editmode_enter_ex instead.

===================================================================

M	source/blender/editors/include/ED_object.h
M	source/blender/editors/mesh/editmesh_add.c
M	source/blender/editors/object/object_add.c
M	source/blender/editors/object/object_edit.c

===================================================================

diff --git a/source/blender/editors/include/ED_object.h b/source/blender/editors/include/ED_object.h
index ebf28612448..b387d9b2b90 100644
--- a/source/blender/editors/include/ED_object.h
+++ b/source/blender/editors/include/ED_object.h
@@ -133,8 +133,7 @@ void ED_object_parent(struct Object *ob, struct Object *parent, const int type,
 /* bitflags for enter/exit editmode */
 enum {
 	EM_FREEDATA         = (1 << 0),
-	EM_IGNORE_LAYER     = (1 << 3),
-	EM_NO_CONTEXT       = (1 << 4),
+	EM_NO_CONTEXT       = (1 << 1),
 };
 bool ED_object_editmode_exit_ex(
         struct Main *bmain, struct Scene *scene, struct Object *obedit, int flag);
diff --git a/source/blender/editors/mesh/editmesh_add.c b/source/blender/editors/mesh/editmesh_add.c
index 56d3162562f..6b64720cb17 100644
--- a/source/blender/editors/mesh/editmesh_add.c
+++ b/source/blender/editors/mesh/editmesh_add.c
@@ -69,15 +69,15 @@ static Object *make_prim_init(
         const float loc[3], const float rot[3], ushort local_view_bits,
         MakePrimitiveData *r_creation_data)
 {
+	struct Main *bmain = CTX_data_main(C);
+	Scene *scene = CTX_data_scene(C);
 	Object *obedit = CTX_data_edit_object(C);
 
 	r_creation_data->was_editmode = false;
 	if (obedit == NULL || obedit->type != OB_MESH) {
 		obedit = ED_object_add_type(C, OB_MESH, idname, loc, rot, false, local_view_bits);
+		ED_object_editmode_enter_ex(bmain, scene, obedit, 0);
 
-		/* create editmode */
-		/* rare cases the active layer is messed up */
-		ED_object_editmode_enter(C, EM_IGNORE_LAYER);
 		r_creation_data->was_editmode = true;
 	}
 
diff --git a/source/blender/editors/object/object_add.c b/source/blender/editors/object/object_add.c
index 25391251948..fdbe324ab3d 100644
--- a/source/blender/editors/object/object_add.c
+++ b/source/blender/editors/object/object_add.c
@@ -416,8 +416,9 @@ Object *ED_object_add_type(
 		DEG_id_tag_update_ex(bmain, (ID *)ob->data, ID_RECALC_EDITORS);
 	}
 
-	if (enter_editmode)
-		ED_object_editmode_enter(C, EM_IGNORE_LAYER);
+	if (enter_editmode) {
+		ED_object_editmode_enter_ex(bmain, scene, ob, 0);
+	}
 
 	WM_event_add_notifier(C, NC_SCENE | ND_LAYER_CONTENT, scene);
 
diff --git a/source/blender/editors/object/object_edit.c b/source/blender/editors/object/object_edit.c
index f55bccdeb25..b5d88b846de 100644
--- a/source/blender/editors/object/object_edit.c
+++ b/source/blender/editors/object/object_edit.c
@@ -652,12 +652,9 @@ bool ED_object_editmode_enter(bContext *C, int flag)
 	ViewLayer *view_layer = CTX_data_view_layer(C);
 	Object *ob;
 
-	if ((flag & EM_IGNORE_LAYER) == 0) {
-		ob = CTX_data_active_object(C); /* active layer checked here for view3d */
-	}
-	else {
-		ob = view_layer->basact->object;
-	}
+	/* Active layer checked here for view3d,
+	 * callers that don't want view context can call the extended version. */
+	ob = CTX_data_active_object(C);
 	if ((ob == NULL) || ID_IS_LINKED(ob)) {
 		return false;
 	}



More information about the Bf-blender-cvs mailing list