2006-08-13 Don Allingham <don@gramps-project.org>

* src/DataViews/_MediaView.py: fix drag-n-drop
	* src/DisplayTabs/_GalleryTab.py: handle media obj and media ref 
	for drag-n-drop
	* src/DdTargets.py: add media ref type



svn: r7169
This commit is contained in:
Don Allingham
2006-08-14 01:50:47 +00:00
parent 7cd3ebaa77
commit 2d0da934cf
5 changed files with 29 additions and 19 deletions

View File

@@ -27,6 +27,7 @@
from gettext import gettext as _
import urlparse
import os
import cPickle as pickle
#-------------------------------------------------------------------------
#
@@ -128,17 +129,13 @@ class MediaView(PageView.ListView):
of the object
"""
# get the selected object, returning if not is defined
obj = self.get_selected()
if not obj:
return
selected_ids = self.selected_handles()
# pickle the data, and build the tuple to be passed
value = (self._DND_TYPE.drag_type, id(self), obj, self.find_index(obj))
data = pickle.dumps(value)
data = (self.drag_info().drag_type, id(self), selected_ids[0], 0)
sel_data.set(sel_data.target, 8 ,pickle.dumps(data))
# pass as a string (8 bits)
sel_data.set(sel_data.target, 8, data)
def drag_info(self):
return DdTargets.MEDIAOBJ
def find_index(self, obj):
"""