Revision: 18268
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18268
Author:   ton
Date:     2009-01-02 20:10:35 +0100 (Fri, 02 Jan 2009)

Log Message:
-----------
2.5

>From the anti-globalization department: 
G.obedit terminated!

Wherever possible, use CTX_data_edit_object(C) to get this
now. It's stored in scene now, and the screen context has
it defined.

Modified Paths:
--------------
    branches/blender2.5/blender/source/blender/blenkernel/BKE_DerivedMesh.h
    branches/blender2.5/blender/source/blender/blenkernel/BKE_displist.h
    branches/blender2.5/blender/source/blender/blenkernel/BKE_font.h
    branches/blender2.5/blender/source/blender/blenkernel/BKE_global.h
    branches/blender2.5/blender/source/blender/blenkernel/intern/DerivedMesh.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/anim.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/armature.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/blender.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/curve.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/depsgraph.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/displist.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/exotic.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/font.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/lattice.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/material.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/mball.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/modifier.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/multires.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/object.c
    
branches/blender2.5/blender/source/blender/blenkernel/intern/particle_system.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/shrinkwrap.c
    branches/blender2.5/blender/source/blender/blenlib/BLI_editVert.h
    branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c
    branches/blender2.5/blender/source/blender/blenloader/intern/readfile.h
    branches/blender2.5/blender/source/blender/editors/mesh/editmesh.c
    branches/blender2.5/blender/source/blender/editors/mesh/editmesh_add.c
    branches/blender2.5/blender/source/blender/editors/mesh/editmesh_lib.c
    branches/blender2.5/blender/source/blender/editors/mesh/editmesh_loop.c
    branches/blender2.5/blender/source/blender/editors/mesh/editmesh_mods.c
    branches/blender2.5/blender/source/blender/editors/mesh/editmesh_tools.c
    branches/blender2.5/blender/source/blender/editors/mesh/mesh_intern.h
    branches/blender2.5/blender/source/blender/editors/mesh/meshtools.c
    branches/blender2.5/blender/source/blender/editors/object/object_edit.c
    branches/blender2.5/blender/source/blender/editors/space_outliner/outliner.c
    
branches/blender2.5/blender/source/blender/editors/space_view3d/drawarmature.c
    branches/blender2.5/blender/source/blender/editors/space_view3d/drawmesh.c
    branches/blender2.5/blender/source/blender/editors/space_view3d/drawobject.c
    
branches/blender2.5/blender/source/blender/editors/space_view3d/space_view3d.c
    
branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_draw.c
    
branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_edit.c
    
branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_header.c
    
branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_select.c
    
branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_view.c
    branches/blender2.5/blender/source/blender/editors/transform/transform.c
    
branches/blender2.5/blender/source/blender/editors/transform/transform_constraints.c
    
branches/blender2.5/blender/source/blender/editors/transform/transform_conversions.c
    
branches/blender2.5/blender/source/blender/editors/transform/transform_generics.c
    
branches/blender2.5/blender/source/blender/editors/transform/transform_manipulator.c
    
branches/blender2.5/blender/source/blender/editors/transform/transform_orientations.c
    
branches/blender2.5/blender/source/blender/editors/transform/transform_snap.c
    branches/blender2.5/blender/source/blender/editors/util/editmode_undo.c
    branches/blender2.5/blender/source/blender/editors/util/undo.c
    branches/blender2.5/blender/source/blender/makesdna/DNA_armature_types.h
    branches/blender2.5/blender/source/blender/makesdna/DNA_curve_types.h
    branches/blender2.5/blender/source/blender/makesdna/DNA_customdata_types.h
    branches/blender2.5/blender/source/blender/makesdna/DNA_lattice_types.h
    branches/blender2.5/blender/source/blender/makesdna/DNA_meta_types.h
    
branches/blender2.5/blender/source/blender/radiosity/intern/source/radpreprocess.c
    
branches/blender2.5/blender/source/blender/render/intern/source/convertblender.c
    branches/blender2.5/blender/source/blender/windowmanager/intern/wm_files.c

Modified: 
branches/blender2.5/blender/source/blender/blenkernel/BKE_DerivedMesh.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_DerivedMesh.h     
2009-01-02 17:43:56 UTC (rev 18267)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_DerivedMesh.h     
2009-01-02 19:10:35 UTC (rev 18268)
@@ -443,14 +443,15 @@
                                                   float (*vertCos)[3],
                                                   CustomDataMask dataMask);
 
-DerivedMesh *editmesh_get_derived_base(struct EditMesh *em);
-DerivedMesh *editmesh_get_derived_cage(struct EditMesh *em, CustomDataMask 
dataMask);
-DerivedMesh *editmesh_get_derived_cage_and_final(struct EditMesh *em, 
DerivedMesh **final_r,
+DerivedMesh *editmesh_get_derived_base(struct Object *, struct EditMesh *em);
+DerivedMesh *editmesh_get_derived_cage(struct Object *, struct EditMesh *em, 
CustomDataMask dataMask);
+DerivedMesh *editmesh_get_derived_cage_and_final(struct Object *, struct 
EditMesh *em, DerivedMesh **final_r,
                                                  CustomDataMask dataMask);
+void makeDerivedMesh(struct Object *ob, struct EditMesh *em, CustomDataMask 
dataMask);
 
 /* returns an array of deform matrices for crazyspace correction, and the
    number of modifiers left */
-int editmesh_get_first_deform_matrices(struct EditMesh *em, float 
(**deformmats)[3][3],
+int editmesh_get_first_deform_matrices(struct Object *, struct EditMesh *em, 
float (**deformmats)[3][3],
                                        float (**deformcos)[3]);
 
 void weight_to_rgb(float input, float *fr, float *fg, float *fb);

Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_displist.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_displist.h        
2009-01-02 17:43:56 UTC (rev 18267)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_displist.h        
2009-01-02 19:10:35 UTC (rev 18268)
@@ -85,7 +85,7 @@
 extern void count_displist(struct ListBase *lb, int *totvert, int *totface);
 extern void freedisplist(struct ListBase *lb);
 extern int displist_has_faces(struct ListBase *lb);
-extern void makeDerivedMesh(struct Object *ob, struct EditMesh *em, 
CustomDataMask dataMask);
+
 extern void makeDispListSurf(struct Object *ob, struct ListBase *dispbase, int 
forRender);
 extern void makeDispListCurveTypes(struct Object *ob, int forOrco);
 extern void makeDispListMBall(struct Object *ob);

Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_font.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_font.h    
2009-01-02 17:43:56 UTC (rev 18267)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_font.h    
2009-01-02 19:10:35 UTC (rev 18268)
@@ -67,7 +67,7 @@
 int style_to_sel(int style, int toggle);
 int mat_to_sel(void);
 
-int getselection(int *start, int *end);
+int getselection(struct Object *ob, int *start, int *end);
 
 void chtoutf8(unsigned long c, char *o);
 void wcs2utf8s(char *dst, wchar_t *src);

Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_global.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_global.h  
2009-01-02 17:43:56 UTC (rev 18267)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_global.h  
2009-01-02 19:10:35 UTC (rev 18268)
@@ -68,7 +68,6 @@
        struct Main *main;
        struct Scene *scene;                    /* denk aan file.c */
        struct bScreen *curscreen;
-       struct Object *obedit;
        char editModeTitleExtra[64];
        
        /* fonts, allocated global data */

Modified: 
branches/blender2.5/blender/source/blender/blenkernel/intern/DerivedMesh.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/intern/DerivedMesh.c  
2009-01-02 17:43:56 UTC (rev 18267)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/DerivedMesh.c  
2009-01-02 19:10:35 UTC (rev 18268)
@@ -2396,11 +2396,10 @@
        return 1;
 }
 
-static void editmesh_calc_modifiers(EditMesh *em, DerivedMesh **cage_r,
+static void editmesh_calc_modifiers(Object *ob, EditMesh *em, DerivedMesh 
**cage_r,
                                     DerivedMesh **final_r,
                                     CustomDataMask dataMask)
 {
-       Object *ob = G.obedit;
        ModifierData *md;
        float (*deformedVerts)[3] = NULL;
        CustomDataMask mask;
@@ -2694,58 +2693,59 @@
 {
        Mesh *me = ob->data;
        float min[3], max[3];
-
+       int needMapping= 0; //
+       
        clear_mesh_caches(ob);
 
-       if(ob!=G.obedit) {
-               Object *obact = G.scene->basact?G.scene->basact->object:NULL;
-               int editing = (FACESEL_PAINT_TEST)|(G.f & G_PARTICLEEDIT);
-               int needMapping = editing && (ob==obact);
+// XXX         Object *obact = scene->basact?scene->basact->object:NULL;
+//             int editing = (FACESEL_PAINT_TEST)|(G.f & G_PARTICLEEDIT);
+//             int needMapping = editing && (ob==obact);
+//             if( (G.f & G_WEIGHTPAINT) && ob==obact ) {
+       if(dataMask & CD_MASK_WEIGHTPAINT) {
+               MCol *wpcol = (MCol*)calc_weightpaint_colors(ob);
+               int layernum = CustomData_number_of_layers(&me->fdata, CD_MCOL);
+               int prevactive = CustomData_get_active_layer(&me->fdata, 
CD_MCOL);
+               int prevrender = CustomData_get_render_layer(&me->fdata, 
CD_MCOL);
 
-               if( (G.f & G_WEIGHTPAINT) && ob==obact ) {
-                       MCol *wpcol = (MCol*)calc_weightpaint_colors(ob);
-                       int layernum = CustomData_number_of_layers(&me->fdata, 
CD_MCOL);
-                       int prevactive = 
CustomData_get_active_layer(&me->fdata, CD_MCOL);
-                       int prevrender = 
CustomData_get_render_layer(&me->fdata, CD_MCOL);
+               /* ugly hack here, we temporarily add a new active mcol layer 
with
+                  weightpaint colors in it, that is then duplicated in 
CDDM_from_mesh */
+               CustomData_add_layer(&me->fdata, CD_MCOL, CD_ASSIGN, wpcol, 
me->totface);
+               CustomData_set_layer_active(&me->fdata, CD_MCOL, layernum);
+               CustomData_set_layer_render(&me->fdata, CD_MCOL, layernum);
 
-                       /* ugly hack here, we temporarily add a new active mcol 
layer with
-                          weightpaint colors in it, that is then duplicated in 
CDDM_from_mesh */
-                       CustomData_add_layer(&me->fdata, CD_MCOL, CD_ASSIGN, 
wpcol, me->totface);
-                       CustomData_set_layer_active(&me->fdata, CD_MCOL, 
layernum);
-                       CustomData_set_layer_render(&me->fdata, CD_MCOL, 
layernum);
+               mesh_calc_modifiers(ob, NULL, &ob->derivedDeform,
+                                                       &ob->derivedFinal, 0, 1,
+                                                       needMapping, dataMask, 
-1);
 
-                       mesh_calc_modifiers(ob, NULL, &ob->derivedDeform,
-                                           &ob->derivedFinal, 0, 1,
-                                           needMapping, dataMask, -1);
+               CustomData_free_layer_active(&me->fdata, CD_MCOL, me->totface);
+               CustomData_set_layer_active(&me->fdata, CD_MCOL, prevactive);
+               CustomData_set_layer_render(&me->fdata, CD_MCOL, prevrender);
+       } 
+       else {
+               mesh_calc_modifiers(ob, NULL, &ob->derivedDeform,
+                                                       &ob->derivedFinal, 
G.rendering, 1,
+                                                       needMapping, dataMask, 
-1);
+       }
 
-                       CustomData_free_layer_active(&me->fdata, CD_MCOL, 
me->totface);
-                       CustomData_set_layer_active(&me->fdata, CD_MCOL, 
prevactive);
-                       CustomData_set_layer_render(&me->fdata, CD_MCOL, 
prevrender);
-               } else {
-                       mesh_calc_modifiers(ob, NULL, &ob->derivedDeform,
-                                           &ob->derivedFinal, G.rendering, 1,
-                                           needMapping, dataMask, -1);
-               }
+       INIT_MINMAX(min, max);
 
-               INIT_MINMAX(min, max);
+       ob->derivedFinal->getMinMax(ob->derivedFinal, min, max);
 
-               ob->derivedFinal->getMinMax(ob->derivedFinal, min, max);
+       if(!ob->bb)
+               ob->bb= MEM_callocN(sizeof(BoundBox), "bb");
+       boundbox_set_from_min_max(ob->bb, min, max);
 
-               if(!ob->bb)
-                       ob->bb= MEM_callocN(sizeof(BoundBox), "bb");
-               boundbox_set_from_min_max(ob->bb, min, max);
+       ob->derivedFinal->needsFree = 0;
+       ob->derivedDeform->needsFree = 0;
+       ob->lastDataMask = dataMask;
 
-               ob->derivedFinal->needsFree = 0;
-               ob->derivedDeform->needsFree = 0;
-               ob->lastDataMask = dataMask;
-       }
 }
 
-static void editmesh_build_data(EditMesh *em, CustomDataMask dataMask)
+static void editmesh_build_data(Object *obedit, EditMesh *em, CustomDataMask 
dataMask)
 {
        float min[3], max[3];
 
-       clear_mesh_caches(G.obedit);
+       clear_mesh_caches(obedit);
 
        if (em->derivedFinal) {
                if (em->derivedFinal!=em->derivedCage) {
@@ -2760,16 +2760,16 @@
                em->derivedCage = NULL;
        }
 
-       editmesh_calc_modifiers(em, &em->derivedCage, &em->derivedFinal, 
dataMask);
+       editmesh_calc_modifiers(obedit, em, &em->derivedCage, 
&em->derivedFinal, dataMask);
        em->lastDataMask = dataMask;
 
        INIT_MINMAX(min, max);
 
        em->derivedFinal->getMinMax(em->derivedFinal, min, max);
 
-       if(!G.obedit->bb)
-               G.obedit->bb= MEM_callocN(sizeof(BoundBox), "bb");
-       boundbox_set_from_min_max(G.obedit->bb, min, max);
+       if(!obedit->bb)
+               obedit->bb= MEM_callocN(sizeof(BoundBox), "bb");
+       boundbox_set_from_min_max(obedit->bb, min, max);
 
        em->derivedFinal->needsFree = 0;
        em->derivedCage->needsFree = 0;
@@ -2778,7 +2778,7 @@
 void makeDerivedMesh(Object *ob, EditMesh *em, CustomDataMask dataMask)
 {
        if (em) {
-               editmesh_build_data(em, dataMask);
+               editmesh_build_data(ob, em, dataMask);
        } else {
                mesh_build_data(ob, dataMask);
        }
@@ -2950,7 +2950,7 @@
 
 /***/
 
-DerivedMesh *editmesh_get_derived_cage_and_final(EditMesh *em, DerivedMesh 
**final_r,
+DerivedMesh *editmesh_get_derived_cage_and_final(Object *obedit, EditMesh *em, 
DerivedMesh **final_r,
                                                  CustomDataMask dataMask)
 {
        /* if there's no derived mesh or the last data mask used doesn't include
@@ -2958,27 +2958,27 @@
         */
        if(!em->derivedCage ||
           (em->lastDataMask & dataMask) != dataMask)
-               editmesh_build_data(em, dataMask);
+               editmesh_build_data(obedit, em, dataMask);
 
        *final_r = em->derivedFinal;
        return em->derivedCage;
 }
 
-DerivedMesh *editmesh_get_derived_cage(EditMesh *em, CustomDataMask dataMask)
+DerivedMesh *editmesh_get_derived_cage(Object *obedit, EditMesh *em, 
CustomDataMask dataMask)
 {
        /* if there's no derived mesh or the last data mask used doesn't include
         * the data we need, rebuild the derived mesh
         */
        if(!em->derivedCage ||
           (em->lastDataMask & dataMask) != dataMask)
-               editmesh_build_data(em, dataMask);
+               editmesh_build_data(obedit, em, dataMask);
 
        return em->derivedCage;
 }
 
-DerivedMesh *editmesh_get_derived_base(EditMesh *em)

@@ Diff output truncated at 10240 characters. @@

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

Reply via email to