diff options
author | Diego Borghetti <bdiego@gmail.com> | 2010-07-01 23:29:27 +0400 |
---|---|---|
committer | Diego Borghetti <bdiego@gmail.com> | 2010-07-01 23:29:27 +0400 |
commit | 49b8bb6f7f68b93485a7dda0020cab046bd90f06 (patch) | |
tree | 1c04551fa1bc8821654ee58c0010da87032cc0e5 /source/blender/blenloader | |
parent | 51fd10a1b580dc91f7ef6172ac859ec5d1dcda6f (diff) |
Fix new zoom in/out values for nodes in old files.
The problem was a missing update to the ARegion and the
first space, that is why old file don't get the
new zoom in/out values.
Diffstat (limited to 'source/blender/blenloader')
-rw-r--r-- | source/blender/blenloader/intern/readfile.c | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c index 700a3c2d77b..e670d78ff77 100644 --- a/source/blender/blenloader/intern/readfile.c +++ b/source/blender/blenloader/intern/readfile.c @@ -10863,11 +10863,27 @@ static void do_versions(FileData *fd, Library *lib, Main *main) for (sl= sa->spacedata.first; sl; sl= sl->next) { if (sl->spacetype == SPACE_NODE) { SpaceNode *snode= (SpaceNode *)sl; - + ListBase *regionbase; + ARegion *ar; + + if (sl == sa->spacedata.first) + regionbase = &sa->regionbase; + else + regionbase = &sl->regionbase; + if (snode->v2d.minzoom > 0.09f) snode->v2d.minzoom= 0.09f; if (snode->v2d.maxzoom < 2.31f) snode->v2d.maxzoom= 2.31f; + + for (ar= regionbase->first; ar; ar= ar->next) { + if (ar->regiontype == RGN_TYPE_WINDOW) { + if (ar->v2d.minzoom > 0.09f) + ar->v2d.minzoom= 0.09f; + if (ar->v2d.maxzoom < 2.31f) + ar->v2d.maxzoom= 2.31f; + } + } } else if (sl->spacetype == SPACE_TIME) { SpaceTime *stime= (SpaceTime *)sl; |