Merged changes in the trunk up to revision 42902.
authorTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>
Tue, 27 Dec 2011 22:12:46 +0000 (22:12 +0000)
committerTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>
Tue, 27 Dec 2011 22:12:46 +0000 (22:12 +0000)
Conflicts resolved:
source/blender/editors/space_view3d/drawobject.c
source/blender/makesdna/DNA_mesh_types.h
source/blender/python/intern/bpy.c

28 files changed:
1  2 
release/scripts/startup/bl_ui/properties_render.py
release/scripts/startup/bl_ui/space_view3d.py
source/blender/blenkernel/intern/cdderivedmesh.c
source/blender/blenkernel/intern/object.c
source/blender/blenkernel/intern/subsurf_ccg.c
source/blender/blenlib/CMakeLists.txt
source/blender/blenlib/intern/bpath.c
source/blender/blenloader/intern/readfile.c
source/blender/blenloader/intern/writefile.c
source/blender/editors/animation/anim_channels_edit.c
source/blender/editors/animation/anim_filter.c
source/blender/editors/interface/interface_templates.c
source/blender/editors/mesh/editface.c
source/blender/editors/mesh/editmesh.c
source/blender/editors/space_view3d/drawobject.c
source/blender/editors/transform/transform.c
source/blender/makesdna/DNA_mesh_types.h
source/blender/makesdna/DNA_scene_types.h
source/blender/makesdna/intern/makesdna.c
source/blender/makesrna/intern/makesrna.c
source/blender/makesrna/intern/rna_mesh.c
source/blender/makesrna/intern/rna_scene.c
source/blender/makesrna/intern/rna_userdef.c
source/blender/python/intern/bpy.c
source/blender/render/intern/source/convertblender.c
source/blender/render/intern/source/shadeoutput.c
source/creator/CMakeLists.txt
source/creator/creator.c

Simple merge
Simple merge
index 6f542e0f372df678304c910feba39b44d695865a,2f3d14da4c23def72edbf60f5278e4b8334291d4..ead96859cd106faa0873cfc02ccc1733f857d04b
@@@ -12856,31 -12698,54 +12887,76 @@@ static void do_versions(FileData *fd, L
  
        /* put compatibility code here until next subversion bump */
        {
-               /* nothing! */
+               {
+                       /* update use flags for node sockets (was only temporary before) */
+                       Scene *sce;
+                       Material *mat;
+                       Tex *tex;
+                       Lamp *lamp;
+                       World *world;
+                       bNodeTree *ntree;
+                       for (sce=main->scene.first; sce; sce=sce->id.next)
+                               if (sce->nodetree)
+                                       do_versions_nodetree_socket_use_flags_2_62(sce->nodetree);
+                       for (mat=main->mat.first; mat; mat=mat->id.next)
+                               if (mat->nodetree)
+                                       do_versions_nodetree_socket_use_flags_2_62(mat->nodetree);
+                       for (tex=main->tex.first; tex; tex=tex->id.next)
+                               if (tex->nodetree)
+                                       do_versions_nodetree_socket_use_flags_2_62(tex->nodetree);
+                       for (lamp=main->lamp.first; lamp; lamp=lamp->id.next)
+                               if (lamp->nodetree)
+                                       do_versions_nodetree_socket_use_flags_2_62(lamp->nodetree);
+                       for (world=main->world.first; world; world=world->id.next)
+                               if (world->nodetree)
+                                       do_versions_nodetree_socket_use_flags_2_62(world->nodetree);
+                       for (ntree=main->nodetree.first; ntree; ntree=ntree->id.next)
+                               do_versions_nodetree_socket_use_flags_2_62(ntree);
+               }
+               {
+                       /* Initialize BGE exit key to esc key */
+                       Scene *scene;
+                       for(scene= main->scene.first; scene; scene= scene->id.next) {
+                               if (!scene->gm.exitkey)
+                                       scene->gm.exitkey = 218; // Blender key code for ESC
+                       }
+               }
+               {
+                       MovieClip *clip;
+                       for(clip= main->movieclip.first; clip; clip= clip->id.next) {
+                               clip->proxy.build_tc_flag|= IMB_TC_RECORD_RUN_NO_GAPS;
+                       }
+               }
        }
  
 +      /* default values in Freestyle settings */
 +      {
 +              Scene *sce;
 +              SceneRenderLayer *srl;
 +              FreestyleLineStyle *linestyle;
 +
 +              for(sce = main->scene.first; sce; sce = sce->id.next) {
 +                      for(srl= sce->r.layers.first; srl; srl= srl->next) {
 +                              if (srl->freestyleConfig.mode == 0)
 +                                      srl->freestyleConfig.mode= FREESTYLE_CONTROL_EDITOR_MODE;
 +                              if (srl->freestyleConfig.raycasting_algorithm == 0)
 +                                      srl->freestyleConfig.raycasting_algorithm= FREESTYLE_ALGO_CULLED_ADAPTIVE_CUMULATIVE;
 +                      }
 +              }
 +              for(linestyle = main->linestyle.first; linestyle; linestyle = linestyle->id.next) {
 +                      if (linestyle->chaining == 0)
 +                              linestyle->chaining= LS_CHAINING_PLAIN;
 +                      if (linestyle->rounds == 0)
 +                              linestyle->rounds= 3;
 +              }
 +      }
 +      
        /* WATCH IT!!!: pointers from libdata have not been converted yet here! */
        /* WATCH IT 2!: Userdef struct init has to be in editors/interface/resources.c! */
  
index 6e4992e80481fab9b436851670aaa14c20f016ba,c6775873fabfc6309063fbd0e04a55ec3348329e..e359e7a240206fa15ce40aa849c97b2cb9477ee8
@@@ -118,6 -118,48 +118,48 @@@ typedef enum eWireDrawMode 
        OBDRAW_WIRE_ON_DEPTH= 2
  } eWireDrawMode;
  
 -      unsigned char *cols[3];
+ /* user data structures for derived mesh callbacks */
+ typedef struct foreachScreenVert_userData {
+       void (*func)(void *userData, EditVert *eve, int x, int y, int index);
+       void *userData;
+       ViewContext vc;
+       eV3DClipTest clipVerts;
+ } foreachScreenVert_userData;
+ typedef struct foreachScreenEdge_userData {
+       void (*func)(void *userData, EditEdge *eed, int x0, int y0, int x1, int y1, int index);
+       void *userData;
+       ViewContext vc;
+       eV3DClipTest clipVerts;
+ } foreachScreenEdge_userData;
+ typedef struct foreachScreenFace_userData {
+       void (*func)(void *userData, EditFace *efa, int x, int y, int index);
+       void *userData;
+       ViewContext vc;
+ } foreachScreenFace_userData;
+ typedef struct drawDMVerts_userData {
+       int sel;
+       EditVert *eve_act;
+ } drawDMVerts_userData;
+ typedef struct drawDMEdgesSel_userData {
+       unsigned char *baseCol, *selCol, *actCol;
+       EditEdge *eed_act;
+ } drawDMEdgesSel_userData;
+ typedef struct drawDMFacesSel_userData {
++      unsigned char *cols[4];
+       EditFace *efa_act;
+       int *orig_index;
+ } drawDMFacesSel_userData;
+ typedef struct bbsObmodeMeshVerts_userData {
+       void *offset;
+       MVert *mvert;
+ } bbsObmodeMeshVerts_userData;
  static void draw_bounding_volume(Scene *scene, Object *ob, char type);
  
  static void drawcube_size(float size);
@@@ -2407,13 -2432,12 +2443,13 @@@ static int draw_dm_faces_sel__compareDr
  }
  
  /* also draws the active face */
 -static void draw_dm_faces_sel(DerivedMesh *dm, unsigned char *baseCol, unsigned char *selCol, unsigned char *actCol, EditFace *efa_act) 
 +static void draw_dm_faces_sel(DerivedMesh *dm, unsigned char *baseCol, unsigned char *selCol, unsigned char *markCol, unsigned char *actCol, EditFace *efa_act) 
  {
-       struct { unsigned char *cols[4]; EditFace *efa_act; int *orig_index; } data;
+       drawDMFacesSel_userData data;
        data.cols[0] = baseCol;
        data.cols[1] = selCol;
 -      data.cols[2] = actCol;
 +      data.cols[2] = markCol;
 +      data.cols[3] = actCol;
        data.efa_act = efa_act;
        data.orig_index = DM_get_face_data_layer(dm, CD_ORIGINDEX);
  
index cd76944e1b002955fc5e6716e092c0cfe2776444,4bca7e7a77f37802d889b9c217472b17e6e9e6f9..8db24a91d416f04c692b0c175e8861c3dec08e36
@@@ -162,9 -162,9 +162,12 @@@ typedef struct TFace 
  #define ME_DRAWEXTRA_FACEAREA (1 << 11)
  #define ME_DRAWEXTRA_FACEANG  (1 << 12)
  
- #define ME_DRAW_FREESTYLE_EDGE (1 << 13)
- #define ME_DRAW_FREESTYLE_FACE (1 << 14)
+ /* debug only option */
+ #define ME_DRAWEXTRA_INDICES (1 << 13)
++#define ME_DRAW_FREESTYLE_EDGE (1 << 14)
++#define ME_DRAW_FREESTYLE_FACE (1 << 15)
 +
  /* old global flags:
  #define G_DRAWEDGES           (1 << 18)
  #define G_DRAWFACES           (1 <<  7)
index 8188231724426f04b77b0ffdc1412225a289f64f,e0e3dd5519c870318f3300c304710969166fa5ca..b6e0897f62668eec459bd91e279ba5f9760f4584
@@@ -58,9 -58,7 +58,9 @@@
  #include "../generic/blf_py_api.h"
  #include "../mathutils/mathutils.h"
  
- PyObject *bpy_package_py= NULL;
 +#include "BPy_Freestyle.h"
 +
+ PyObject *bpy_package_py = NULL;
  
  PyDoc_STRVAR(bpy_script_paths_doc,
  ".. function:: script_paths()\n"
@@@ -253,9 -251,8 +253,9 @@@ void BPy_init_modules(void
        }
        /* stand alone utility modules not related to blender directly */
        IDProp_Init_Types(); /* not actually a submodule, just types */
 +      Freestyle_Init();
  
-       mod= PyModule_New("_bpy");
+       mod = PyModule_New("_bpy");
  
        /* add the module so we can import it */
        PyDict_SetItemString(PyImport_GetModuleDict(), "_bpy", mod);
Simple merge
Simple merge