Merge branch 'master' into blender2.8
authorCampbell Barton <ideasman42@gmail.com>
Mon, 19 Jun 2017 05:06:48 +0000 (15:06 +1000)
committerCampbell Barton <ideasman42@gmail.com>
Mon, 19 Jun 2017 05:06:48 +0000 (15:06 +1000)
13 files changed:
1  2 
doc/python_api/sphinx_doc_gen.py
source/blender/alembic/intern/abc_exporter.cc
source/blender/alembic/intern/abc_util.h
source/blender/blenkernel/intern/mesh_evaluate.c
source/blender/blenlib/intern/math_matrix.c
source/blender/editors/armature/armature_naming.c
source/blender/editors/gpencil/gpencil_utils.c
source/blender/editors/space_image/image_ops.c
source/blender/editors/space_node/node_edit.c
source/blender/editors/space_node/space_node.c
source/blender/editors/transform/transform_conversions.c
source/blender/editors/transform/transform_snap_object.c
source/blender/python/intern/bpy_rna.c

Simple merge
index e3dd2b968be5d227242874f50df1d491d730bc70,4fe65b96f3655c3fce18f7bb3887c943c60a0b77..680913e45eae564e6ba0aa0a591a13f3a9352674
@@@ -131,15 -131,14 +131,14 @@@ static bool object_type_is_exportable(O
  /**
   * Returns whether this object should be exported into the Alembic file.
   *
-  * @param settings export settings, used for options like 'selected only'.
-  * @param ob the object's base in question.
-  * @param is_duplicated normally false; true when the object is instanced
-  *                      into the scene by a dupli-object (e.g. part of a
-  *                      dupligroup). This ignores selection and layer
-  *                      visibility, and assumes that the dupli-object itself
-  *                      (e.g. the group-instantiating empty) is exported.
 - * \param settings: export settings, used for options like 'selected only'.
 - * \param ob: the object in question.
++ * \param settings export settings, used for options like 'selected only'.
++ * \param ob the object's base in question.
+  * \param is_duplicated: Normally false; true when the object is instanced
+  * into the scene by a dupli-object (e.g. part of a dupligroup).
+  * This ignores selection and layer visibility,
+  * and assumes that the dupli-object itself (e.g. the group-instantiating empty) is exported.
   */
 -static bool export_object(const ExportSettings * const settings, Object *ob,
 +static bool export_object(const ExportSettings * const settings, const Base * const ob_base,
                            bool is_duplicated)
  {
        if (!is_duplicated) {
index 1883b62f532f9c518ceb52721cea06733047d2a1,f47f9ad76e65bfef274744f57af43ebbf393fb4b..7677d545e07c3a740acf45f8708611784ae9b197
@@@ -1809,12 -1744,12 +1809,12 @@@ void blend_m4_m4m4(float out[4][4], con
   *
   * Based on "Matrix Animation and Polar Decomposition", by Ken Shoemake & Tom Duff
   *
-  * @return R the interpolated matrix.
-  * @param A the intput matrix which is totally effective with \a t = 0.0.
-  * @param B the intput matrix which is totally effective with \a t = 1.0.
-  * @param t the interpolation factor.
+  * \param R: Resulting interpolated matrix.
+  * \param A: Input matrix which is totally effective with `t = 0.0`.
+  * \param B: Input matrix which is totally effective with `t = 1.0`.
+  * \param t: Interpolation factor.
   */
 -void interp_m3_m3m3(float R[3][3], float A[3][3], float B[3][3], const float t)
 +void interp_m3_m3m3(float R[3][3], const float A[3][3], const float B[3][3], const float t)
  {
        /* 'Rotation' component ('U' part of polar decomposition, the closest orthogonal matrix to M3 rot/scale
         * transformation matrix), spherically interpolated. */
  }
  
  /**
-  * Complete transform matrix interpolation, based on polar-decomposition-based interpolation from interp_m3_m3m3.
+  * Complete transform matrix interpolation, based on polar-decomposition-based interpolation from #interp_m3_m3m3.
   *
-  * @return R the interpolated matrix.
-  * @param A the intput matrix which is totally effective with \a t = 0.0.
-  * @param B the intput matrix which is totally effective with \a t = 1.0.
-  * @param t the interpolation factor.
+  * \param R: Resulting interpolated matrix.
+  * \param A: Input matrix which is totally effective with `t = 0.0`.
+  * \param B: Input matrix which is totally effective with `t = 1.0`.
+  * \param t: Interpolation factor.
   */
 -void interp_m4_m4m4(float R[4][4], float A[4][4], float B[4][4], const float t)
 +void interp_m4_m4m4(float R[4][4], const float A[4][4], const float B[4][4], const float t)
  {
        float A3[3][3], B3[3][3], R3[3][3];
  
index 2f1e6d38d3d2bed6b489ae9fb88d757f71f3152e,2267316d25701cc4dbd065eb1280b73415dd57cf..c1099f38d925708d024831d6affb93500ac8e57e
@@@ -777,18 -753,11 +777,22 @@@ static void node_region_listener
                                        break;
                        }
                        break;
+               case NC_WM:
+                       if (wmn->data == ND_JOB)
+                               ED_region_tag_redraw(ar);
+                       break;
                case NC_SCENE:
 +                      ED_region_tag_redraw(ar);
 +                      if (wmn->data == ND_RENDER_RESULT) {
 +                              WM_manipulatormap_tag_refresh(mmap);
 +                      }
 +                      break;
 +              case NC_NODE:
 +                      ED_region_tag_redraw(ar);
 +                      if (ELEM(wmn->action, NA_EDITED, NA_SELECTED)) {
 +                              WM_manipulatormap_tag_refresh(mmap);
 +                      }
 +                      break;
                case NC_MATERIAL:
                case NC_TEXTURE:
                case NC_WORLD: