[pitivi: 5/8] timeline.timeline: fix union and difference selection modes
- From: Edward Hervey <edwardrv src gnome org>
- To: svn-commits-list gnome org
- Subject: [pitivi: 5/8] timeline.timeline: fix union and difference selection modes
- Date: Sun, 3 May 2009 03:02:59 -0400 (EDT)
commit 631b796626e4559de8f4fca45a994eab8c929ac8
Author: Brandon Lewis <brandon_lewis berkeley edu>
Date: Tue Apr 21 19:52:07 2009 -0700
timeline.timeline: fix union and difference selection modes
---
pitivi/timeline/timeline.py | 11 +++++------
pitivi/ui/trackobject.py | 7 ++++---
2 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/pitivi/timeline/timeline.py b/pitivi/timeline/timeline.py
index f05ec99..17c38d3 100644
--- a/pitivi/timeline/timeline.py
+++ b/pitivi/timeline/timeline.py
@@ -289,14 +289,13 @@ class Selection(object, Signallable):
def setTo(self, selection, mode):
old_selection = self.selected
- if mode == SELECT:
- self.selected = selection
- elif mode == SELECT_ADD:
- self.selected.update(selection)
+ if mode == SELECT_ADD:
+ selection = self.selected | selection
elif mode == UNSELECT:
- self.selected.difference(selection)
+ selection = self.selected - selection
+ self.selected = selection
- for obj in self.selected:
+ for obj in self.selected - old_selection:
obj.selected = True
for obj in old_selection - self.selected:
obj.selected = False
diff --git a/pitivi/ui/trackobject.py b/pitivi/ui/trackobject.py
index c87a448..25ec2de 100644
--- a/pitivi/ui/trackobject.py
+++ b/pitivi/ui/trackobject.py
@@ -11,6 +11,7 @@ from view import View
import controller
from zoominterface import Zoomable
from pitivi.timeline.track import TrackError
+from pitivi.timeline.timeline import SELECT, SELECT_ADD, UNSELECT
from preview import Preview
import gst
from common import LAYER_HEIGHT_EXPANDED, LAYER_HEIGHT_COLLAPSED
@@ -164,11 +165,11 @@ class TrackObject(View, goocanvas.Group, Zoomable):
self._mousedown = Point(self._mousedown[0], 0)
def click(self, pos):
- mode = 0
+ mode = SELECT
if self._last_event.get_state() & gtk.gdk.SHIFT_MASK:
- mode = 1
+ mode = SELECT_ADD
elif self._last_event.get_state() & gtk.gdk.CONTROL_MASK:
- mode = 2
+ mode = UNSELECT
self._view.timeline.setSelectionToObj(
self._view.element, mode)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]