Merged changes in the trunk up to revision 44561.
authorTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>
Wed, 29 Feb 2012 21:35:49 +0000 (21:35 +0000)
committerTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>
Wed, 29 Feb 2012 21:35:49 +0000 (21:35 +0000)
Conflicts resolved:
source/blender/bmesh/bmesh.h
source/blender/bmesh/bmesh_operators.h
source/blenderplayer/bad_level_call_stubs/stubs.c

26 files changed:
1  2 
release/scripts/startup/bl_ui/space_view3d.py
source/blender/blenkernel/CMakeLists.txt
source/blender/blenkernel/intern/group.c
source/blender/blenkernel/intern/library.c
source/blender/blenkernel/intern/object.c
source/blender/blenkernel/intern/subsurf_ccg.c
source/blender/blenloader/intern/readfile.c
source/blender/blenloader/intern/writefile.c
source/blender/bmesh/bmesh.h
source/blender/bmesh/intern/bmesh_construct.c
source/blender/bmesh/intern/bmesh_operators.h
source/blender/bmesh/operators/bmo_utils.c
source/blender/editors/animation/anim_filter.c
source/blender/editors/interface/resources.c
source/blender/editors/mesh/bmesh_select.c
source/blender/editors/mesh/bmesh_tools.c
source/blender/editors/mesh/mesh_intern.h
source/blender/editors/mesh/mesh_ops.c
source/blender/editors/render/render_shading.c
source/blender/editors/space_view3d/drawobject.c
source/blender/editors/transform/transform.c
source/blender/makesdna/DNA_mesh_types.h
source/blender/makesrna/intern/rna_internal.h
source/blender/makesrna/intern/rna_mesh.c
source/blender/makesrna/intern/rna_scene.c
source/blenderplayer/bad_level_call_stubs/stubs.c

@@@ -1723,14 -1718,8 +1723,13 @@@ class VIEW3D_MT_edit_mesh_faces(Menu)
  
          layout.separator()
  
 +        layout.operator("mesh.mark_freestyle_face").clear = False
 +        layout.operator("mesh.mark_freestyle_face", text="Clear Freestyle Face").clear = True
 +
 +        layout.separator()
 +
          layout.operator("mesh.quads_convert_to_tris")
          layout.operator("mesh.tris_convert_to_quads")
-         layout.operator("mesh.edge_flip")
  
          layout.separator()
  
@@@ -86,34 -222,37 +222,38 @@@ extern "C" 
  */
  
  /* BMHeader->htype (char) */
- #define BM_VERT       1
- #define BM_EDGE       2
- #define BM_LOOP       4
- #define BM_FACE       8
- #define BM_ALL                (BM_VERT | BM_EDGE | BM_LOOP | BM_FACE)
+ enum {
+       BM_VERT = 1,
+       BM_EDGE = 2,
+       BM_LOOP = 4,
+       BM_FACE = 8
+ };
+ #define BM_ALL (BM_VERT | BM_EDGE | BM_LOOP | BM_FACE)
  
  /* BMHeader->hflag (char) */
- #define BM_ELEM_SELECT        (1 << 0)
- #define BM_ELEM_HIDDEN        (1 << 1)
- #define BM_ELEM_SEAM  (1 << 2)
- #define BM_ELEM_SMOOTH        (1 << 3) /* used for faces and edges, note from the user POV,
+ enum {
+       BM_ELEM_SELECT  = (1 << 0),
+       BM_ELEM_HIDDEN  = (1 << 1),
+       BM_ELEM_SEAM    = (1 << 2),
+       BM_ELEM_SMOOTH  = (1 << 3), /* used for faces and edges, note from the user POV,
                                    * this is a sharp edge when disabled */
  
#define BM_ELEM_TAG     (1 << 4) /* internal flag, used for ensuring correct normals
-                                   * during multires interpolation, and any other time
-                                   * when temp tagging is handy.
-                                   * always assume dirty & clear before use. */
      BM_ELEM_TAG     = (1 << 4), /* internal flag, used for ensuring correct normals
+                                  * during multires interpolation, and any other time
+                                  * when temp tagging is handy.
+                                  * always assume dirty & clear before use. */
  
- #define BM_ELEM_FREESTYLE     (1 << 5) /* used for faces and edges */
++      BM_ELEM_FREESTYLE = (1 << 5), /* used for Freestyle faces and edges */
+       /* we have 2 spare flags which is awesome but since we're limited to 8
+        * only add new flags with care! - campbell */
+       /* BM_ELEM_SPARE  = (1 << 5), */
+       /* BM_ELEM_SPARE  = (1 << 6), */
  
- /* we have 3 spare flags which is awesome but since we're limited to 8
-  * only add new flags with care! - campbell */
- /* #define BM_ELEM_SPARE       (1<<5) */
- /* #define BM_ELEM_SPARE       (1<<6) */
- /* #define BM_ELEM_NONORMCALC (1<<7) */ /* UNUSED */
- /* stub */
- void bmesh_error(void);
+       BM_ELEM_INTERNAL_TAG = (1 << 7) /* for low level internal API tagging,
+                                      * since tools may want to tag verts and
+                                      * not have functions clobber them */
+ };
  
  /* Mesh Level Ops */
  extern int bm_mesh_allocsize_default[4];
@@@ -138,10 -134,8 +134,9 @@@ void MESH_OT_select_random(struct wmOpe
  void MESH_OT_loop_multi_select(struct wmOperatorType *ot);
  void MESH_OT_mark_seam(struct wmOperatorType *ot);
  void MESH_OT_mark_sharp(struct wmOperatorType *ot);
 +void MESH_OT_mark_freestyle_edge(struct wmOperatorType *ot);
  void MESH_OT_vertices_smooth(struct wmOperatorType *ot);
  void MESH_OT_noise(struct wmOperatorType *ot);
- void EXPORT_MESH_OT_wavefront(struct wmOperatorType *ot);
  void MESH_OT_flip_normals(struct wmOperatorType *ot);
  void MESH_OT_solidify(struct wmOperatorType *ot);
  void MESH_OT_select_nth(struct wmOperatorType *ot);
@@@ -2595,22 -2585,12 +2595,22 @@@ static void rna_def_mesh(BlenderRNA *br
        
        prop= RNA_def_property(srna, "show_edge_sharp", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "drawflag", ME_DRAWSHARP);
-       RNA_def_property_ui_text(prop, "Draw Sharp", "Displays sharp edges, used with the EdgeSplit modifier");
+       RNA_def_property_ui_text(prop, "Draw Sharp", "Display sharp edges, used with the EdgeSplit modifier");
        RNA_def_property_update(prop, 0, "rna_Mesh_update_draw");
  
 +      prop= RNA_def_property(srna, "show_freestyle_edge_marks", PROP_BOOLEAN, PROP_NONE);
 +      RNA_def_property_boolean_sdna(prop, NULL, "drawflag", ME_DRAW_FREESTYLE_EDGE);
 +      RNA_def_property_ui_text(prop, "Draw Freestyle Edge Marks", "Display Freestyle edge marks, used with the Freestyle renderer");
 +      RNA_def_property_update(prop, 0, "rna_Mesh_update_draw");
 +
 +      prop= RNA_def_property(srna, "show_freestyle_face_marks", PROP_BOOLEAN, PROP_NONE);
 +      RNA_def_property_boolean_sdna(prop, NULL, "drawflag", ME_DRAW_FREESTYLE_FACE);
 +      RNA_def_property_ui_text(prop, "Draw Freestyle Face Marks", "Display Freestyle face marks, used with the Freestyle renderer");
 +      RNA_def_property_update(prop, 0, "rna_Mesh_update_draw");
 +
        prop= RNA_def_property(srna, "show_extra_edge_length", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "drawflag", ME_DRAWEXTRA_EDGELEN);
-       RNA_def_property_ui_text(prop, "Edge Length", "Displays selected edge lengths, Using global values when set in the transform panel");
+       RNA_def_property_ui_text(prop, "Edge Length", "Display selected edge lengths, using global values when set in the transform panel");
        RNA_def_property_update(prop, 0, "rna_Mesh_update_draw");
        
        prop= RNA_def_property(srna, "show_extra_face_angle", PROP_BOOLEAN, PROP_NONE);
  
  struct ARegion;
  struct ARegionType;
+ struct BMEditMesh;
  struct Base;
  struct Brush;
- struct bNodeTree;
- struct bNodeSocket;
  struct CSG_FaceIteratorDescriptor;
  struct CSG_VertexIteratorDescriptor;
+ struct ChannelDriver;
  struct ColorBand;
- struct CurveMapping;
+ struct Context;
  struct Curve;
+ struct CurveMapping;
  struct DerivedMesh;
  struct EditBone;
- struct EditFace;
- struct EditMesh;
  struct EnvMap;
- struct ID;
  struct FCurve;
+ struct Heap;
+ struct HeapNode;
+ struct ID;
 +struct FreestyleConfig;
 +struct FreestyleLineSet;
  struct ImBuf;
  struct Image;
  struct ImageUser;
@@@ -81,7 -80,7 +82,8 @@@ struct RenderEngineType
  struct RenderLayer;
  struct RenderResult;
  struct Scene;
+ struct Scene;
 +struct SceneRenderLayer;
  struct ScrArea;
  struct SculptSession;
  struct ShadeInput;
@@@ -504,15 -497,8 +500,15 @@@ void BPY_pyconstraint_target(struct bPy
  float BPY_driver_exec(struct ChannelDriver *driver, const float evaltime) {return 0.0f;} /* might need this one! */
  void BPY_DECREF(void *pyob_ptr) {}
  void BPY_pyconstraint_exec(struct bPythonConstraint *con, struct bConstraintOb *cob, struct ListBase *targets) {}
- void macro_wrapper(struct wmOperatorType *ot, void *userdata) {} ;
+ void macro_wrapper(struct wmOperatorType *ot, void *userdata) {}
  
 +/* Freestyle */
 +void FRS_add_freestyle_config(struct SceneRenderLayer* srl) {}
 +void FRS_free_freestyle_config(struct SceneRenderLayer* srl) {}
 +struct FreestyleLineSet *FRS_get_active_lineset(struct FreestyleConfig *config) { return NULL; }
 +short FRS_get_active_lineset_index(struct FreestyleConfig *config) { return 0; }
 +void FRS_set_active_lineset_index(struct FreestyleConfig *config, short index) {}
 +void FRS_unlink_target_object(struct FreestyleConfig *config, struct Object *ob) {}
  /* intern/dualcon */
  struct DualConMesh;
  struct DualConMesh *dualcon(const struct DualConMesh *input_mesh,