diff options
author | Joshua Leung <aligorith@gmail.com> | 2010-02-18 03:29:08 +0300 |
---|---|---|
committer | Joshua Leung <aligorith@gmail.com> | 2010-02-18 03:29:08 +0300 |
commit | 21a2350248fd526b898186ff7f1e2f5bc7457efd (patch) | |
tree | c329babd5fb61a903ccb389243d21bd7cbf7e9a0 /source/blender/editors/animation | |
parent | 65cac9ae1392f9eeb00cf2154e9c154e7104ce6b (diff) |
Animation Playback Option (No negative frames) and Other Bugfixes:
* Added a user-preference setting which disallows setting the current frame number to a negative number. This setting only applies when setting the current frame by scrubbing the time cursor in a timeline view, or by typing a value into the current frame number field.
* Made the minimum frame number for the start frame to be 0, which should make setting keyframes by a regular step size less confusing. Also changed the MINFRAME define to 0 for consistency. Hopefully this doesn't cause any problems with any output formats.
* Fixed some missing channel selection cases in animation editors.
Diffstat (limited to 'source/blender/editors/animation')
-rw-r--r-- | source/blender/editors/animation/anim_channels_edit.c | 8 | ||||
-rw-r--r-- | source/blender/editors/animation/anim_ops.c | 1 |
2 files changed, 7 insertions, 2 deletions
diff --git a/source/blender/editors/animation/anim_channels_edit.c b/source/blender/editors/animation/anim_channels_edit.c index 8c9495ac61e..26dd0285a2f 100644 --- a/source/blender/editors/animation/anim_channels_edit.c +++ b/source/blender/editors/animation/anim_channels_edit.c @@ -261,6 +261,8 @@ void ANIM_deselect_anim_channels (bAnimContext *ac, void *data, short datatype, case ANIMTYPE_DSMBALL: case ANIMTYPE_DSARM: case ANIMTYPE_DSMESH: + case ANIMTYPE_DSNTREE: + case ANIMTYPE_DSTEX: { if ((ale->adt) && (ale->adt->flag & ADT_UI_SELECTED)) sel= ACHANNEL_SETFLAG_CLEAR; @@ -342,6 +344,8 @@ void ANIM_deselect_anim_channels (bAnimContext *ac, void *data, short datatype, case ANIMTYPE_DSMBALL: case ANIMTYPE_DSARM: case ANIMTYPE_DSMESH: + case ANIMTYPE_DSNTREE: + case ANIMTYPE_DSTEX: { /* need to verify that this data is valid for now */ if (ale->adt) { @@ -1742,8 +1746,6 @@ static int mouse_anim_channels (bAnimContext *ac, float x, int channel_index, sh if (adt) adt->flag |= ADT_UI_SELECTED; } - /* xxx should be ED_base_object_activate(), but we need context pointer for that... */ - //set_active_base(base); if ((adt) && (adt->flag & ADT_UI_SELECTED)) adt->flag |= ADT_UI_ACTIVE; @@ -1762,6 +1764,8 @@ static int mouse_anim_channels (bAnimContext *ac, float x, int channel_index, sh case ANIMTYPE_DSMBALL: case ANIMTYPE_DSARM: case ANIMTYPE_DSMESH: + case ANIMTYPE_DSNTREE: + case ANIMTYPE_DSTEX: { /* sanity checking... */ if (ale->adt) { diff --git a/source/blender/editors/animation/anim_ops.c b/source/blender/editors/animation/anim_ops.c index 090df504b83..4e310e27c5f 100644 --- a/source/blender/editors/animation/anim_ops.c +++ b/source/blender/editors/animation/anim_ops.c @@ -81,6 +81,7 @@ static void change_frame_apply(bContext *C, wmOperator *op) /* set the new frame number */ CFRA= RNA_int_get(op->ptr, "frame"); + FRAMENUMBER_MIN_CLAMP(CFRA); /* do updates */ sound_seek_scene(C); |