2007-01-22 Alex Roitman <shura@gramps-project.org>
* src/Editors/_EditSource.py (query_response): Remove sourcerefs from repos (indirectly, through secondary objects). * src/Editors/_EditPlace.py (query_response): Avoid db walk. * src/DataViews/_FamilyList.py (remove): Set busy cursor. * src/DataViews/_PlaceView.py (remove): Set busy cursor. * src/DataViews/_SourceView.py (remove): Set busy cursor. * src/DataViews/_MediaView.py (remove): Set busy cursor. * src/DataViews/_EventView.py (remove): Set busy cursor. * src/DataViews/_RepositoryView.py (remove): Set busy cursor. * src/Editors/_EditEventRef.py (DelEventQuery): Remove unneeded class. * src/Filters/Rules/_HasTextMatchingSubstringOf.py: Remove unneeded import. * src/Filters/Rules/Person/_HasTextMatchingSubstringOf.py (cache_sources): Adapt to changes in get_source_referents. * src/Utils.py (get_source_referents): Use reference map, add repositories to the search results; (get_media_referents): Use reference map. svn: r7958
This commit is contained in:
@@ -185,17 +185,18 @@ class EditSource(EditPrimary):
|
||||
Config.sync()
|
||||
|
||||
class DelSrcQuery:
|
||||
def __init__(self,source,db,the_lists):
|
||||
def __init__(self,dbstate,uistate,source,the_lists):
|
||||
self.source = source
|
||||
self.db = db
|
||||
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) = self.the_lists
|
||||
(person_list,family_list,event_list,place_list,source_list,
|
||||
media_list,repo_list) = self.the_lists
|
||||
|
||||
src_handle_list = [self.source.get_handle()]
|
||||
|
||||
@@ -229,6 +230,11 @@ class DelSrcQuery:
|
||||
media.remove_source_references(src_handle_list)
|
||||
self.db.commit_media_object(media,trans)
|
||||
|
||||
for handle in repo_list:
|
||||
repo = self.db.get_repository_from_handle(handle)
|
||||
repo.remove_source_references(src_handle_list)
|
||||
self.db.commit_repository(repo,trans)
|
||||
|
||||
self.db.enable_signals()
|
||||
self.db.remove_source(self.source.get_handle(),trans)
|
||||
self.db.transaction_commit(
|
||||
|
||||
Reference in New Issue
Block a user