diff options
author | Campbell Barton <ideasman42@gmail.com> | 2010-11-08 06:44:52 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2010-11-08 06:44:52 +0300 |
commit | 85b9652258f515b7d0f0133df9166c4aae6136af (patch) | |
tree | c5dd63d580eacb9980a57f39f59e4d2a93ca6ed1 /source/blender/makesrna | |
parent | c300d58497f2eb51614e07101f7f08a25cc167a3 (diff) |
fix for glitches with quad-split view.
- Home or Numpad Period with smoothview disabled were not syncing up the other views.
- Disabling clip only disabled clip syncing but left clip enabled for all views.
- Clip was being calculated for every update even when not enabled.
- The perspective view was being used to copy settings from when changing box & clip settings, resetting the distance each time. Now use one of the aligned views instead.
Diffstat (limited to 'source/blender/makesrna')
-rw-r--r-- | source/blender/makesrna/intern/rna_space.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/source/blender/makesrna/intern/rna_space.c b/source/blender/makesrna/intern/rna_space.c index e6f59a5e589..315e1429254 100644 --- a/source/blender/makesrna/intern/rna_space.c +++ b/source/blender/makesrna/intern/rna_space.c @@ -348,7 +348,18 @@ static void rna_RegionView3D_quadview_update(Main *main, Scene *scene, PointerRN rna_area_region_from_regiondata(ptr, &sa, &ar); if(sa && ar && ar->alignment==RGN_ALIGN_QSPLIT) - ED_view3d_quadview_update(sa, ar); + ED_view3d_quadview_update(sa, ar, FALSE); +} + +/* same as above but call clip==TRUE */ +static void rna_RegionView3D_quadview_clip_update(Main *main, Scene *scene, PointerRNA *ptr) +{ + ScrArea *sa; + ARegion *ar; + + rna_area_region_from_regiondata(ptr, &sa, &ar); + if(sa && ar && ar->alignment==RGN_ALIGN_QSPLIT) + ED_view3d_quadview_update(sa, ar, TRUE); } static void rna_RegionView3D_view_location_get(PointerRNA *ptr, float *values) @@ -1246,7 +1257,7 @@ static void rna_def_space_view3d(BlenderRNA *brna) prop= RNA_def_property(srna, "use_box_clip", PROP_BOOLEAN, PROP_NONE); RNA_def_property_boolean_sdna(prop, NULL, "viewlock", RV3D_BOXCLIP); RNA_def_property_ui_text(prop, "Clip", "Clip objects based on what's visible in other side views"); - RNA_def_property_update(prop, NC_SPACE|ND_SPACE_VIEW3D, "rna_RegionView3D_quadview_update"); + RNA_def_property_update(prop, NC_SPACE|ND_SPACE_VIEW3D, "rna_RegionView3D_quadview_clip_update"); prop= RNA_def_property(srna, "perspective_matrix", PROP_FLOAT, PROP_MATRIX); RNA_def_property_float_sdna(prop, NULL, "persmat"); |