* src/DateParser.py: handle leap year in gregorial validity check

* src/MergeData.py: Preserve more data when merging
the 1.0.X patch from Julio Sanchez)
* src/plugins/ReadGedcom.py: Attach top leve source to the
person instead of the primary name (ported from	the 1.0.X patch
from Julio Sanchez)
* src/const.py: Add support for "Number of Children" attribute
(GEDCOM NCHI) (ported from the 1.0.X patch from Julio Sanchez)


svn: r3728
This commit is contained in:
Don Allingham
2004-11-15 02:07:21 +00:00
parent 986f3fe9aa
commit 3057994aca
5 changed files with 61 additions and 31 deletions

View File

@@ -235,8 +235,8 @@ class MergePeople:
for xdata in self.p2.get_alternate_names():
for data in lst:
if data.are_equal(xdata):
self.copy_note(xdata,data)
self.copy_sources(xdata,data)
self.copy_note(data,xdata)
self.copy_sources(data,xdata)
break
else:
self.p1.add_alternate_name(xdata)
@@ -246,8 +246,8 @@ class MergePeople:
for data in lst:
if data.get_type() == xdata.get_type() and \
data.getValue() == xdata.get_value():
self.copy_note(xdata,data)
self.copy_sources(xdata,data)
self.copy_note(data,xdata)
self.copy_sources(data,xdata)
break
else:
self.p1.add_attribute(xdata)
@@ -256,12 +256,22 @@ class MergePeople:
for xdata in self.p2.get_event_list():
for data in lst:
if data.are_equal(xdata):
self.copy_note(xdata,data)
self.copy_sources(xdata,data)
self.copy_note(data,xdata)
self.copy_sources(data,xdata)
break
else:
self.p1.add_event(xdata)
lst = self.p1.get_address_list()
for xdata in self.p2.getAddressList():
for data in lst:
if data.are_equal(xdata):
self.copy_note(data,xdata)
self.copy_sources(data,xdata)
break
else:
self.p1.addAddress(xdata)
lst = self.p1.get_url_list()[:]
for xdata in self.p2.get_url_list():
for data in lst:
@@ -345,6 +355,8 @@ class MergePeople:
old_note = old_note + "\n\n"
self.p1.set_note(old_note + self.p2.get_note())
self.copy_sources(self.p1,self.p2)
try:
self.db.remove_person(self.p2.get_handle())
self.db.personMap[self.p1.get_handle()] = self.p1