merge changes from gramps20

svn: r5482
This commit is contained in:
Alex Roitman
2005-12-06 06:38:09 +00:00
parent e0ff843bb4
commit 2f962b5f96
202 changed files with 112821 additions and 41664 deletions

View File

@@ -34,6 +34,7 @@ __version__ = "$Revision$"
#
#-------------------------------------------------------------------------
from gettext import gettext as _
import gc
#-------------------------------------------------------------------------
#
@@ -41,7 +42,6 @@ from gettext import gettext as _
#
#-------------------------------------------------------------------------
import gtk.glade
import gnome
import gobject
#-------------------------------------------------------------------------
@@ -49,17 +49,18 @@ import gobject
# gramps modules
#
#-------------------------------------------------------------------------
import GrampsDisplay
import RelLib
import const
import Utils
import PeopleModel
import Date
import DateHandler
import Marriage
import NameDisplay
import GenericFilter
from QuestionDialog import ErrorDialog, QuestionDialog2
import AutoComp
from WindowUtils import GladeIf
#-------------------------------------------------------------------------
#
@@ -94,6 +95,7 @@ class AddSpouse:
# the same gender as the current person.
self.glade = gtk.glade.XML(const.gladeFile, "spouseDialog","gramps")
self.gladeif = GladeIf(self.glade)
self.rel_combo = self.glade.get_widget("rel_combo")
self.spouse_list = self.glade.get_widget("spouse_list")
@@ -115,15 +117,14 @@ class AddSpouse:
Utils.set_titles(self.window,
self.glade.get_widget('title'),title,
_('Choose Spouse/Partner'))
self.glade.signal_autoconnect({
"on_select_spouse_clicked" : self.select_spouse_clicked,
"on_spouse_help_clicked" : self.on_spouse_help_clicked,
"on_show_toggled" : self.on_show_toggled,
"on_new_spouse_clicked" : self.new_spouse_clicked,
"destroy_passed_object" : Utils.destroy_passed_object
})
self.gladeif.connect('button117','clicked',self.close)
self.gladeif.connect('spouseDialog','delete_event',self.delete_event)
self.gladeif.connect('spouse_ok','clicked',self.select_spouse_clicked)
self.gladeif.connect('spouse_help','clicked',self.on_spouse_help_clicked)
self.gladeif.connect('spouseNewPerson','clicked',self.new_spouse_clicked)
self.gladeif.connect('showall','clicked',self.on_show_toggled)
self.rel_selector = AutoComp.StandardCustomSelector(
Utils.family_relations,self.rel_combo,
RelLib.Family.CUSTOM,RelLib.Family.MARRIED)
@@ -132,6 +133,13 @@ class AddSpouse:
self.window.window.set_cursor(gtk.gdk.Cursor(gtk.gdk.WATCH))
gobject.idle_add(self.update_data)
def delete_event(self,obj):
self.gladeif.close()
def close(self,obj):
self.gladeif.close()
self.window.destroy()
def build_all(self):
return None
@@ -169,7 +177,7 @@ class AddSpouse:
def on_spouse_help_clicked(self,obj):
"""Display the relevant portion of GRAMPS manual"""
gnome.help_display('gramps-manual','gramps-edit-quick')
GrampsDisplay.help('gramps-edit-quick')
def get_selected_ids(self):
mlist = []
@@ -289,7 +297,9 @@ class AddSpouse:
if not self.active_family:
self.active_family = RelLib.Family()
self.db.add_family(self.active_family,trans)
gid = self.db.find_next_family_gramps_id()
self.active_family.set_gramps_id(gid)
self.active_family.set_handle(self.db.create_id())
self.person.add_family_handle(self.active_family.get_handle())
self.db.commit_person(self.person,trans)
@@ -309,63 +319,13 @@ class AddSpouse:
self.db.transaction_commit(trans,_("Add Spouse"))
Utils.destroy_passed_object(obj)
gc.collect()
m = Marriage.Marriage(self.parent, self.active_family, self.parent.db)
m.on_add_clicked()
def relation_type_changed(self,obj):
gobject.idle_add(self.update_data)
def all_filter(self, person):
return person.get_gender() != self.sgender
def likely_filter(self, person):
if person.get_gender() == self.sgender:
return False
pd_id = person.get_death_handle()
pb_id = person.get_birth_handle()
if pd_id:
pdday = self.db.get_event_from_handle(pd_id).get_date_object()
else:
pdday = Date.Date()
if pb_id:
pbday = self.db.get_event_from_handle(pb_id).get_date_object()
else:
pbday = Date.Date()
if self.bday.get_year_valid():
if pbday.get_year_valid():
# reject if person birthdate differs more than
# 100 years from spouse birthdate
if abs(pbday.get_year() - self.bday.get_year()) > 100:
return 0
if pdday.get_year_valid():
# reject if person birthdate is after the spouse deathdate
if self.bday.get_year() + 10 > pdday.get_high_year():
return 0
# reject if person birthdate is more than 100 years
# before the spouse deathdate
if self.bday.get_high_year() + 100 < pdday.get_year():
return 0
if self.dday.get_year_valid():
if pbday.get_year_valid():
# reject if person deathdate was prior to
# the spouse birthdate
if self.dday.get_high_year() < pbday.get_year() + 10:
return 0
if pdday.get_year_valid():
# reject if person deathdate differs more than
# 100 years from spouse deathdate
if abs(pdday.get_year() - self.dday.get_year()) > 100:
return 0
return 1
def set_gender(self):
rel_i,rel_s = self.rel_selector.get_values()
if rel_i == RelLib.Family.CIVIL_UNION: