From 14c2ac85f913bd22429306e551c08b0fecba2563 Mon Sep 17 00:00:00 2001 From: Don Allingham Date: Mon, 11 Sep 2006 01:55:57 +0000 Subject: [PATCH] 2006-09-10 Don Allingham * src/DisplayTabls/_PersonEmbedList.py: enable dnd with people for associations svn: r7308 --- gramps2/ChangeLog | 4 ++++ .../src/DisplayTabs/_PersonRefEmbedList.py | 22 ++++++++++++++++++- 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/gramps2/ChangeLog b/gramps2/ChangeLog index 974f23554..8f570beec 100644 --- a/gramps2/ChangeLog +++ b/gramps2/ChangeLog @@ -1,3 +1,7 @@ +2006-09-10 Don Allingham + * src/DisplayTabls/_PersonEmbedList.py: enable dnd with people for + associations + 2006-09-09 Don Allingham * src/DisplayTabs/_EventEmbedList.py: bring up the event reference editor on drag-n-drop onto the event reference list diff --git a/gramps2/src/DisplayTabs/_PersonRefEmbedList.py b/gramps2/src/DisplayTabs/_PersonRefEmbedList.py index a01aab38e..69a595856 100644 --- a/gramps2/src/DisplayTabs/_PersonRefEmbedList.py +++ b/gramps2/src/DisplayTabs/_PersonRefEmbedList.py @@ -46,7 +46,7 @@ from _EmbeddedList import EmbeddedList class PersonRefEmbedList(EmbeddedList): _HANDLE_COL = 3 - _DND_TYPE = DdTargets.ADDRESS + _DND_TYPE = DdTargets.PERSON_LINK _column_names = [ (_('Name'), 0, 250), @@ -59,6 +59,10 @@ class PersonRefEmbedList(EmbeddedList): EmbeddedList.__init__(self, dbstate, uistate, track, _('Associations'), PersonRefModel) + def get_ref_editor(self): + from Editors import EditPersonRef + return EditPersonRef + def get_data(self): return self.data @@ -94,3 +98,19 @@ class PersonRefEmbedList(EmbeddedList): def edit_callback(self, obj): self.rebuild() + + def _handle_drag(self, row, obj): + """ + And event reference that is from a drag and drop has + an unknown event reference type + """ + try: + from Editors import EditPersonRef + ref = RelLib.PersonRef() + ref.ref = obj + ref.rel = _('Unknown') + EditPersonRef( + self.dbstate, self.uistate, self.track, + ref, self.add_callback) + except Errors.WindowActiveError: + pass