* src/AddMedia.py: Remove unneeded update argument.
* src/ArgHandler.py (auto_save_load): Mysterious workaround :-). * src/EditPlace.py (display_references): Drop media objects; (DeletePlaceQuery.query_response): use proper handle removal. * src/GrampsBSDDB.py (remove_object): emit media signal. * src/GrampsDbBase.py (GrampsDbBase): Add media-related signals; (commit_media_object,transaction_commit,undo): emit media signals. * src/ImageSelect.py (GlobalMediaProperties,DeleteMediaQuery): Remove unneeded update argument. * src/MediaView.py (media_add,media_update,media_delete): Add callbacks; (change_db): connect callbacks to signals; (popup_change_description): Call property editor without callback param; (on_add_clicked): Call AddMedia without callback param; (add_object,update_display,add_to_display): Remove unneeded methods; (on_edit_clicked): call property editor without callback param; (on_delete_clicked): call deleter without callback param; (on_drag_data_received): Call property editor without callback param. * src/PlaceView.py (new_place_after_edit): Remove unneeded method; (delete_place): Remove unneeded tree update; (is_used) Add method; (on_delete_clicked): Use new detection method. svn: r4287
This commit is contained in:
parent
94b27d450c
commit
9a6894df98
@ -1,3 +1,25 @@
|
||||
2005-04-03 Alex Roitman <shura@gramps-project.org>
|
||||
* src/AddMedia.py: Remove unneeded update argument.
|
||||
* src/ArgHandler.py (auto_save_load): Mysterious workaround :-).
|
||||
* src/EditPlace.py (display_references): Drop media objects;
|
||||
(DeletePlaceQuery.query_response): use proper handle removal.
|
||||
* src/GrampsBSDDB.py (remove_object): emit media signal.
|
||||
* src/GrampsDbBase.py (GrampsDbBase): Add media-related signals;
|
||||
(commit_media_object,transaction_commit,undo): emit media signals.
|
||||
* src/ImageSelect.py (GlobalMediaProperties,DeleteMediaQuery):
|
||||
Remove unneeded update argument.
|
||||
* src/MediaView.py (media_add,media_update,media_delete): Add
|
||||
callbacks; (change_db): connect callbacks to signals;
|
||||
(popup_change_description): Call property editor without callback param;
|
||||
(on_add_clicked): Call AddMedia without callback param;
|
||||
(add_object,update_display,add_to_display): Remove unneeded methods;
|
||||
(on_edit_clicked): call property editor without callback param;
|
||||
(on_delete_clicked): call deleter without callback param;
|
||||
(on_drag_data_received): Call property editor without callback param.
|
||||
* src/PlaceView.py (new_place_after_edit): Remove unneeded method;
|
||||
(delete_place): Remove unneeded tree update; (is_used) Add method;
|
||||
(on_delete_clicked): Use new detection method.
|
||||
|
||||
2005-04-02 Don Allingham <don@gramps-project.org>
|
||||
* src/ReadGedcom.py: emit proper signals to notify of a database
|
||||
rebuild, handle parent/child relationships better - eliminate
|
||||
|
@ -70,12 +70,11 @@ class AddMediaObject:
|
||||
a media object from the file system, while providing a description.
|
||||
"""
|
||||
|
||||
def __init__(self,db,update=None):
|
||||
def __init__(self,db):
|
||||
"""
|
||||
Creates and displays the dialog box
|
||||
|
||||
db - the database in which the new object is to be stored
|
||||
update - a function to call to update the display
|
||||
"""
|
||||
self.db = db
|
||||
self.glade = gtk.glade.XML(const.imageselFile,"imageSelect","gramps")
|
||||
@ -85,7 +84,6 @@ class AddMediaObject:
|
||||
self.file_text = self.glade.get_widget("fname")
|
||||
self.internal = self.glade.get_widget('internal')
|
||||
self.internal.connect('toggled',self.internal_toggled)
|
||||
self.update = update
|
||||
self.temp_name = ""
|
||||
self.object = None
|
||||
|
||||
@ -145,8 +143,6 @@ class AddMediaObject:
|
||||
self.object = mobj
|
||||
self.db.commit_media_object(mobj,trans)
|
||||
self.db.transaction_commit(trans,_("Add Media Object"))
|
||||
if self.update:
|
||||
self.update(mobj.get_handle())
|
||||
|
||||
def on_name_changed(self,*obj):
|
||||
"""
|
||||
|
@ -225,6 +225,12 @@ class ArgHandler:
|
||||
filename = os.path.normpath(os.path.abspath(filename))
|
||||
filetype = GrampsMime.get_type(filename)
|
||||
if filetype == const.app_gramps:
|
||||
# FIXME: For some reason the following two lines are needed
|
||||
# to prevent source view from getting out of sync. Makes no
|
||||
# sense to me right now, but it seems to fix a problem and
|
||||
# make no harm otherwise. Should remove when understood.
|
||||
import GrampsBSDDB
|
||||
self.parent.db = GrampsBSDDB.GrampsBSDDB()
|
||||
self.parent.read_file(filename)
|
||||
return 1
|
||||
elif filetype == const.app_gramps_xml:
|
||||
|
@ -497,7 +497,6 @@ class EditPlace:
|
||||
def display_references(self):
|
||||
pevent = []
|
||||
fevent = []
|
||||
mlist = []
|
||||
msg = ""
|
||||
for key in self.db.get_person_handles(sort_handles=False):
|
||||
p = self.db.get_person_from_handle(key)
|
||||
@ -511,10 +510,6 @@ class EditPlace:
|
||||
event = self.db.get_event_from_handle(event_handle)
|
||||
if event and event.get_place_handle() == self.place.get_handle():
|
||||
fevent.append((f,event))
|
||||
for media_handle in self.db.get_media_object_handles():
|
||||
obj = self.db.get_object_from_handle(media_handle)
|
||||
if obj and obj.get_place_handle() == self.place.get_handle():
|
||||
mlist.append(object)
|
||||
|
||||
any = 0
|
||||
if len(pevent) > 0:
|
||||
@ -546,15 +541,6 @@ class EditPlace:
|
||||
|
||||
msg = msg + ( t % (fname,e[0].get_gramps_id(),_(e[1].get_name())))
|
||||
|
||||
if len(mlist) > 0:
|
||||
any = 1
|
||||
msg = msg + "\n%s\n" % _("Media Objects")
|
||||
msg = msg + "_________________________\n\n"
|
||||
t = _("%s [%s]\n")
|
||||
|
||||
for o in mlist:
|
||||
msg = msg + ( t % (o.get_description(),o.get_gramps_id()))
|
||||
|
||||
self.refinfo.get_buffer().set_text(msg)
|
||||
if any:
|
||||
Utils.bold_label(self.refs_label)
|
||||
@ -591,22 +577,25 @@ class DeletePlaceQuery:
|
||||
def query_response(self):
|
||||
trans = self.db.transaction_begin()
|
||||
|
||||
self.db.remove_place(self.place.get_handle(),trans)
|
||||
place_handle = self.place.get_handle()
|
||||
self.db.remove_place(place_handle,trans)
|
||||
|
||||
for key in self.db.get_person_handles(sort_handles=False):
|
||||
p = self.db.get_person_from_handle(key)
|
||||
for event_handle in [p.get_birth_handle(), p.get_death_handle()] + p.get_event_list():
|
||||
event = self.db.get_event_from_handle(event_handle)
|
||||
if event and event.get_place_handle() == self.place.get_handle():
|
||||
event.set_place_handle(None)
|
||||
self.db.commit_event(event,trans)
|
||||
for handle in self.db.get_person_handles(sort_handles=False):
|
||||
person = self.db.get_person_from_handle(handle)
|
||||
if person.has_handle_reference('Place',place_handle):
|
||||
person.remove_handle_references('Place',place_handle)
|
||||
self.db.commit_person(person,trans)
|
||||
|
||||
for fid in self.db.get_family_handles():
|
||||
f = self.db.get_family_from_handle(fid)
|
||||
for event_handle in f.get_event_list():
|
||||
event = self.db.get_event_from_handle(event_handle)
|
||||
if event and event.get_place_handle() == self.place.get_handle():
|
||||
event.set_place_handle(None)
|
||||
for handle in self.db.get_family_handles():
|
||||
family = self.db.get_family_from_handle(handle)
|
||||
if family.has_handle_reference('Place',place_handle):
|
||||
family.remove_handle_references('Place',place_handle)
|
||||
self.db.commit_family(family,trans)
|
||||
|
||||
for handle in self.db.get_event_handles():
|
||||
event = self.db.get_event_from_handle(handle)
|
||||
if event.has_handle_reference('Place',place_handle):
|
||||
event.remove_handle_references('Place',place_handle)
|
||||
self.db.commit_event(event,trans)
|
||||
|
||||
self.db.transaction_commit(trans,
|
||||
|
@ -277,7 +277,7 @@ class GrampsBSDDB(GrampsDbBase):
|
||||
self.genderStats.uncount_person (person)
|
||||
if transaction != None:
|
||||
transaction.add(PERSON_KEY,handle,person.serialize())
|
||||
if transaction and not transaction.batch:
|
||||
if not transaction.batch:
|
||||
self.emit('person-delete',([str(handle)],))
|
||||
self.person_map.delete(str(handle))
|
||||
|
||||
@ -286,7 +286,7 @@ class GrampsBSDDB(GrampsDbBase):
|
||||
if transaction != None:
|
||||
old_data = self.source_map.get(str(handle))
|
||||
transaction.add(SOURCE_KEY,handle,old_data)
|
||||
if transaction and not transaction.batch:
|
||||
if not transaction.batch:
|
||||
self.emit('source-delete',([handle],))
|
||||
self.source_map.delete(str(handle))
|
||||
|
||||
@ -295,7 +295,7 @@ class GrampsBSDDB(GrampsDbBase):
|
||||
if transaction != None:
|
||||
old_data = self.family_map.get(str(handle))
|
||||
transaction.add(FAMILY_KEY,handle,old_data)
|
||||
if transaction and not transaction.batch:
|
||||
if not transaction.batch:
|
||||
self.emit('family-delete',([str(handle)],))
|
||||
self.family_map.delete(str(handle))
|
||||
|
||||
@ -311,7 +311,7 @@ class GrampsBSDDB(GrampsDbBase):
|
||||
if transaction != None:
|
||||
old_data = self.place_map.get(handle)
|
||||
transaction.add(PLACE_KEY,handle,old_data)
|
||||
if transaction and not transaction.batch:
|
||||
if not transaction.batch:
|
||||
self.emit('place-delete',([handle],))
|
||||
self.place_map.delete(str(handle))
|
||||
|
||||
@ -320,6 +320,8 @@ class GrampsBSDDB(GrampsDbBase):
|
||||
if transaction != None:
|
||||
old_data = self.media_map.get(handle)
|
||||
transaction.add(PLACE_KEY,handle,old_data)
|
||||
if not transaction.batch:
|
||||
self.emit('media-delete',([handle],))
|
||||
self.media_map.delete(str(handle))
|
||||
|
||||
def get_person_from_gramps_id(self,val):
|
||||
|
@ -127,7 +127,11 @@ class GrampsDbBase(GrampsDBCallback.GrampsDBCallback):
|
||||
'place-add' : (list,),
|
||||
'place-update' : (list,),
|
||||
'place-delete' : (list,),
|
||||
'place-rebuild' : None
|
||||
'place-rebuild' : None,
|
||||
'media-add' : (list,),
|
||||
'media-update' : (list,),
|
||||
'media-delete' : (list,),
|
||||
'media-rebuild' : None,
|
||||
}
|
||||
|
||||
def __init__(self):
|
||||
@ -285,6 +289,11 @@ class GrampsDbBase(GrampsDBCallback.GrampsDBCallback):
|
||||
old_data = self.media_map.get(handle)
|
||||
transaction.add(MEDIA_KEY,handle,old_data)
|
||||
self.media_map[handle] = obj.serialize()
|
||||
if transaction and not transaction.batch:
|
||||
if old_data:
|
||||
self.emit('media-update',([handle],))
|
||||
else:
|
||||
self.emit('media-add',([handle],))
|
||||
|
||||
def commit_source(self,source,transaction,change_time=None):
|
||||
"""
|
||||
@ -690,8 +699,6 @@ class GrampsDbBase(GrampsDBCallback.GrampsDBCallback):
|
||||
if place.get_gramps_id() == None:
|
||||
place.set_gramps_id(self.find_next_place_gramps_id())
|
||||
self.commit_place(place,transaction)
|
||||
if transaction and not transaction.batch:
|
||||
self.emit('place-add',([place.handle],))
|
||||
return place.get_handle()
|
||||
|
||||
def add_object(self,obj,transaction):
|
||||
@ -955,6 +962,7 @@ class GrampsDbBase(GrampsDBCallback.GrampsDBCallback):
|
||||
self.emit('family-rebuild')
|
||||
self.emit('place-rebuild')
|
||||
self.emit('source-rebuild')
|
||||
self.emit('media-rebuild')
|
||||
|
||||
def undo(self):
|
||||
"""
|
||||
@ -1005,8 +1013,10 @@ class GrampsDbBase(GrampsDBCallback.GrampsDBCallback):
|
||||
self.emit('place-update',([str(handle),]))
|
||||
elif key == MEDIA_KEY:
|
||||
if data == None:
|
||||
self.emit('media-delete',([str(handle),]))
|
||||
del self.media_map[str(handle)]
|
||||
else:
|
||||
self.emit('media-update',([str(handle),]))
|
||||
self.media_map[str(handle)] = data
|
||||
|
||||
if self.undo_callback:
|
||||
|
@ -484,7 +484,7 @@ class Gallery(ImageSelect):
|
||||
photo.set_path(name)
|
||||
self.parent.lists_changed = 1
|
||||
if GrampsKeys.get_media_global():
|
||||
GlobalMediaProperties(self.db,photo,None,
|
||||
GlobalMediaProperties(self.db,photo,
|
||||
self,self.parent_window)
|
||||
elif protocol != "":
|
||||
import urllib
|
||||
@ -512,7 +512,7 @@ class Gallery(ImageSelect):
|
||||
self.add_thumbnail(oref)
|
||||
self.parent.lists_changed = 1
|
||||
if GrampsKeys.get_media_global():
|
||||
GlobalMediaProperties(self.db,photo,None,
|
||||
GlobalMediaProperties(self.db,photo,
|
||||
self,self.parent_window)
|
||||
else:
|
||||
if self.db.has_object_handle(data.data):
|
||||
@ -873,7 +873,7 @@ class LocalMediaProperties:
|
||||
#-------------------------------------------------------------------------
|
||||
class GlobalMediaProperties:
|
||||
|
||||
def __init__(self,db,obj,update,parent,parent_window=None):
|
||||
def __init__(self,db,obj,parent,parent_window=None):
|
||||
self.parent = parent
|
||||
self.dp = DateHandler.parser
|
||||
self.dd = DateHandler.displayer
|
||||
@ -890,7 +890,6 @@ class GlobalMediaProperties:
|
||||
self.alist = self.obj.get_attribute_list()[:]
|
||||
self.lists_changed = 0
|
||||
self.db = db
|
||||
self.update = update
|
||||
self.refs = 0
|
||||
if obj:
|
||||
self.date_object = Date.Date(self.obj.get_date_object())
|
||||
@ -923,11 +922,6 @@ class GlobalMediaProperties:
|
||||
build_dropdown(self.place,self.place_list)
|
||||
|
||||
if self.obj:
|
||||
handle = self.obj.get_place_handle()
|
||||
pobj = self.db.get_place_from_handle(handle)
|
||||
if pobj:
|
||||
self.place.set_text(pobj.get_title())
|
||||
|
||||
self.date_entry.set_text(self.dd.display(self.date_object))
|
||||
|
||||
Utils.set_titles(self.window,
|
||||
@ -1207,8 +1201,6 @@ class GlobalMediaProperties:
|
||||
trans = self.db.transaction_begin()
|
||||
self.db.commit_media_object(self.obj,trans)
|
||||
self.db.transaction_commit(trans,_("Edit Media Object"))
|
||||
if self.update != None:
|
||||
self.update(self.obj)
|
||||
|
||||
def on_help_clicked(self, obj):
|
||||
"""Display the relevant portion of GRAMPS manual"""
|
||||
@ -1256,11 +1248,10 @@ class GlobalMediaProperties:
|
||||
|
||||
class DeleteMediaQuery:
|
||||
|
||||
def __init__(self,media_handle,db,the_lists,update):
|
||||
def __init__(self,media_handle,db,the_lists):
|
||||
self.db = db
|
||||
self.media_handle = media_handle
|
||||
self.the_lists = the_lists
|
||||
self.update = update
|
||||
|
||||
def query_response(self):
|
||||
trans = self.db.transaction_begin()
|
||||
@ -1305,8 +1296,6 @@ class DeleteMediaQuery:
|
||||
|
||||
self.db.remove_object(self.media_handle,trans)
|
||||
self.db.transaction_commit(trans,_("Remove Media Object"))
|
||||
if self.update:
|
||||
self.update(self.media_handle)
|
||||
|
||||
def build_dropdown(entry,strings):
|
||||
store = gtk.ListStore(str)
|
||||
|
@ -25,9 +25,9 @@
|
||||
# standard python modules
|
||||
#
|
||||
#-------------------------------------------------------------------------
|
||||
import string
|
||||
import os
|
||||
import gc
|
||||
from gettext import gettext as _
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
@ -51,16 +51,8 @@ import ImgManip
|
||||
import RelImage
|
||||
import DisplayModels
|
||||
import GrampsMime
|
||||
|
||||
from QuestionDialog import QuestionDialog, ErrorDialog, WarningDialog
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
# internationalization
|
||||
#
|
||||
#-------------------------------------------------------------------------
|
||||
from gettext import gettext as _
|
||||
|
||||
column_names = [
|
||||
_('Title'),
|
||||
_('ID'),
|
||||
@ -160,7 +152,24 @@ class MediaView:
|
||||
self.list.append_column(column)
|
||||
index += 1
|
||||
|
||||
def media_add(self,handle_list):
|
||||
for handle in handle_list:
|
||||
self.model.add_row_by_handle(handle)
|
||||
|
||||
def media_update(self,handle_list):
|
||||
for handle in handle_list:
|
||||
self.model.update_row_by_handle(handle)
|
||||
|
||||
def media_delete(self,handle_list):
|
||||
for handle in handle_list:
|
||||
self.model.delete_row_by_handle(handle)
|
||||
|
||||
def change_db(self,db):
|
||||
db.connect('media-add', self.media_add)
|
||||
db.connect('media-update', self.media_update)
|
||||
db.connect('media-delete', self.media_delete)
|
||||
db.connect('media-rebuild',self.build_tree)
|
||||
|
||||
self.db = db
|
||||
self.build_columns()
|
||||
self.build_tree()
|
||||
@ -267,24 +276,14 @@ class MediaView:
|
||||
os.execvp(const.editor,[const.editor, self.obj.get_path()])
|
||||
|
||||
def popup_change_description(self, obj):
|
||||
ImageSelect.GlobalMediaProperties(
|
||||
self.db, self.obj, self.update_display, self,self.topWindow)
|
||||
ImageSelect.GlobalMediaProperties(self.db,self.obj,self,self.topWindow)
|
||||
|
||||
def on_add_clicked(self,obj):
|
||||
"""Add a new media object to the media list"""
|
||||
import AddMedia
|
||||
am = AddMedia.AddMediaObject(self.db,self.add_object)
|
||||
am = AddMedia.AddMediaObject(self.db)
|
||||
am.run()
|
||||
|
||||
def add_object(self,mobj_handle):
|
||||
self.model.add_row_by_handle(mobj_handle)
|
||||
|
||||
def update_display(self,mobj):
|
||||
self.model.update_row_by_handle(mobj.get_handle())
|
||||
|
||||
def add_to_display(self,mobj):
|
||||
self.model.add_row_by_handle(mobj.get_handle())
|
||||
|
||||
def on_edit_clicked(self,obj):
|
||||
"""Edit the properties of an existing media object in the media list"""
|
||||
|
||||
@ -293,9 +292,7 @@ class MediaView:
|
||||
handle = list_store.get_value(node,_HANDLE_COL)
|
||||
obj = self.db.get_object_from_handle(handle)
|
||||
if obj.get_mime_type():
|
||||
ImageSelect.GlobalMediaProperties(
|
||||
self.db,obj, self.update_display,
|
||||
self,self.topWindow)
|
||||
ImageSelect.GlobalMediaProperties(self.db,obj,self,self.topWindow)
|
||||
else:
|
||||
import NoteEdit
|
||||
NoteEdit.NoteEditor(obj,self.parent,self.topWindow,
|
||||
@ -314,8 +311,7 @@ class MediaView:
|
||||
handle = store.get_value(node,_HANDLE_COL)
|
||||
the_lists = Utils.get_media_referents(handle,self.db)
|
||||
|
||||
ans = ImageSelect.DeleteMediaQuery(handle,self.db,the_lists,
|
||||
self.model.delete_row_by_handle)
|
||||
ans = ImageSelect.DeleteMediaQuery(handle,self.db,the_lists)
|
||||
if filter(None,the_lists): # quick test for non-emptiness
|
||||
msg = _('This media object is currently being used. '
|
||||
'If you delete this object, it will be removed from '
|
||||
@ -358,7 +354,7 @@ class MediaView:
|
||||
|
||||
self.list.emit_stop_by_name('drag-data-received')
|
||||
if data and data.format == 8:
|
||||
d = string.strip(string.replace(data.data,'\0',' '))
|
||||
d = data.data.replace('\0',' ').strip()
|
||||
protocol,site,name, j,k,l = urlparse.urlparse(d)
|
||||
if protocol == "file":
|
||||
mime = GrampsMime.get_type(name)
|
||||
@ -375,7 +371,6 @@ class MediaView:
|
||||
self.build_tree()
|
||||
if GrampsKeys.get_media_global():
|
||||
ImageSelect.GlobalMediaProperties(self.db,photo,
|
||||
self.update_display,
|
||||
self,self.topWindow)
|
||||
elif protocol != "":
|
||||
import urllib
|
||||
@ -399,5 +394,5 @@ class MediaView:
|
||||
self.db.transaction_commit(trans,_("Add Media Object"))
|
||||
|
||||
if GrampsKeys.get_media_global():
|
||||
ImageSelect.GlobalMediaProperties(self.db,photo,None,
|
||||
ImageSelect.GlobalMediaProperties(self.db,photo,
|
||||
self,self.topWindow)
|
||||
|
@ -183,56 +183,38 @@ class PlaceView:
|
||||
def on_add_place_clicked(self,obj):
|
||||
EditPlace.EditPlace(self.parent,RelLib.Place())
|
||||
|
||||
def new_place_after_edit(self,place):
|
||||
self.model.add_row_by_handle(place.get_handle())
|
||||
|
||||
def delete_place(self,place):
|
||||
trans = self.parent.db.transaction_begin()
|
||||
place_handle = place.get_handle()
|
||||
self.parent.db.remove_place(place_handle,trans)
|
||||
title_msg = _("Delete Place (%s)") % place.get_title()
|
||||
self.parent.db.transaction_commit(trans,title_msg)
|
||||
self.model.delete_row_by_handle(place_handle)
|
||||
|
||||
def is_used(self,place_handle):
|
||||
for handle in self.parent.db.get_person_handles(sort_handles=False):
|
||||
person = self.parent.db.get_person_from_handle(handle)
|
||||
if person.has_handle_reference('Place',place_handle):
|
||||
return True
|
||||
|
||||
for handle in self.parent.db.get_family_handles():
|
||||
family = self.parent.db.get_family_from_handle(handle)
|
||||
if family.has_handle_reference('Place',place_handle):
|
||||
return True
|
||||
|
||||
for handle in self.parent.db.get_event_handles():
|
||||
event = self.parent.db.get_event_from_handle(handle)
|
||||
if event.has_handle_reference('Place',place_handle):
|
||||
return True
|
||||
|
||||
return False
|
||||
|
||||
def on_delete_clicked(self,obj):
|
||||
mlist = []
|
||||
self.selection.selected_foreach(self.blist,mlist)
|
||||
|
||||
for place_handle in mlist:
|
||||
used = 0
|
||||
for key in self.parent.db.get_person_handles(sort_handles=False):
|
||||
p = self.parent.db.get_person_from_handle(key)
|
||||
event_list = []
|
||||
for e in [p.get_birth_handle(),p.get_death_handle()] + p.get_event_list():
|
||||
event = self.parent.db.get_event_from_handle(e)
|
||||
if event:
|
||||
event_list.append(event)
|
||||
if p.get_lds_baptism():
|
||||
event_list.append(p.get_lds_baptism())
|
||||
if p.get_lds_endowment():
|
||||
event_list.append(p.get_lds_endowment())
|
||||
if p.get_lds_sealing():
|
||||
event_list.append(p.get_lds_sealing())
|
||||
for event in event_list:
|
||||
if event:
|
||||
if event.get_place_handle() == place_handle:
|
||||
used = 1
|
||||
|
||||
for fid in self.parent.db.get_family_handles():
|
||||
f = self.parent.db.get_family_from_handle(fid)
|
||||
event_list = []
|
||||
for event_id in f.get_event_list():
|
||||
event = self.parent.db.get_event_from_handle(event_id)
|
||||
if event:
|
||||
event_list.append(event)
|
||||
if f.get_lds_sealing():
|
||||
event_list.append(f.get_lds_sealing())
|
||||
for event in event_list:
|
||||
if event.get_place_handle() == place_handle:
|
||||
used = 1
|
||||
|
||||
place = self.parent.db.get_place_from_handle(place_handle)
|
||||
if used == 1:
|
||||
if self.is_used(place_handle):
|
||||
ans = EditPlace.DeletePlaceQuery(place,self.parent.db)
|
||||
QuestionDialog(
|
||||
_('Delete %s?') % place.get_title(),
|
||||
|
Loading…
Reference in New Issue
Block a user