[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [46668] branches/soc-2011-tomato/source/ blender/editors/space_clip/tracking_ops.c: Tomato: fixes for marker sliding operator
Sergey Sharybin
sergey.vfx at gmail.com
Tue May 15 17:05:45 CEST 2012
Revision: 46668
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=46668
Author: nazgul
Date: 2012-05-15 15:05:45 +0000 (Tue, 15 May 2012)
Log Message:
-----------
Tomato: fixes for marker sliding operator
- Fixed crash on slide undo. Was caused by some typos in slide
data initialization and not checking for slide action in
cancel callback
- Always create keyframe for frame when marker is stared sliding.
Modified Paths:
--------------
branches/soc-2011-tomato/source/blender/editors/space_clip/tracking_ops.c
Modified: branches/soc-2011-tomato/source/blender/editors/space_clip/tracking_ops.c
===================================================================
--- branches/soc-2011-tomato/source/blender/editors/space_clip/tracking_ops.c 2012-05-15 15:02:02 UTC (rev 46667)
+++ branches/soc-2011-tomato/source/blender/editors/space_clip/tracking_ops.c 2012-05-15 15:05:45 UTC (rev 46668)
@@ -315,7 +315,7 @@
}
if ((area == TRACK_AREA_SEARCH) ||
- (area == TRACK_AREA_PAT && !ELEM(action, SLIDE_ACTION_OFFSET, SLIDE_ACTION_POS)))
+ (area == TRACK_AREA_PAT && action != SLIDE_ACTION_OFFSET))
{
if (data->corners) {
memcpy(data->scorners, data->corners, sizeof(data->scorners));
@@ -591,7 +591,9 @@
copy_v2_v2(data->pos, data->spos);
}
else {
- if (data->action == SLIDE_ACTION_SIZE) {
+ if ((data->action == SLIDE_ACTION_SIZE) ||
+ (data->action == SLIDE_ACTION_POS && data->area == TRACK_AREA_PAT))
+ {
if (data->corners) {
memcpy(data->corners, data->scorners, sizeof(data->scorners));
}
@@ -663,8 +665,6 @@
else {
data->pos[0] = data->spos[0] + dx;
data->pos[1] = data->spos[1] + dy;
-
- data->marker->flag &= ~MARKER_TRACKED;
}
WM_event_add_notifier(C, NC_OBJECT | ND_TRANSFORM, NULL);
@@ -734,6 +734,8 @@
}
}
+ data->marker->flag &= ~MARKER_TRACKED;
+
WM_event_add_notifier(C, NC_MOVIECLIP | NA_EDITED, NULL);
break;
More information about the Bf-blender-cvs
mailing list