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:
authorSebastian Parborg <darkdefende@gmail.com>2020-01-17 17:10:17 +0300
committerSebastian Parborg <darkdefende@gmail.com>2020-01-17 17:10:17 +0300
commit9410e5dc97c4f21e19865ca8a9e1e185fcf5a1d4 (patch)
treeb2a373adf59bc9c0dc54c75b855f66bf439e90da /source/blender/makesrna/intern/rna_scene.c
parent1e91d9d4dc49b09d53a1b544174ec245c4e8e684 (diff)
Make the scene preview range not clamp the start/end values
This will make this consistent with the behaviour of other start/end ranges in blender. So start/end will instead be adjusted to always satisfy the "start >= end" requirement instead of clamping the values.
Diffstat (limited to 'source/blender/makesrna/intern/rna_scene.c')
-rw-r--r--source/blender/makesrna/intern/rna_scene.c24
1 files changed, 14 insertions, 10 deletions
diff --git a/source/blender/makesrna/intern/rna_scene.c b/source/blender/makesrna/intern/rna_scene.c
index ea1fb1eb489..7d35a1c5e2a 100644
--- a/source/blender/makesrna/intern/rna_scene.c
+++ b/source/blender/makesrna/intern/rna_scene.c
@@ -941,8 +941,8 @@ static void rna_Scene_start_frame_set(PointerRNA *ptr, int value)
CLAMP(value, MINFRAME, MAXFRAME);
data->r.sfra = value;
- if (data->r.sfra >= data->r.efra) {
- data->r.efra = MIN2(data->r.sfra, MAXFRAME);
+ if (value > data->r.efra) {
+ data->r.efra = MIN2(value, MAXFRAME);
}
}
@@ -952,8 +952,8 @@ static void rna_Scene_end_frame_set(PointerRNA *ptr, int value)
CLAMP(value, MINFRAME, MAXFRAME);
data->r.efra = value;
- if (data->r.sfra >= data->r.efra) {
- data->r.sfra = MAX2(data->r.efra, MINFRAME);
+ if (data->r.sfra > value) {
+ data->r.sfra = MAX2(value, MINFRAME);
}
}
@@ -985,10 +985,12 @@ static void rna_Scene_preview_range_start_frame_set(PointerRNA *ptr, int value)
/* TODO: or just refuse to set instead? */
data->r.pefra = data->r.efra;
}
-
- /* now set normally */
- CLAMP(value, MINAFRAME, data->r.pefra);
+ CLAMP(value, MINAFRAME, MAXFRAME);
data->r.psfra = value;
+
+ if (value > data->r.pefra) {
+ data->r.pefra = MIN2(value, MAXFRAME);
+ }
}
static void rna_Scene_preview_range_end_frame_set(PointerRNA *ptr, int value)
@@ -1001,10 +1003,12 @@ static void rna_Scene_preview_range_end_frame_set(PointerRNA *ptr, int value)
/* TODO: or just refuse to set instead? */
data->r.psfra = data->r.sfra;
}
-
- /* now set normally */
- CLAMP(value, data->r.psfra, MAXFRAME);
+ CLAMP(value, MINAFRAME, MAXFRAME);
data->r.pefra = value;
+
+ if (data->r.psfra > value) {
+ data->r.psfra = MAX2(value, MINAFRAME);
+ }
}
static void rna_Scene_show_subframe_update(Main *UNUSED(bmain),