Commit: 93989296b56c3f5dcc6b0d653265c4ff05173e3a Author: Campbell Barton Date: Tue Apr 10 20:20:21 2018 +0200 Branches: temp-object-multi-mode https://developer.blender.org/rB93989296b56c3f5dcc6b0d653265c4ff05173e3a
Merge branch '28' into temp-object-multi-mode =================================================================== =================================================================== diff --cc source/blender/editors/include/ED_object.h index 19189191b3b,83119062203..bfc3325d7eb --- a/source/blender/editors/include/ED_object.h +++ b/source/blender/editors/include/ED_object.h @@@ -119,12 -119,12 +119,13 @@@ struct Base *ED_object_add_duplicate(st void ED_object_parent(struct Object *ob, struct Object *parent, const int type, const char *substr); /* bitflags for enter/exit editmode */ - #define EM_FREEDATA 1 - #define EM_FREEUNDO 2 - #define EM_WAITCURSOR 4 - #define EM_DO_UNDO 8 - #define EM_IGNORE_LAYER 16 - #define EM_NO_CONTEXT 32 + enum { + EM_FREEDATA = (1 << 0), + EM_WAITCURSOR = (1 << 1), + EM_DO_UNDO = (1 << 2), + EM_IGNORE_LAYER = (1 << 3), ++ EM_NO_CONTEXT = (1 << 4), + }; void ED_object_editmode_exit_ex( struct bContext *C, struct Scene *scene, struct Object *obedit, int flag); void ED_object_editmode_exit(struct bContext *C, int flag); diff --cc source/blender/editors/object/object_edit.c index 19e9eb1d6f4,bfe0194fe42..ae821db3b7c --- a/source/blender/editors/object/object_edit.c +++ b/source/blender/editors/object/object_edit.c @@@ -466,23 -463,10 +466,23 @@@ static int editmode_toggle_exec(bContex } } - if (!is_mode_set) + if (!is_mode_set) { ED_object_editmode_enter(C, EM_WAITCURSOR); - else + if (obact->mode & mode_flag) { + FOREACH_SELECTED_OBJECT_BEGIN(view_layer, ob) + { + if (ob != obact) { + if (ob->flag & SELECT) { + ED_object_editmode_enter_ex(scene, ob, EM_WAITCURSOR | EM_NO_CONTEXT); + } + } + } + FOREACH_SELECTED_OBJECT_END; + } + } + else { - ED_object_editmode_exit(C, EM_FREEDATA | EM_FREEUNDO | EM_WAITCURSOR); /* had EM_DO_UNDO but op flag calls undo too [#24685] */ + ED_object_editmode_exit(C, EM_FREEDATA | EM_WAITCURSOR); /* had EM_DO_UNDO but op flag calls undo too [#24685] */ + } ED_space_image_uv_sculpt_update(CTX_wm_manager(C), scene); _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs