Commit: 2fa175eb8a92542b64499aa9de8e169ed5d3dd85
Author: Dalai Felinto
Date:   Fri Dec 23 19:25:29 2016 +0100
Branches: render-layers
https://developer.blender.org/rB2fa175eb8a92542b64499aa9de8e169ed5d3dd85

Revert "Make sure new objects go to the correct (active) collection"

This reverts commit c51a32554e02a9d27d5e6491e2589f4406f17ad1.

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

M       source/blender/blenkernel/BKE_layer.h
M       source/blender/blenkernel/BKE_object.h
M       source/blender/blenkernel/intern/layer.c
M       source/blender/blenkernel/intern/object.c
M       source/blender/editors/curve/editfont.c
M       source/blender/editors/object/object_add.c
M       source/blender/editors/object/object_constraint.c
M       source/blender/editors/object/object_hook.c
M       source/blender/editors/object/object_modifier.c
M       source/blender/editors/object/object_relations.c
M       
source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp

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

diff --git a/source/blender/blenkernel/BKE_layer.h 
b/source/blender/blenkernel/BKE_layer.h
index 699affd..ecf883c 100644
--- a/source/blender/blenkernel/BKE_layer.h
+++ b/source/blender/blenkernel/BKE_layer.h
@@ -59,8 +59,6 @@ void BKE_scene_layer_engine_set(struct SceneLayer *sl, const 
char *engine);
 void BKE_scene_layer_selected_objects_tag(struct SceneLayer *sl, const int 
tag);
 
 struct ObjectBase *BKE_scene_layer_base_find(struct SceneLayer *sl, struct 
Object *ob);
-void BKE_scene_layer_base_deselect_all(struct SceneLayer *sl);
-void BKE_scene_layer_base_select(struct SceneLayer *sl, struct ObjectBase 
*selbase);
 
 void BKE_layer_collection_free(struct SceneLayer *sl, struct LayerCollection 
*lc);
 
diff --git a/source/blender/blenkernel/BKE_object.h 
b/source/blender/blenkernel/BKE_object.h
index 5b680a4..29e8433 100644
--- a/source/blender/blenkernel/BKE_object.h
+++ b/source/blender/blenkernel/BKE_object.h
@@ -86,9 +86,9 @@ struct Object *BKE_object_add_only_object(
         int type, const char *name)
         ATTR_NONNULL(1) ATTR_RETURNS_NONNULL;
 struct Object *BKE_object_add(
-        struct Main *bmain, struct Scene *scene, struct SceneLayer *sl,
+        struct Main *bmain, struct Scene *scene,
         int type, const char *name)
-        ATTR_NONNULL(1, 2, 3) ATTR_RETURNS_NONNULL;
+        ATTR_NONNULL(1, 2) ATTR_RETURNS_NONNULL;
 void *BKE_object_obdata_add_from_type(
         struct Main *bmain,
         int type, const char *name)
diff --git a/source/blender/blenkernel/intern/layer.c 
b/source/blender/blenkernel/intern/layer.c
index 6ef5951..42a1e20 100644
--- a/source/blender/blenkernel/intern/layer.c
+++ b/source/blender/blenkernel/intern/layer.c
@@ -141,21 +141,6 @@ ObjectBase *BKE_scene_layer_base_find(SceneLayer *sl, 
Object *ob)
        return BLI_findptr(&sl->object_bases, ob, offsetof(ObjectBase, object));
 }
 
-void BKE_scene_layer_base_deselect_all(SceneLayer *sl)
-{
-       ObjectBase *ob_base;
-
-       for (ob_base = sl->object_bases.first; ob_base; ob_base = 
ob_base->next) {
-               ob_base->flag &= ~BASE_SELECTED;
-       }
-}
-
-void BKE_scene_layer_base_select(struct SceneLayer *sl, ObjectBase *selbase)
-{
-       selbase->flag |= BASE_SELECTED;
-       sl->basact = selbase;
-}
-
 static void scene_layer_object_base_unref(SceneLayer* sl, ObjectBase *base)
 {
        base->refcount--;
diff --git a/source/blender/blenkernel/intern/object.c 
b/source/blender/blenkernel/intern/object.c
index ef1a4f2..432adfa 100644
--- a/source/blender/blenkernel/intern/object.c
+++ b/source/blender/blenkernel/intern/object.c
@@ -93,7 +93,6 @@
 #include "BKE_icons.h"
 #include "BKE_key.h"
 #include "BKE_lamp.h"
-#include "BKE_layer.h"
 #include "BKE_lattice.h"
 #include "BKE_library.h"
 #include "BKE_library_query.h"
@@ -628,25 +627,23 @@ Object *BKE_object_add_only_object(Main *bmain, int type, 
const char *name)
 /* general add: to scene, with layer from area and default name */
 /* creates minimum required data, but without vertices etc. */
 Object *BKE_object_add(
-        Main *bmain, Scene *scene, SceneLayer *sl,
+        Main *bmain, Scene *scene,
         int type, const char *name)
 {
        Object *ob;
-       ObjectBase *ob_base;
-       LayerCollection *lc;
+       Base *base;
 
        ob = BKE_object_add_only_object(bmain, type, name);
 
        ob->data = BKE_object_obdata_add_from_type(bmain, type, name);
 
-       lc = BKE_layer_collection_active(sl);
-       BKE_collection_object_add(scene, lc->scene_collection, ob);
-
-       ob_base = BKE_scene_layer_base_find(sl, ob);
-       BKE_scene_layer_base_deselect_all(sl);
-       BKE_scene_layer_base_select(sl, ob_base);
-
+       ob->lay = scene->lay;
+       
+       base = BKE_scene_base_add(scene, ob);
+       BKE_scene_base_deselect_all(scene);
+       BKE_scene_base_select(scene, base);
        DAG_id_tag_update_ex(bmain, &ob->id, OB_RECALC_OB | OB_RECALC_DATA | 
OB_RECALC_TIME);
+
        return ob;
 }
 
diff --git a/source/blender/editors/curve/editfont.c 
b/source/blender/editors/curve/editfont.c
index ef7f368..57e7318 100644
--- a/source/blender/editors/curve/editfont.c
+++ b/source/blender/editors/curve/editfont.c
@@ -420,7 +420,6 @@ static void txt_add_object(bContext *C, TextLine 
*firstline, int totline, const
 {
        Main *bmain = CTX_data_main(C);
        Scene *scene = CTX_data_scene(C);
-       SceneLayer *sl = CTX_data_scene_layer(C);
        Curve *cu;
        Object *obedit;
        Base *base;
@@ -430,7 +429,7 @@ static void txt_add_object(bContext *C, TextLine 
*firstline, int totline, const
        int a;
        float rot[3] = {0.f, 0.f, 0.f};
        
-       obedit = BKE_object_add(bmain, scene, sl, OB_FONT, NULL);
+       obedit = BKE_object_add(bmain, scene, OB_FONT, NULL);
        base = scene->basact;
 
        /* seems to assume view align ? TODO - look into this, could be an 
operator option */
diff --git a/source/blender/editors/object/object_add.c 
b/source/blender/editors/object/object_add.c
index d82ec59..baea008 100644
--- a/source/blender/editors/object/object_add.c
+++ b/source/blender/editors/object/object_add.c
@@ -408,7 +408,6 @@ Object *ED_object_add_type(
 {
        Main *bmain = CTX_data_main(C);
        Scene *scene = CTX_data_scene(C);
-       SceneLayer *sl = CTX_data_scene_layer(C);
        Object *ob;
 
        /* for as long scene has editmode... */
@@ -416,7 +415,7 @@ Object *ED_object_add_type(
                ED_object_editmode_exit(C, EM_FREEDATA | EM_FREEUNDO | 
EM_WAITCURSOR | EM_DO_UNDO);  /* freedata, and undo */
 
        /* deselects all, sets scene->basact */
-       ob = BKE_object_add(bmain, scene, sl, type, name);
+       ob = BKE_object_add(bmain, scene, type, name);
        BASACT->lay = ob->lay = layer;
        /* editor level activate, notifiers */
        ED_base_object_activate(C, BASACT);
diff --git a/source/blender/editors/object/object_constraint.c 
b/source/blender/editors/object/object_constraint.c
index 5045c5b..59d78f1 100644
--- a/source/blender/editors/object/object_constraint.c
+++ b/source/blender/editors/object/object_constraint.c
@@ -1682,12 +1682,11 @@ static bool get_new_constraint_target(bContext *C, int 
con_type, Object **tar_ob
        if ((found == false) && (add)) {
                Main *bmain = CTX_data_main(C);
                Scene *scene = CTX_data_scene(C);
-               SceneLayer *sl = CTX_data_scene_layer(C);
                Base *base = BASACT, *newbase = NULL;
                Object *obt;
                
                /* add new target object */
-               obt = BKE_object_add(bmain, scene, sl, OB_EMPTY, NULL);
+               obt = BKE_object_add(bmain, scene, OB_EMPTY, NULL);
                
                /* set layers OK */
                newbase = BASACT;
diff --git a/source/blender/editors/object/object_hook.c 
b/source/blender/editors/object/object_hook.c
index 760a7c2..438c10c 100644
--- a/source/blender/editors/object/object_hook.c
+++ b/source/blender/editors/object/object_hook.c
@@ -445,12 +445,12 @@ static int hook_op_edit_poll(bContext *C)
        return 0;
 }
 
-static Object *add_hook_object_new(Main *bmain, Scene *scene, SceneLayer *sl, 
Object *obedit)
+static Object *add_hook_object_new(Main *bmain, Scene *scene, Object *obedit)
 {
        Base *base, *basedit;
        Object *ob;
 
-       ob = BKE_object_add(bmain, scene, sl, OB_EMPTY, NULL);
+       ob = BKE_object_add(bmain, scene, OB_EMPTY, NULL);
        
        basedit = BKE_scene_base_find(scene, obedit);
        base = scene->basact;
@@ -464,7 +464,7 @@ static Object *add_hook_object_new(Main *bmain, Scene 
*scene, SceneLayer *sl, Ob
        return ob;
 }
 
-static int add_hook_object(Main *bmain, Scene *scene, SceneLayer *sl, Object 
*obedit, Object *ob, int mode, ReportList *reports)
+static int add_hook_object(Main *bmain, Scene *scene, Object *obedit, Object 
*ob, int mode, ReportList *reports)
 {
        ModifierData *md = NULL;
        HookModifierData *hmd = NULL;
@@ -482,7 +482,7 @@ static int add_hook_object(Main *bmain, Scene *scene, 
SceneLayer *sl, Object *ob
 
        if (mode == OBJECT_ADDHOOK_NEWOB && !ob) {
                
-               ob = add_hook_object_new(bmain, scene, sl, obedit);
+               ob = add_hook_object_new(bmain, scene, obedit);
                
                /* transform cent to global coords for loc */
                mul_v3_m4v3(ob->loc, obedit->obmat, cent);
@@ -556,7 +556,6 @@ static int object_add_hook_selob_exec(bContext *C, 
wmOperator *op)
 {
        Main *bmain = CTX_data_main(C);
        Scene *scene = CTX_data_scene(C);
-       SceneLayer *sl = CTX_data_scene_layer(C);
        Object *obedit = CTX_data_edit_object(C);
        Object *obsel = NULL;
        const bool use_bone = RNA_boolean_get(op->ptr, "use_bone");
@@ -581,7 +580,7 @@ static int object_add_hook_selob_exec(bContext *C, 
wmOperator *op)
                return OPERATOR_CANCELLED;
        }
        
-       if (add_hook_object(bmain, scene, sl, obedit, obsel, mode, 
op->reports)) {
+       if (add_hook_object(bmain, scene, obedit, obsel, mode, op->reports)) {
                WM_event_add_notifier(C, NC_OBJECT | ND_MODIFIER, obedit);
                return OPERATOR_FINISHED;
        }
@@ -612,10 +611,9 @@ static int object_add_hook_newob_exec(bContext *C, 
wmOperator *op)
 {
        Main *bmain = CTX_data_main(C);
        Scene *scene = CTX_data_scene(C);
-       SceneLayer *sl = CTX_data_scene_layer(C);
        Object *obedit = CTX_data_edit_object(C);
 
-       if (add_hook_object(bmain, scene, sl, obedit, NULL, 
OBJECT_ADDHOOK_NEWOB, op->reports)) {
+       if (add_hook_object(bmain, scene, obedit, NULL, OBJECT_ADDHOOK_NEWOB, 
op->reports)) {
                WM_event_add_notifier(C, NC_SCENE | ND_OB_SELECT, scene);
                WM_event_add_notifier(C, NC_OBJECT | ND_MODIFIER, obedit);
                return OPERATOR_FINISHED;
diff --git a/source/blender/editors/object/object_modifier.c 
b/source/blender/editors/object/object_modifier.c
index c7fce06..9175bd6 100644
--- a/source/blender/editors/object/object_modifier.c
+++ b/source/blender/editors/object/object_modifier.c
@@ -1490,7 +1490,7 @@ static void skin_armature_bone_create(Object *skin_ob,
        }
 }
 
-static Object *modifier_skin_armature_create(Main *bmain, Scene *scene, 
SceneLayer *sl, Object *skin_ob)
+static Object *modifier_skin_armature_create(Main *bmain, Scene *scene, Object 
*skin_ob)
 {
        BLI_bitmap *edges_visited;
        DerivedMesh *deform_dm;
@@ -1513,7 +1513,7 @@ static Object *modifier_skin_armature_create(Main *bmain, 
Scene *scene, SceneLay
                             NULL,
                             me->totvert);
        
-       arm_ob = BKE_object_add(bmain, scene, sl, OB_ARMATURE, NULL);
+       arm_ob = BKE_object_add(bmain, scene, OB_ARMATURE, NULL);
        BKE_object_transform_copy(arm_ob, skin_ob);
        arm = arm_ob->data;
        arm->layer = 1;
@@ -1572,7 +1572,6 @@ static int skin_armature_create_exec(bContext *C, 
wmOperator *op)
 {
        Main *bmain = CTX_data_main(C);
        Scene *scene = CTX_data_scene(C);
-       SceneLayer *sl = CTX_data_

@@ Diff output truncated at 10240 characters. @@

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to