[pitivi: 1/20] timeline.py: buggy first stab at roll editing
- From: Edward Hervey <edwardrv src gnome org>
- To: svn-commits-list gnome org
- Subject: [pitivi: 1/20] timeline.py: buggy first stab at roll editing
- Date: Wed, 15 Jul 2009 06:36:58 +0000 (UTC)
commit c5b0e9d094c4e98c6d0419eac306a6027239009c
Author: Brandon Lewis <brandon_lewis berkeley edu>
Date: Thu Jul 2 00:08:37 2009 -0700
timeline.py: buggy first stab at roll editing
pitivi/timeline/timeline.py | 26 ++++++++++++++++++++++++++
1 files changed, 26 insertions(+), 0 deletions(-)
---
diff --git a/pitivi/timeline/timeline.py b/pitivi/timeline/timeline.py
index 421a020..2faca98 100644
--- a/pitivi/timeline/timeline.py
+++ b/pitivi/timeline/timeline.py
@@ -932,6 +932,7 @@ class EditingContext(object):
self._snap = True
self._mode = self.DEFAULT
self._last_position = 0
+ self._last_priority = 0
self.timeline.disableUpdates()
@@ -1089,11 +1090,36 @@ class MoveContext(EditingContext):
class TrimStartContext(EditingContext):
+ def __init__(self, timeline, focus, other):
+ EditingContext.__init__(self, timeline, focus, other)
+ self.adjacent = timeline.edges.getObjsAdjacentToStart(focus)
+ self.adjacent_originals = self._saveValues(self.adjacent)
+
+ def _rollTo(self, position, priority):
+ for obj in self.adjacent:
+ duration = max(0, position - obj.start)
+ obj.setDuration(duration, snap=False)
+
+ def _finishRoll(self):
+ self._restoreValues(self.adjacent_originals)
+
def _editFocus(self, position, priority):
self.focus.trimStart(position, snap=self.snap)
class TrimEndContext(EditingContext):
+ def __init__(self, timeline, focus, other):
+ EditingContext.__init__(self, timeline, focus, other)
+ self.adjacent = timeline.edges.getObjsAdjacentToEnd(focus)
+ self.adjacent_originals = self._saveValues(self.adjacent)
+
+ def _rollTo(self, position, priority):
+ for obj in self.adjacent:
+ obj.trimStart(position, snap=False)
+
+ def _finishRoll(self):
+ self._restoreValues(self.adjacent_originals)
+
def _editFocus(self, position, priority):
duration = max(0, position - self.focus.start)
self.focus.setDuration(duration, snap=self.snap)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]