2007-03-27 Zsolt Foldvari <zfoldvar@users.sourceforge.net>
* src/GrampsDb/_GrampsDbBase.py: add note_bookmarks. * src/DataViews/_NoteView.py: 'add' and 'remove' functionalities added. * src/Editors/_EditNote.py: DeleteNoteQuery added. * src/DisplayTabs/_NoteModel.pya: unnecessary delete_tags call removed. * src/Utils.py: get_referents() and get_note_referents added(); get_source_referents() and get_media_referents() rewritten. svn: r8326
This commit is contained in:
@@ -247,3 +247,59 @@ class EditNote(EditPrimary):
|
||||
Config.set(Config.NOTE_WIDTH, width)
|
||||
Config.set(Config.NOTE_HEIGHT, height)
|
||||
Config.sync()
|
||||
|
||||
class DeleteNoteQuery:
|
||||
def __init__(self, dbstate, uistate, note, the_lists):
|
||||
self.note = note
|
||||
self.db = dbstate.db
|
||||
self.uistate = uistate
|
||||
self.the_lists = the_lists
|
||||
|
||||
def query_response(self):
|
||||
trans = self.db.transaction_begin()
|
||||
self.db.disable_signals()
|
||||
|
||||
(person_list, family_list, event_list, place_list, source_list,
|
||||
media_list, repo_list) = self.the_lists
|
||||
|
||||
note_handle = self.note.get_handle()
|
||||
|
||||
for handle in person_list:
|
||||
person = self.db.get_person_from_handle(handle)
|
||||
person.remove_note(note_handle)
|
||||
self.db.commit_person(person,trans)
|
||||
|
||||
for handle in family_list:
|
||||
family = self.db.get_family_from_handle(handle)
|
||||
family.remove_note(note_handle)
|
||||
self.db.commit_family(family,trans)
|
||||
|
||||
for handle in event_list:
|
||||
event = self.db.get_event_from_handle(handle)
|
||||
event.remove_note(note_handle)
|
||||
self.db.commit_event(event,trans)
|
||||
|
||||
for handle in place_list:
|
||||
place = self.db.get_place_from_handle(handle)
|
||||
place.remove_note(note_handle)
|
||||
self.db.commit_place(place,trans)
|
||||
|
||||
for handle in source_list:
|
||||
source = self.db.get_source_from_handle(handle)
|
||||
source.remove_note(note_handle)
|
||||
self.db.commit_source(source,trans)
|
||||
|
||||
for handle in media_list:
|
||||
media = self.db.get_object_from_handle(handle)
|
||||
media.remove_note(note_handle)
|
||||
self.db.commit_media_object(media,trans)
|
||||
|
||||
for handle in repo_list:
|
||||
repo = self.db.get_repository_from_handle(handle)
|
||||
repo.remove_note(note_handle)
|
||||
self.db.commit_repository(repo,trans)
|
||||
|
||||
self.db.enable_signals()
|
||||
self.db.remove_note(note_handle, trans)
|
||||
self.db.transaction_commit(
|
||||
trans,_("Delete Source (%s)") % self.note.get_gramps_id())
|
||||
|
Reference in New Issue
Block a user