Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Ebb <matt@mke3.net>2010-01-15 08:00:02 +0300
committerMatt Ebb <matt@mke3.net>2010-01-15 08:00:02 +0300
commit085795e356c2f8a7701c842735ca4f163ff75058 (patch)
tree43cb9dd18086d51a02911cac2052cc2587829bed /release
parent336c96e1204e8ee8266eb5133041b459eb409d2c (diff)
Fix [#20514] In sculpting mode is possible to use page down/up to exceed the actual multiresolution level
Diffstat (limited to 'release')
-rw-r--r--release/scripts/op/object.py24
1 files changed, 14 insertions, 10 deletions
diff --git a/release/scripts/op/object.py b/release/scripts/op/object.py
index 1cf46d514c7..8c9108f9baa 100644
--- a/release/scripts/op/object.py
+++ b/release/scripts/op/object.py
@@ -102,20 +102,24 @@ class SubdivisionSet(bpy.types.Operator):
def set_object_subd(obj):
for mod in obj.modifiers:
if mod.type == 'MULTIRES':
- if level <= mod.total_levels:
- if obj.mode == 'SCULPT':
- if relative:
- mod.sculpt_levels += level
- else:
+ if not relative:
+ if level <= mod.total_levels:
+ if obj.mode == 'SCULPT':
if mod.sculpt_levels != level:
mod.sculpt_levels = level
+ elif obj.mode == 'OBJECT':
+ if mod.levels != level:
+ mod.levels = level
+ return
+ else:
+ if obj.mode == 'SCULPT':
+ if mod.sculpt_levels+level <= mod.total_levels:
+ mod.sculpt_levels += level
elif obj.mode == 'OBJECT':
- if relative:
+ if mod.levels+level <= mod.total_levels:
mod.levels += level
- else:
- if mod.levels != level:
- mod.levels = level
- return
+ return
+
elif mod.type == 'SUBSURF':
if relative:
mod.levels += level