diff --git a/gramps/src/AbiWordDoc.py b/gramps/src/AbiWordDoc.py
index 87cca9be5..f29bf2c13 100644
--- a/gramps/src/AbiWordDoc.py
+++ b/gramps/src/AbiWordDoc.py
@@ -17,7 +17,15 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
+"""
+Provides a TextDoc based interface to the AbiWord document format.
+"""
+#-------------------------------------------------------------------------
+#
+# Imported Modules
+#
+#-------------------------------------------------------------------------
import os
import base64
@@ -25,26 +33,40 @@ from TextDoc import *
from latin_utf8 import latin_to_utf8
import const
import string
-import utils
-cnv = utils.fl2txt
+from utils import fl2txt
+#-------------------------------------------------------------------------
+#
+# Attemp to import the Python Imaging Library
+#
+#-------------------------------------------------------------------------
try:
import PIL.Image
no_pil = 0
except:
no_pil = 1
-
+#-------------------------------------------------------------------------
+#
+# Class Definitions
+#
+#-------------------------------------------------------------------------
class AbiWordDoc(TextDoc):
+ """AbiWord document generator. Inherits from the TextDoc generic
+ document interface class."""
def __init__(self,styles,type,orientation):
+ """Initializes the AbiWordDoc class, calling the __init__ routine
+ of the parent TextDoc class"""
TextDoc.__init__(self,styles,type,orientation)
self.f = None
self.level = 0
self.new_page = 0
def open(self,filename):
-
+ """Opens the document, writing the necessary header information.
+ AbiWord uses an XML format, so the document format is pretty easy
+ to understand"""
if filename[-4:] != ".abw":
self.filename = "%s.abw" % filename
else:
@@ -59,19 +81,20 @@ class AbiWordDoc(TextDoc):
self.f.write('orientation="portrait" ')
else:
self.f.write('orientation="landscape" ')
- self.f.write('width="%s" ' % cnv("%.4f",self.width/2.54))
- self.f.write('height="%s" ' % cnv("%.4f",self.height/2.54))
+ self.f.write('width="%s" ' % fl2txt("%.4f",self.width/2.54))
+ self.f.write('height="%s" ' % fl2txt("%.4f",self.height/2.54))
self.f.write('units="inch" page-scale="1.000000"/>\n')
self.f.write('\n')
def close(self):
+ """Write the trailing information and closes the file"""
self.f.write('\n')
if len(self.photo_list) > 0:
self.f.write('\n')
@@ -119,8 +142,8 @@ class AbiWordDoc(TextDoc):
self.f.write('' % height)
@@ -136,9 +159,9 @@ class AbiWordDoc(TextDoc):
self.f.write('text-align:center;')
else:
self.f.write('text-align:justify;')
- rmargin = cnv("%.4f",float(style.get_right_margin())/2.54)
- lmargin = cnv("%.4f",float(style.get_left_margin())/2.54)
- indent = cnv("%.4f",float(style.get_first_indent())/2.54)
+ rmargin = fl2txt("%.4f",float(style.get_right_margin())/2.54)
+ lmargin = fl2txt("%.4f",float(style.get_left_margin())/2.54)
+ indent = fl2txt("%.4f",float(style.get_first_indent())/2.54)
self.f.write(' margin-right:%sin;' % rmargin)
self.f.write(' margin-left:%sin;' % lmargin)
self.f.write(' tabstops:%sin/L;' % lmargin)
@@ -193,7 +216,7 @@ class AbiWordDoc(TextDoc):
self.f.write('; font-style:italic')
color = font.get_color()
if color != (0,0,0):
- self.f.write('; color:%2x%2x%2x' % color)
+ self.f.write('; color:%02x%02x%02x' % color)
if font.get_underline():
self.f.write('; text-decoration:underline')
self.f.write('">')
@@ -212,7 +235,7 @@ class AbiWordDoc(TextDoc):
self.f.write('; font-style:italic')
color = font.get_color()
if color != (0,0,0):
- self.f.write('; color:%2x%2x%2x' % color)
+ self.f.write('; color:%02x%02x%02x' % color)
if font.get_underline():
self.f.write('; text-decoration:underline')
self.f.write('">')
diff --git a/gramps/src/AddMedia.py b/gramps/src/AddMedia.py
index fb7743120..54563c0e1 100644
--- a/gramps/src/AddMedia.py
+++ b/gramps/src/AddMedia.py
@@ -18,6 +18,10 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
+"""
+Provides the interface to allow a person to add a media object to the database.
+"""
+
#-------------------------------------------------------------------------
#
# Standard python modules
@@ -124,7 +128,6 @@ class AddMediaObject:
see if the file exists. If it does, the imgae is loaded into
the preview window.
"""
-
filename = self.file_text.get_text()
basename = os.path.basename(filename)
(root,ext) = os.path.splitext(basename)
diff --git a/gramps/src/AddSpouse.py b/gramps/src/AddSpouse.py
index cbe4d3673..1ee1f9013 100644
--- a/gramps/src/AddSpouse.py
+++ b/gramps/src/AddSpouse.py
@@ -17,6 +17,10 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
+"""
+The AddSpouse module provides the AddSpouse class that allows the user to
+add a new spouse to the active person.
+"""
#-------------------------------------------------------------------------
#
diff --git a/gramps/src/AddrEdit.py b/gramps/src/AddrEdit.py
index ef3c63e39..1ef115970 100644
--- a/gramps/src/AddrEdit.py
+++ b/gramps/src/AddrEdit.py
@@ -17,6 +17,10 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
+"""
+The AddrEdit module provides the AddressEditor class. This provides a
+mechanism for the user to edit address information.
+"""
#-------------------------------------------------------------------------
#
@@ -33,6 +37,7 @@ import libglade
import const
import utils
import Date
+import RelLib
from intl import gettext
_ = gettext
@@ -44,7 +49,7 @@ _ = gettext
#-------------------------------------------------------------------------
class AddressEditor:
"""
- Displays a dialog that allows the user to edit a address.
+ Displays a dialog that allows the user to edit an address.
"""
def __init__(self,parent,addr):
"""
@@ -110,7 +115,7 @@ class AddressEditor:
def ok_clicked(self,obj):
"""
Called when the OK button is pressed. Gets data from the
- form and updates the Address data structure
+ form and updates the Address data structure.
"""
date = self.addr_start.get_text()
street = self.street.get_text()
@@ -122,7 +127,7 @@ class AddressEditor:
priv = self.priv.get_active()
if self.addr == None:
- self.addr = Address()
+ self.addr = RelLib.Address()
self.addr.setSourceRefList(self.srcreflist)
self.parent.plist.append(self.addr)
@@ -154,27 +159,7 @@ class AddressEditor:
self.check(self.addr.getNote,self.addr.setNote,note)
self.check(self.addr.getPrivacy,self.addr.setPrivacy,priv)
-# if self.addr.getState() != state:
-# self.addr.setState(state)
-# self.parent.lists_changed = 1
-# if self.addr.getStreet() != street:
-# self.addr.setStreet(street)
-# self.parent.lists_changed = 1
-# if self.addr.getCountry() != country:
-# self.addr.setCountry(country)
-# self.parent.lists_changed = 1
-# if self.addr.getCity() != city:
-# self.addr.setCity(city)
-# self.parent.lists_changed = 1
-# if self.addr.getPostal() != postal:
-# self.addr.setPostal(postal)
-# self.parent.lists_changed = 1
-# if self.addr.getNote() != note:
-# self.addr.setNote(note)
-# self.parent.lists_changed = 1
-# if self.addr.getPrivacy() != priv:
-# self.addr.setPrivacy(priv)
-# self.parent.lists_changed = 1
-
def src_changed(parent):
+ """Sets the lists_changed flag of the parent object. Used as a callback
+ to the source editor, so the source editor can indicate a change."""
parent.lists_changed = 1
diff --git a/gramps/src/AttrEdit.py b/gramps/src/AttrEdit.py
index 363ffe1c0..200b00688 100644
--- a/gramps/src/AttrEdit.py
+++ b/gramps/src/AttrEdit.py
@@ -17,6 +17,10 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
+"""
+The AttrEdit module provides the AddressEditor class. This provides a
+mechanism for the user to edit address information.
+"""
#-------------------------------------------------------------------------
#
@@ -44,8 +48,18 @@ _ = gettext
#
#-------------------------------------------------------------------------
class AttributeEditor:
-
+ """
+ Displays a dialog that allows the user to edit an attribute.
+ """
def __init__(self,parent,attrib,title,list):
+ """
+ Displays the dialog box.
+
+ parent - The class that called the Address editor.
+ attrib - The attribute that is to be edited
+ title - The title of the dialog box
+ list - list of options for the pop down menu
+ """
self.parent = parent
self.attrib = attrib
self.top = libglade.GladeXML(const.dialogFile, "attr_edit")
@@ -84,16 +98,20 @@ class AttributeEditor:
self.window.set_data("o",self)
self.top.signal_autoconnect({
"destroy_passed_object" : utils.destroy_passed_object,
- "on_attr_edit_ok_clicked" : self.on_attrib_edit_ok_clicked,
+ "on_attr_edit_ok_clicked" : self.on_ok_clicked,
"on_combo_insert_text" : utils.combo_insert_text,
- "on_source_clicked" : self.on_attrib_source_clicked
+ "on_source_clicked" : self.on_source_clicked
})
- def on_attrib_source_clicked(self,obj):
+ def on_source_clicked(self,obj):
+ """Displays the SourceSelector, allowing sources to be edited"""
Sources.SourceSelector(self.srcreflist,self.parent,src_changed)
- def on_attrib_edit_ok_clicked(self,obj):
-
+ def on_ok_clicked(self,obj):
+ """
+ Called when the OK button is pressed. Gets data from the
+ form and updates the Attribute data structure.
+ """
type = self.type_field.get_text()
value = self.value_field.get_text()
note = self.note_field.get_chars(0,-1)
@@ -104,28 +122,27 @@ class AttributeEditor:
self.attrib.setSourceRefList(self.srcreflist)
self.parent.alist.append(self.attrib)
- self.update_attrib(type,value,note,priv)
+ self.update(type,value,note,priv)
self.parent.redraw_attr_list()
utils.destroy_passed_object(obj)
- def update_attrib(self,type,value,note,priv):
-
- if self.attrib.getType() != const.save_pattr(type):
- self.attrib.setType(const.save_pattr(type))
- self.parent.lists_changed = 1
-
- if self.attrib.getValue() != value:
- self.attrib.setValue(value)
- self.parent.lists_changed = 1
-
- if self.attrib.getNote() != note:
- self.attrib.setNote(note)
- self.parent.lists_changed = 1
-
- if self.attrib.getPrivacy() != priv:
- self.attrib.setPrivacy(priv)
+ def check(self,get,set,data):
+ """Compares a data item, updates if necessary, and sets the
+ parents lists_changed flag"""
+ if get() != data:
+ set(data)
self.parent.lists_changed = 1
+
+ def update(self,type,value,note,priv):
+ """Compares the data items, and updates if necessary"""
+ ntype = const.save_pattr(type)
+ self.check(self.attrib.getType,self.attrib.setType,ntype)
+ self.check(self.attrib.getValue,self.attrib.setValue,value)
+ self.check(self.attrib.getNote,self.attrib.setNote,note)
+ self.check(self.attrib.getPrivacy,self.attrib.setPrivacy,priv)
def src_changed(parent):
+ """Sets the lists_changed flag of the parent object. Used as a callback
+ to the source editor, so the source editor can indicate a change."""
parent.lists_changed = 1
diff --git a/gramps/src/Calendar.py b/gramps/src/Calendar.py
index 68e274e0e..0671bf155 100644
--- a/gramps/src/Calendar.py
+++ b/gramps/src/Calendar.py
@@ -61,7 +61,7 @@ _AM9_32_43 = ((15 * _HALAKIM_PER_HOUR) + 589)
#-------------------------------------------------------------------------
#
-#
+# Conversion tables
#
#-------------------------------------------------------------------------
monthsPerYear = [
@@ -76,7 +76,7 @@ yearOffset = [
#-------------------------------------------------------------------------
#
-#
+# Tasks
#
#-------------------------------------------------------------------------
@@ -99,6 +99,7 @@ def sdn_to_french(sdn):
def sdn_to_gregorian(sdn):
+ """Converts an SDN number to a gregorial date"""
if sdn <= 0:
return (0,0,0)
@@ -133,7 +134,7 @@ def sdn_to_gregorian(sdn):
return (year,month,day)
def gregorian_to_sdn(iyear,imonth,iday):
-
+ """Converts a gregorian date to an SDN number"""
# check for invalid dates
if iyear==0 or iyear<-4714 or imonth<=0 or imonth>12 or iday<=0 or iday>31:
return 0
@@ -164,6 +165,7 @@ def gregorian_to_sdn(iyear,imonth,iday):
def sdn_to_julian(sdn):
+ """Converts an SDN number to a Julian date"""
if sdn <= 0 :
return (0,0,0)
@@ -193,6 +195,7 @@ def sdn_to_julian(sdn):
return (year,month,day)
def julian_to_sdn(iyear,imonth,iday):
+ """Converts a Julian calendar date to an SDN number"""
# check for invalid dates
if iyear==0 or iyear<-4713 or imonth<=0 or imonth>12 or iday<=0 or iday>31:
@@ -329,6 +332,7 @@ def FindStartOfYear(year):
return (pMetonicCycle, pMetonicYear, pMoladDay, pMoladHalakim, pTishri1)
def sdn_to_jewish(sdn):
+ """Converts an SDN number to a Julian calendar date"""
if sdn <= _H_SDN_OFFSET :
return (0,0,0)
@@ -439,6 +443,7 @@ def sdn_to_jewish(sdn):
def jewish_to_sdn(year, month, day):
+ """Converts a Jewish calendar date to an SDN number"""
if year <= 0 or day <= 0 or day > 30 :
return 0
diff --git a/gramps/src/Date.py b/gramps/src/Date.py
index 52a10fafa..e17eae354 100644
--- a/gramps/src/Date.py
+++ b/gramps/src/Date.py
@@ -461,12 +461,18 @@ class SingleDate:
retval = str(self.year)
elif self.year == UNDEF:
retval = _mname[self.month]
- else:
- retval = "%s %d" % (_mname[self.month],self.year)
+ else:
+ try:
+ retval = "%s %d" % (_mname[self.month],self.year)
+ except:
+ retval = "**** %d %d %d ****" % (self.year,self.month,self.day)
elif self.month == UNDEF:
retval = str(self.year)
else:
- month = _mname[self.month]
+ try:
+ month = _mname[self.month]
+ except:
+ month = ""
if self.year == UNDEF:
retval = "%s %d, ????" % (month,self.day)
else:
@@ -830,6 +836,8 @@ class SingleDate:
else:
self.setMonthVal(matches[1])
self.setYearVal(matches[2])
+ if self.getMonth() > 13:
+ raise Date.Error
return 1
match = SingleDate.fmt3.match(text)
diff --git a/gramps/src/EditPerson.py b/gramps/src/EditPerson.py
index 9de2ee6f6..ee243f594 100644
--- a/gramps/src/EditPerson.py
+++ b/gramps/src/EditPerson.py
@@ -1222,7 +1222,7 @@ def birth_dates_in_order(list):
for i in range(len(list)):
child = list[i]
bday = child.getBirth().getDateObj()
- child_date = sort.build_sort_event(bday)
+ child_date = sort.build_sort_date(bday)
if (child_date == "99999999"):
continue
if (prev_date <= child_date): # <= allows for twins
@@ -1246,13 +1246,13 @@ def reorder_child_list(person, list):
return(list)
# Build the person's date string once
- person_bday = sort.build_sort_event(person.getBirth().getDateObj())
+ person_bday = sort.build_sort_date(person.getBirth().getDateObj())
# First, see if the person needs to be moved forward in the list
index = list.index(person)
target = index
for i in range(index-1, -1, -1):
- other_bday = sort.build_sort_event(list[i].getBirth().getDateObj())
+ other_bday = sort.build_sort_date(list[i].getBirth().getDateObj())
if (other_bday == "99999999"):
continue;
if (person_bday < other_bday):
@@ -1261,7 +1261,7 @@ def reorder_child_list(person, list):
# Now try moving to a later position in the list
if (target == index):
for i in range(index, len(list)):
- other_bday = sort.build_sort_event(list[i].getBirth().getDateObj())
+ other_bday = sort.build_sort_date(list[i].getBirth().getDateObj())
if (other_bday == "99999999"):
continue;
if (person_bday > other_bday):
diff --git a/gramps/src/Find.py b/gramps/src/Find.py
index 1274aac40..7f2f02cd9 100644
--- a/gramps/src/Find.py
+++ b/gramps/src/Find.py
@@ -50,17 +50,17 @@ class Find:
})
self.top = self.xml.get_widget("find")
- self.entry = self.xml.get_widget("entry1")
- self.combo = self.xml.get_widget("combo")
+ self.entry = self.xml.get_widget("entry")
if Config.autocomp:
- self.entry.connect_object("insert-text",utils.combo_insert_text,self.combo)
- self.combo.disable_activate()
+ self.nlist = [("","")]
+ for n in plist:
+ n1 = n.getPrimaryName().getName()
+ n2 = string.lower(n1)
+ self.nlist.append((n2,n1))
+ self.nlist.sort()
+ self.entry.connect("insert-text",self.insert_text)
+
self.next = self.xml.get_widget("next")
- nlist = [""]
- for n in plist:
- nlist.append(n.getPrimaryName().getName())
- nlist.sort()
- self.combo.set_popdown_strings(nlist)
self.top.editable_enters(self.entry)
def find_next(self):
@@ -133,3 +133,84 @@ class Find:
def on_prev_clicked(self,obj):
"""Callback for dialog box that causes the previous person to be found"""
self.find_prev()
+
+ #-------------------------------------------------------------------------
+ #
+ # Sets up a delayed (0.005 sec) handler for text completion. Text
+ # completion cannot be handled directly in this routine because, for
+ # some reason, the select_region() function doesn't work when called
+ # from signal handlers. Go figure.
+ #
+ # Thanks to iain@nodata.demon.co.uk (in mail from 1999) for the idea
+ # to use a timer to get away from the problems with signal handlers
+ # and the select_region function.
+ #
+ #-------------------------------------------------------------------------
+ def insert_text(self,entry,new_text,new_text_len,i_dont_care):
+ # One time setup to clear selected region when user moves on
+ if (not entry.get_data("signal_set")):
+ entry.set_data("signal_set",1)
+ entry.signal_connect("focus_out_event", self.lost_focus, entry)
+
+ # Nuke the current timer if the user types fast enough
+ timer = entry.get_data("timer");
+ if (timer):
+ gtk.timeout_remove(timer)
+
+ # Setup a callback timer so we can operate outside of a signal handler
+ timer = gtk.timeout_add(5, self.timer_callback, entry)
+ entry.set_data("timer", timer);
+
+ #-------------------------------------------------------------------------
+ #
+ # The entry box entry field lost focus. Go clear any selection. Why
+ # this form of a select_region() call works in a signal handler and
+ # the other form doesn't is a mystery.
+ #
+ #-------------------------------------------------------------------------
+ def lost_focus(self,entry,a,b):
+ entry.select_region(0, 0)
+
+ #-------------------------------------------------------------------------
+ #
+ # The workhorse routine of file completion. This routine grabs the
+ # current text of the entry box, and grubs through the list item
+ # looking for any case insensitive matches. This routine relies on
+ # public knowledge of the GtkEntry data structure, not on any private
+ # data.
+ #
+ # These three completion routines have only one gramps specific hook,
+ # and can be easily ported to any program.
+ #
+ #-------------------------------------------------------------------------
+ def timer_callback(self,entry):
+ # Clear any timer
+ timer = entry.get_data("timer");
+ if (timer):
+ gtk.timeout_remove(timer)
+
+ # Get the user's text
+ typed = entry.get_text()
+ if (not typed):
+ return
+ typed_lc = string.lower(typed)
+
+ # Walk the GtkList in the entry box
+ for nl,n in self.nlist:
+ if (not nl):
+ continue
+
+ # If equal, no need to add any text
+ if (typed_lc == nl):
+ return
+
+ # If typed text is a substring of the label text, then fill in
+ # the entry field with the full text (and correcting
+ # capitalization), and then select all the characters that
+ # don't match. With the user's enxt keystroke these will be
+ # replaced if they are incorrect.
+ if (string.find(nl,typed_lc) == 0):
+ entry.set_text(n)
+ entry.set_position(len(typed))
+ entry.select_region(len(typed), -1)
+ return
diff --git a/gramps/src/MediaView.py b/gramps/src/MediaView.py
index 705bc6f7a..1a0c3738f 100644
--- a/gramps/src/MediaView.py
+++ b/gramps/src/MediaView.py
@@ -328,7 +328,8 @@ class MediaView:
oref.setReference(photo)
try:
id = photo.getId()
- name = RelImage.import_media_object(tfile,self.path,id)
+ path = self.db.getSavePath()
+ name = RelImage.import_media_object(tfile,path,id)
if name != None and name != "":
photo.setPath(name)
except:
diff --git a/gramps/src/PlaceView.py b/gramps/src/PlaceView.py
index b164f1de6..913699580 100644
--- a/gramps/src/PlaceView.py
+++ b/gramps/src/PlaceView.py
@@ -149,7 +149,6 @@ class PlaceView:
for a in self.sort_arrow:
a.hide()
- arrow = self.sort_arrow[column]
if self.sort_col == column:
if self.sort_direct == GTK.SORT_DESCENDING:
self.sort_direct = GTK.SORT_ASCENDING
diff --git a/gramps/src/config.glade b/gramps/src/config.glade
index d7ee7041d..a4808a393 100644
--- a/gramps/src/config.glade
+++ b/gramps/src/config.glade
@@ -2656,7 +2656,7 @@ information.
125,104,74
0,0,0
225,219,197
- 191,191,191
+ 225,220,197
255,255,255
gramps.png
splash.jpg
@@ -2674,7 +2674,7 @@ information.
Researcher Information
125,104,74
225,220,197
- 191,191,191
+ 225,220,197
gramps.png
@@ -3200,7 +3200,7 @@ contribute.
Please enjoy using GRAMPS.
225,220,197
- 191,191,191
+ 225,220,197
255,255,255
0,0,0
125,104,74
diff --git a/gramps/src/find.glade b/gramps/src/find.glade
index 32560f3fd..6c68f8958 100644
--- a/gramps/src/find.glade
+++ b/gramps/src/find.glade
@@ -152,45 +152,19 @@
- Placeholder
-
-
-
- GtkCombo
- combo
- False
- True
- False
- True
- False
-
+ GtkEntry
+ entry
+ True
+ True
+ True
+ True
+ 0
+
10
True
True
-
-
- GtkEntry
- GtkCombo:entry
- entry1
- True
- True
-
- insert_text
- on_combo_insert_text
-
- Wed, 12 Dec 2001 01:27:32 GMT
-
- True
- True
- 0
-
-
-
-
-
- Placeholder
diff --git a/gramps/src/gramps.desktop b/gramps/src/gramps.desktop
index 250f2aa43..5965dacaa 100644
--- a/gramps/src/gramps.desktop
+++ b/gramps/src/gramps.desktop
@@ -1,5 +1,5 @@
[Desktop Entry]
-Name=Gramps
+Name=Genealogy (Gramps)
Name[sv]=Gramps
Comment=Genealogy Program
Comment[sv]=Ett släktforskningsprogram
diff --git a/gramps/src/gramps.png b/gramps/src/gramps.png
index d73419a90..5046d7b5b 100644
Binary files a/gramps/src/gramps.png and b/gramps/src/gramps.png differ
diff --git a/gramps/src/gramps_main.py b/gramps/src/gramps_main.py
index 155daa2d3..4dde76636 100755
--- a/gramps/src/gramps_main.py
+++ b/gramps/src/gramps_main.py
@@ -1289,8 +1289,8 @@ def redisplay_person_list(person):
gender,bday.getQuoteDate(),
dday.getQuoteDate(),
sort.build_sort_name(name),
- sort.build_sort_event(bday),
- sort.build_sort_event(dday)])
+ sort.build_sort_date(bday),
+ sort.build_sort_date(dday)])
person_list.set_row_data(0,pos)
@@ -1302,8 +1302,8 @@ def redisplay_person_list(person):
gender,bday.getQuoteDate(),
dday.getQuoteDate(),
sort.build_sort_name(name),
- sort.build_sort_event(bday),
- sort.build_sort_event(dday)])
+ sort.build_sort_date(bday),
+ sort.build_sort_date(dday)])
person_list.set_row_data(0,pos2)
@@ -1720,8 +1720,8 @@ def apply_filter():
bday = person.getBirth().getDateObj()
dday = person.getDeath().getDateObj()
- sort_bday = sort.build_sort_event(bday)
- sort_dday = sort.build_sort_event(dday)
+ sort_bday = sort.build_sort_date(bday)
+ sort_dday = sort.build_sort_date(dday)
qbday = bday.getQuoteDate()
qdday = dday.getQuoteDate()
pid = person.getId()
diff --git a/gramps/src/plugins/AncestorChart.py b/gramps/src/plugins/AncestorChart.py
index ee6d29b18..ab0ab5ce5 100644
--- a/gramps/src/plugins/AncestorChart.py
+++ b/gramps/src/plugins/AncestorChart.py
@@ -48,6 +48,7 @@ active_person = None
db = None
styles = StyleSheet()
style_sheet_list = None
+topDialog = None
#------------------------------------------------------------------------
#
diff --git a/gramps/src/plugins/AncestorReport.py b/gramps/src/plugins/AncestorReport.py
index 1df177c57..3635cb725 100644
--- a/gramps/src/plugins/AncestorReport.py
+++ b/gramps/src/plugins/AncestorReport.py
@@ -48,6 +48,7 @@ active_person = None
db = None
styles = StyleSheet()
style_sheet_list = None
+topDialog = None
#------------------------------------------------------------------------
#
@@ -277,7 +278,6 @@ def report(database,person):
global active_person
global topDialog
- global glade_file
global db
global style_sheet_list
diff --git a/gramps/src/plugins/FamilyGroup.py b/gramps/src/plugins/FamilyGroup.py
index 2cf893bf1..5160e7292 100644
--- a/gramps/src/plugins/FamilyGroup.py
+++ b/gramps/src/plugins/FamilyGroup.py
@@ -45,6 +45,7 @@ active_person = None
db = None
styles = StyleSheet()
style_sheet_list = None
+topDialog = None
#------------------------------------------------------------------------
#
diff --git a/gramps/src/plugins/ReadGedcom.py b/gramps/src/plugins/ReadGedcom.py
index 8bcc8aa74..e1f6df448 100644
--- a/gramps/src/plugins/ReadGedcom.py
+++ b/gramps/src/plugins/ReadGedcom.py
@@ -78,29 +78,6 @@ fromtoRegexp = re.compile(r"\s*FROM\s+@#D([^@]+)@\s*(.*)\s+TO\s+@#D([^@]+)@\s*(.
#
#
#-------------------------------------------------------------------------
-def find_file(fullname,altpath):
- if os.path.isfile(fullname):
- type = utils.get_mime_type(fullname)
- if type[0:6] != "image/":
- return ""
- else:
- return fullname
- other = altpath + os.sep + os.path.basename(fullname)
- if os.path.isfile(other):
- type = utils.get_mime_type(other)
- if type[0:6] != "image/":
- return ""
- else:
- return other
- else:
- return ""
-
-#-------------------------------------------------------------------------
-#
-#
-#
-#-------------------------------------------------------------------------
-
def importData(database, filename):
global callback
@@ -199,6 +176,41 @@ class GedcomParser:
self.update(self.file_obj,file)
self.code = 0
+ self.search_paths = []
+
+ try:
+ f = open("/etc/fstab","r")
+
+ for line in f.readlines():
+ paths = string.split(line)
+ if len(paths) < 3:
+ continue
+ first = string.strip(paths[0])
+ if first[0] == '#':
+ continue
+ if string.upper(paths[2]) in ["VFAT","FAT","NTFS"]:
+ self.search_paths.append(paths[1])
+ f.close()
+ except:
+ pass
+
+ def find_file(self,fullname,altpath):
+ fullname = string.replace(fullname,'\\','/')
+ if os.path.isfile(fullname):
+ return fullname
+ other = os.path.join(altpath,os.path.basename(fullname))
+ if os.path.isfile(other):
+ return other
+ if len(fullname) > 3:
+ if fullname[1] == ':':
+ fullname = fullname[2:]
+ for path in self.search_paths:
+ other = os.path.join(path,os.path.basename(fullname))
+ if os.path.isfile(other):
+ return other
+ return ""
+ else:
+ return ""
def update(self,field,text):
field.set_text(text)
@@ -311,7 +323,6 @@ class GedcomParser:
def parse_record(self):
while 1:
matches = self.get_next()
-
if matches[2] == "FAM":
if self.fam_count % 10 == 0:
self.update(self.families_obj,str(self.fam_count))
@@ -333,9 +344,9 @@ class GedcomParser:
self.indi_count = self.indi_count + 1
self.person = self.db.findPerson(matches[1],self.pmap)
self.parse_individual()
- elif matches[2] == "SUBM":
+ elif matches[2] in ["SUBM","SUBN"]:
self.ignore_sub_junk(1)
- elif matches[1] == "SUBM":
+ elif matches[1] in ["SUBM","SUBN"]:
self.ignore_sub_junk(1)
elif matches[2] == "SOUR":
self.parse_source(matches[1],1)
@@ -354,13 +365,36 @@ class GedcomParser:
noteobj.set(text + self.parse_continue_data())
self.parse_note_data(1)
elif matches[2] == "OBJE":
- self.ignore_sub_junk(2)
+ self.ignore_sub_junk(1)
elif matches[1] == "TRLR":
self.backup()
return
else:
self.barf(1)
+ def parse_cause(self,event,level):
+ while 1:
+ matches = self.get_next()
+ if int(matches[0]) < level:
+ self.backup()
+ return
+ elif matches[1] == "SOUR":
+ source_ref = SourceRef()
+ if matches[2] and matches[2][0] != "@":
+ self.localref = self.localref + 1
+ ref = "gsr%d" % self.localref
+ s = self.db.findSource(ref,self.smap)
+ source_ref.setBase(s)
+ s.setTitle('Imported Source #%d' % self.localref)
+ s.setNote(matches[2] + self.parse_continue_data())
+ self.ignore_sub_junk(2)
+ else:
+ source_ref.setBase(self.db.findSource(matches[2],self.smap))
+ self.parse_source_reference(source_ref,level+1)
+ event.addSourceRef(source_ref)
+ else:
+ self.barf(1)
+
def parse_note_data(self,level):
while 1:
matches = self.get_next()
@@ -507,13 +541,17 @@ class GedcomParser:
self.person.setPafUid(matches[2])
elif matches[1] == "ALIA":
aka = Name()
- names = nameRegexp.match(matches[2]).groups()
- if names[0]:
- aka.setFirstName(names[0])
- if names[1]:
- aka.setSurname(names[1])
- if names[2]:
- aka.setSuffix(names[2])
+ match = nameRegexp.match(matches[2])
+ if match:
+ names = match.groups()
+ if names[0]:
+ aka.setFirstName(names[0])
+ if names[1]:
+ aka.setSurname(names[1])
+ if names[2]:
+ aka.setSuffix(names[2])
+ else:
+ aka.setFirstName(matches[2])
self.person.addAlternateName(aka)
elif matches[1] == "OBJE":
if matches[2] and matches[2][0] == '@':
@@ -621,7 +659,7 @@ class GedcomParser:
self.person.addAttribute(attr)
else:
self.person.addEvent(event)
- elif matches[1] in ["AFN","CHAN","REFN","SOUR"]:
+ elif matches[1] in ["AFN","CHAN","REFN","SOUR","ASSO"]:
self.ignore_sub_junk(2)
elif matches[1] in ["ANCI","DESI","RIN","RFN"]:
pass
@@ -716,11 +754,10 @@ class GedcomParser:
url.set_path(file)
url.set_description(title)
self.person.addUrl(url)
- elif form in photo_types:
- path = find_file(file,self.dir_path)
+ else:
+ path = self.find_file(file,self.dir_path)
if path == "":
- self.warn(_("Could not import %s: either the file could not be found, or it was not a valid image")\
- % file + "\n")
+ self.warn(_("Could not import %s") % file + "\n")
else:
photo = Photo()
photo.setPath(path)
@@ -730,9 +767,6 @@ class GedcomParser:
oref = ObjectRef()
oref.setReference(photo)
self.person.addPhoto(oref)
- else:
- self.warn(_("Could not import %s: currently an unknown file type") % \
- file + "\n")
def parse_source_object(self,source,level):
form = ""
@@ -755,11 +789,10 @@ class GedcomParser:
else:
self.barf(level+1)
- if form in photo_types:
- path = find_file(file,self.dir_path)
+ if form:
+ path = self.find_file(file,self.dir_path)
if path == "":
- self.warn(_("Could not import %s: either the file could not be found, or it was not a valid image")\
- % file + "\n")
+ self.warn(_("Could not import %s") % file + "\n")
else:
photo = Photo()
photo.setPath(path)
@@ -769,9 +802,6 @@ class GedcomParser:
oref = ObjectRef()
oref.setReference(photo)
source.addPhoto(oref)
- else:
- self.warn(_("Could not import %s: currently an unknown file type") % \
- file + "\n")
def parse_family_object(self,level):
form = ""
@@ -794,10 +824,10 @@ class GedcomParser:
else:
self.barf(level+1)
- if form in photo_types:
- path = find_file(file,self.dir_path)
+ if form:
+ path = self.find_file(file,self.dir_path)
if path == "":
- self.warn("Could not import %s: the file could not be found\n" % file)
+ self.warn(_("Could not import %s") % file)
else:
photo = Photo()
photo.setPath(path)
@@ -807,8 +837,6 @@ class GedcomParser:
oref = ObjectRef()
oref.setReference(photo)
self.family.addPhoto(photo)
- else:
- self.warn("Could not import %s: current an unknown file type\n" % file)
def parse_residence(self,address,level):
while 1:
@@ -888,7 +916,7 @@ class GedcomParser:
ord.setDateObj(self.extract_date(matches[2]))
elif matches[1] == "FAMC":
ord.setFamily(self.db.findFamily(matches[2],self.fmap))
- elif matches[1] == ["PLAC", "STAT", "SOUR", "NOTE" ]:
+ elif matches[1] in ["PLAC", "STAT", "SOUR", "NOTE" ]:
self.ignore_sub_junk(level+1)
else:
self.barf(level+1)
@@ -914,9 +942,8 @@ class GedcomParser:
name = matches[2]
event.setName(name)
elif matches[1] == "DATE":
- foo = self.extract_date(matches[2])
- event.setDateObj(foo)
- elif matches[1] == ["TIME","ADDR","AGE","AGNC","STAT","TEMP","OBJE"]:
+ event.setDateObj(self.extract_date(matches[2]))
+ elif matches[1] in ["TIME","ADDR","AGE","AGNC","STAT","TEMP","OBJE"]:
self.ignore_sub_junk(level+1)
elif matches[1] == "SOUR":
source_ref = SourceRef()
@@ -951,6 +978,7 @@ class GedcomParser:
elif matches[1] == "CAUS":
info = matches[2] + self.parse_continue_data()
event.setCause(info)
+ self.parse_cause(event,level+1)
elif matches[1] == "NOTE":
info = matches[2] + self.parse_continue_data()
if note == "":
@@ -979,7 +1007,7 @@ class GedcomParser:
break
elif matches[1] == "DATE":
event.setDateObj(self.extract_date(matches[2]))
- elif matches[1] == ["TIME","ADDR","AGE","AGNC","STAT","TEMP","OBJE"]:
+ elif matches[1] in ["TIME","ADDR","AGE","AGNC","STAT","TEMP","OBJE"]:
self.ignore_sub_junk(level+1)
elif matches[1] == "SOUR":
source_ref = SourceRef()
@@ -1017,9 +1045,13 @@ class GedcomParser:
self.placemap[val] = place
event.setPlace(place)
self.ignore_sub_junk(level+1)
+ elif matches[1] == "TYPE":
+ # eventually do something intelligent here
+ pass
elif matches[1] == "CAUS":
info = matches[2] + self.parse_continue_data()
event.setCause(info)
+ self.parse_cause(event,level+1)
elif matches[1] == "NOTE":
info = matches[2] + self.parse_continue_data()
if note == "":
@@ -1072,7 +1104,7 @@ class GedcomParser:
else:
name = matches[2]
attr.setName(name)
- elif matches[1] == ["CAUS", "DATE","TIME","ADDR","AGE","AGNC","STAT","TEMP","OBJE"]:
+ elif matches[1] in ["CAUS", "DATE","TIME","ADDR","AGE","AGNC","STAT","TEMP","OBJE"]:
self.ignore_sub_junk(level+1)
elif matches[1] == "SOUR":
source_ref = SourceRef()
@@ -1127,7 +1159,11 @@ class GedcomParser:
event.setName(matches[2])
elif matches[1] == "DATE":
event.setDateObj(self.extract_date(matches[2]))
- elif matches[1] == ["TIME","AGE","AGNC","CAUS","ADDR","STAT","TEMP","HUSB","WIFE","OBJE"]:
+ elif matches[1] == "CAUS":
+ info = matches[2] + self.parse_continue_data()
+ event.setCause(info)
+ self.parse_cause(event,level+1)
+ elif matches[1] in ["TIME","AGE","AGNC","ADDR","STAT","TEMP","HUSB","WIFE","OBJE"]:
self.ignore_sub_junk(level+1)
elif matches[1] == "SOUR":
source_ref = SourceRef()
@@ -1318,22 +1354,12 @@ class GedcomParser:
self.update(self.created_obj,matches[2])
elif matches[1] == "VERS":
self.update(self.version_obj,matches[2])
- elif matches[1] == "CORP":
+ elif matches[1] in ["CORP","DATA","SUBM","SUBN","COPR","FILE","LANG"]:
self.ignore_sub_junk(2)
- elif matches[1] == "DATA":
- self.ignore_sub_junk(2)
- elif matches[1] == "SUBM":
- pass
- elif matches[1] == "SUBN":
- pass
elif matches[1] == "DEST":
if genby == "GRAMPS":
self.gedsource = self.gedmap.get_from_source_tag(matches[2])
self.broken_conc = self.gedsource.get_conc()
- elif matches[1] == "FILE":
- self.ignore_sub_junk(2)
- elif matches[1] == "COPR":
- pass
elif matches[1] == "CHAR":
if matches[2] == "UNICODE" or matches[2] == "UTF-8" or \
matches[2] == "UTF8":
@@ -1348,8 +1374,6 @@ class GedcomParser:
self.ignore_sub_junk(2)
elif matches[1] == "_SCHEMA":
self.parse_ftw_schema(2)
- elif matches[1] == "LANG":
- pass
elif matches[1] == "PLAC":
self.parse_place_form(2)
elif matches[1] == "DATE":
@@ -1496,6 +1520,7 @@ class GedcomParser:
dateobj.set(data)
else:
dateobj.set(text)
+
return dateobj
#-------------------------------------------------------------------------
diff --git a/gramps/src/po/template.po b/gramps/src/po/template.po
index 8782e8000..217b32c06 100644
--- a/gramps/src/po/template.po
+++ b/gramps/src/po/template.po
@@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2001-11-08 08:26-0700\n"
+"POT-Creation-Date: 2001-12-15 17:01-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -14,71 +14,71 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
-#: glade.c:2000
+#: glade.c:2133 glade.c:2486 glade.c:2487
msgid "\n"
msgstr ""
-#: glade.c:2262 glade.c:2263
+#: glade.c:2417 glade.c:2418
#, c-format
msgid " %s died in %s"
msgstr ""
-#: glade.c:2261
+#: glade.c:2416
#, c-format
msgid " %s died in %s in %s"
msgstr ""
-#: glade.c:2260
+#: glade.c:2415
#, c-format
msgid " %s died on %s"
msgstr ""
-#: glade.c:2259
+#: glade.c:2414
#, c-format
msgid " %s died on %s in %s"
msgstr ""
-#: glade.c:2267
+#: glade.c:2422
#, c-format
msgid " %s married."
msgstr ""
-#: glade.c:2266
+#: glade.c:2421
#, c-format
msgid " And %s was buried in %s."
msgstr ""
-#: glade.c:2264
+#: glade.c:2419
#, c-format
msgid " And %s was buried on %s in %s."
msgstr ""
-#: glade.c:2265
+#: glade.c:2420
#, c-format
msgid " And %s was buried on %s."
msgstr ""
-#: glade.c:2273
+#: glade.c:2428
#, c-format
msgid " at the age of %d %s"
msgstr ""
-#: glade.c:2256
+#: glade.c:2411
#, c-format
msgid " in %s."
msgstr ""
-#: glade.c:2254
+#: glade.c:2409
#, c-format
msgid " was born in the year %s in %s."
msgstr ""
-#: glade.c:2255
+#: glade.c:2410
#, c-format
msgid " was born in the year %s."
msgstr ""
-#: glade.c:2253
+#: glade.c:2408
#, c-format
msgid " was born on %s."
msgstr ""
@@ -94,114 +94,104 @@ msgstr ""
msgid "%P %%"
msgstr ""
-#: glade.c:2194
+#: glade.c:2345
#, c-format
msgid "%d broken family links were found\n"
msgstr ""
-#: glade.c:2200
+#: glade.c:2351
#, c-format
msgid "%d corrupted family relationship fixed\n"
msgstr ""
-#: glade.c:2198
+#: glade.c:2349
#, c-format
msgid "%d empty families were found\n"
msgstr ""
-#: glade.c:2188
+#: glade.c:2339
#, c-format
msgid "%d event records were modified"
msgstr ""
-#: glade.c:2202
+#: glade.c:2353
#, c-format
msgid "%d media objects were referenced, but not found\n"
msgstr ""
-#: glade.c:2105
+#: glade.c:2250
#, c-format
msgid "%s (revision %s)"
msgstr ""
-#: glade.c:2167 glade.c:2269
+#: glade.c:2318 glade.c:2424
#, c-format
msgid "%s Generation"
msgstr ""
-#: glade.c:2001 glade.c:2003
+#: glade.c:2134 glade.c:2136
#, c-format
msgid "%s [%s]: event %s\n"
msgstr ""
-#: glade.c:2004 glade.c:2068 glade.c:2071 glade.c:2072 glade.c:2124
-#: glade.c:2195
+#: glade.c:2121 glade.c:2137 glade.c:2212 glade.c:2215 glade.c:2216
+#: glade.c:2269 glade.c:2277 glade.c:2346
#, c-format
msgid "%s and %s"
msgstr ""
-#: glade.c:2095 glade.c:2096 glade.c:2100 glade.c:2101 glade.c:2327
-#: glade.c:2328
+#: glade.c:2242 glade.c:2243 glade.c:2246 glade.c:2247 glade.c:2482
+#: glade.c:2483
#, c-format
msgid "%s could not be opened\n"
msgstr ""
-#: glade.c:2097
-#, c-format
-msgid "%s is a corrupt file"
-msgstr ""
-
-#: glade.c:2102 glade.c:2106
-#, c-format
-msgid "%s is a corrupt file."
-msgstr ""
-
-#: glade.c:1993
+#: glade.c:2126
#, c-format
msgid "%s is already used by %s"
msgstr ""
-#: glade.c:2026 glade.c:2031
+#: glade.c:2169 glade.c:2174
#, c-format
msgid "%s is not a directory"
msgstr ""
-#: glade.c:1819
+#: glade.c:1964
#, c-format
msgid "%s is not a valid file name or does not exist."
msgstr ""
-#: glade.c:2170
+#: glade.c:2321
#, c-format
msgid "%s was born in the year %s in %s. "
msgstr ""
-#: glade.c:2171
+#: glade.c:2322
#, c-format
msgid "%s was born in the year %s. "
msgstr ""
-#: glade.c:2168
+#: glade.c:2319
#, c-format
msgid "%s was born on %s in %s. "
msgstr ""
-#: glade.c:2169
+#: glade.c:2320
#, c-format
msgid "%s was born on %s. "
msgstr ""
-#: glade.c:2196
+#: glade.c:2347
#, c-format
msgid "%s was removed from the family of %s\n"
msgstr ""
-#: glade.c:2321
+#: glade.c:2476
#, c-format
msgid "%s will be extracted as a nickname from %s\n"
msgstr ""
-#: glade.c:2322
+#: glade.c:2477
#, c-format
msgid "%s will be extracted as a title from %s\n"
msgstr ""
@@ -214,55 +204,55 @@ msgstr ""
msgid "(Recommended only for English)"
msgstr ""
-#: glade.c:1926
-msgid "(and|to|-)"
+#: glade.c:2076
+msgid "(and|to|-"
msgstr ""
-#: glade.c:1925
-msgid "(from|between|bet|bet.)"
+#: glade.c:2075
+msgid "(from|between|bet|bet."
msgstr ""
-#: glade.c:2182
+#: glade.c:2333
#, c-format
msgid ", and was buried in the year %s in %s."
msgstr ""
-#: glade.c:2183
+#: glade.c:2334
#, c-format
msgid ", and was buried in the year %s."
msgstr ""
-#: glade.c:2180
+#: glade.c:2331
#, c-format
msgid ", and was buried on %s in %s."
msgstr ""
-#: glade.c:2181
+#: glade.c:2332
#, c-format
msgid ", and was buried on %s."
msgstr ""
-#: glade.c:2257 glade.c:2258
+#: glade.c:2412 glade.c:2413
msgid "."
msgstr ""
-#: glade.c:2193
+#: glade.c:2344
msgid "1 broken family link was fixed\n"
msgstr ""
-#: glade.c:2199
+#: glade.c:2350
msgid "1 corrupted family relationship fixed\n"
msgstr ""
-#: glade.c:2197
+#: glade.c:2348
msgid "1 empty family was found\n"
msgstr ""
-#: glade.c:2187
+#: glade.c:2338
msgid "1 event record was modified"
msgstr ""
-#: glade.c:2201
+#: glade.c:2352
msgid "1 media object was referenced, but not found\n"
msgstr ""
@@ -318,7 +308,7 @@ msgstr ""
msgid ":"
msgstr ""
-#: glade.c:1914
+#: glade.c:2061
msgid "A legal or common-law relationship between a husband and wife"
msgstr ""
@@ -326,12 +316,11 @@ msgstr ""
msgid "A4"
msgstr ""
-#: glade.c:1975 glade.c:1978 glade.c:1981 glade.c:1984 glade.c:1987
-msgid "ABT"
+#: glade.c:2105 glade.c:2108 glade.c:2111 glade.c:2114 glade.c:2117
+msgid "ABOUT"
msgstr ""
-#: glade.c:1968 glade.c:1977 glade.c:1980 glade.c:1983 glade.c:1986
-#: glade.c:1989
+#: glade.c:2107 glade.c:2110 glade.c:2113 glade.c:2116 glade.c:2119
msgid "AFTER"
msgstr ""
@@ -343,7 +332,7 @@ msgstr ""
msgid "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz"
msgstr ""
-#: glade.c:94 glade.c:2016
+#: glade.c:94 glade.c:2150
msgid "AbiWord"
msgstr ""
@@ -423,7 +412,7 @@ msgstr ""
msgid "Address Editor"
msgstr ""
-#: glade.c:1820
+#: glade.c:1965
#, c-format
msgid "Address Editor for %s"
msgstr ""
@@ -432,24 +421,24 @@ msgstr ""
msgid "Addresses"
msgstr ""
-#: glade.c:164 glade.c:1856 glade.c:1875
+#: glade.c:164 glade.c:2001 glade.c:2020
msgid "Adopted"
msgstr ""
-#: glade.c:1878
+#: glade.c:2023
msgid "Adult Christening"
msgstr ""
-#: glade.c:167 glade.c:2184
+#: glade.c:167 glade.c:2335
msgid "Ahnentafel Report"
msgstr ""
-#: glade.c:2166
+#: glade.c:2317
#, c-format
msgid "Ahnentafel Report for %s"
msgstr ""
-#: glade.c:2277
+#: glade.c:2432
msgid ""
"Aids in the analysis of data by allowing the development of custom filters "
"that can be applied to the database to find similar events"
@@ -459,7 +448,7 @@ msgstr ""
msgid "Alignment"
msgstr ""
-#: glade.c:2012
+#: glade.c:2146
msgid "All people"
msgstr ""
@@ -467,7 +456,7 @@ msgstr ""
msgid "Allow internal GRAMPS ID numbers to be edited"
msgstr ""
-#: glade.c:2191
+#: glade.c:2342
msgid "Allows all the events of a certain name to be renamed to a new name"
msgstr ""
@@ -475,11 +464,11 @@ msgstr ""
msgid "Allows you to customize the data in the boxes in the report"
msgstr ""
-#: glade.c:1876
+#: glade.c:2021
msgid "Alternate Birth"
msgstr ""
-#: glade.c:1877
+#: glade.c:2022
msgid "Alternate Death"
msgstr ""
@@ -487,7 +476,7 @@ msgstr ""
msgid "Alternate Name Editor"
msgstr ""
-#: glade.c:2076
+#: glade.c:2225
#, c-format
msgid "Alternate Name Editor for %s"
msgstr ""
@@ -496,23 +485,23 @@ msgstr ""
msgid "Alternate Names"
msgstr ""
-#: glade.c:1916
+#: glade.c:2063
msgid "An established relationship between members of the same sex"
msgstr ""
-#: glade.c:1918
+#: glade.c:2065
msgid "An unspecified relationship between a man and woman"
msgstr ""
-#: glade.c:2215 glade.c:2276
+#: glade.c:2366 glade.c:2431
msgid "Analysis and Exploration"
msgstr ""
-#: glade.c:185 glade.c:2133
+#: glade.c:185 glade.c:2284
msgid "Ancestor Chart"
msgstr ""
-#: glade.c:2132
+#: glade.c:2283
#, c-format
msgid "Ancestor Chart for %s"
msgstr ""
@@ -525,29 +514,29 @@ msgstr ""
msgid "Ancestor Graph"
msgstr ""
-#: glade.c:2291 glade.c:2389
+#: glade.c:2446 glade.c:2544
msgid "Ancestors"
msgstr ""
-#: glade.c:2293
+#: glade.c:2448
msgid "Ancestors and Descendants"
msgstr ""
-#: glade.c:2405 glade.c:2411
+#: glade.c:2560 glade.c:2568
#, c-format
msgid "Ancestors and Descendants of %s"
msgstr ""
-#: glade.c:2391
+#: glade.c:2546
msgid "Ancestors and descendants"
msgstr ""
-#: glade.c:2403 glade.c:2409
+#: glade.c:2558 glade.c:2566
#, c-format
msgid "Ancestors of %s"
msgstr ""
-#: glade.c:1867
+#: glade.c:2012
msgid "Annulment"
msgstr ""
@@ -559,11 +548,11 @@ msgstr ""
msgid "Append to Current Database"
msgstr ""
-#: glade.c:1932
+#: glade.c:2072
msgid "April"
msgstr ""
-#: glade.c:1990 glade.c:1991
+#: glade.c:2123 glade.c:2124
msgid "Are you sure you want to abandon your changes?"
msgstr ""
@@ -575,7 +564,7 @@ msgstr ""
msgid "Attribute Editor"
msgstr ""
-#: glade.c:1823
+#: glade.c:1968
#, c-format
msgid "Attribute Editor for %s"
msgstr ""
@@ -584,7 +573,7 @@ msgstr ""
msgid "Attributes"
msgstr ""
-#: glade.c:1936
+#: glade.c:2073
msgid "August"
msgstr ""
@@ -596,8 +585,7 @@ msgstr ""
msgid "Automatically load last database"
msgstr ""
-#: glade.c:1967 glade.c:1976 glade.c:1979 glade.c:1982 glade.c:1985
-#: glade.c:1988
+#: glade.c:2106 glade.c:2109 glade.c:2112 glade.c:2115 glade.c:2118
msgid "BEFORE"
msgstr ""
@@ -609,19 +597,15 @@ msgstr ""
msgid "Background Color"
msgstr ""
-#: glade.c:1880
+#: glade.c:2024
msgid "Baptism"
msgstr ""
-#: glade.c:1879
-msgid "Baptism (LDS)"
-msgstr ""
-
-#: glade.c:1881
+#: glade.c:2025
msgid "Bar Mitzvah"
msgstr ""
-#: glade.c:1882
+#: glade.c:2026
msgid "Bas Mitzvah"
msgstr ""
@@ -640,9 +624,10 @@ msgid ""
"Should the following changes be made?"
msgstr ""
-#: glade.c:239 glade.c:1824 glade.c:1825 glade.c:1826 glade.c:1827
-#: glade.c:1855 glade.c:2050 glade.c:2116 glade.c:2117 glade.c:2121
-#: glade.c:2122 glade.c:2274 glade.c:2279
+#: glade.c:239 glade.c:1969 glade.c:1970 glade.c:1971 glade.c:1972
+#: glade.c:2000 glade.c:2156 glade.c:2157 glade.c:2158 glade.c:2159
+#: glade.c:2188 glade.c:2194 glade.c:2261 glade.c:2262 glade.c:2266
+#: glade.c:2267 glade.c:2429 glade.c:2434
msgid "Birth"
msgstr ""
@@ -658,6 +643,10 @@ msgstr ""
msgid "Birthdate"
msgstr ""
+#: glade.c:2027
+msgid "Blessing"
+msgstr ""
+
#: glade.c:253
msgid "Bold"
msgstr ""
@@ -674,7 +663,7 @@ msgstr ""
msgid "Box Color"
msgstr ""
-#: glade.c:1883
+#: glade.c:2028
msgid "Burial"
msgstr ""
@@ -682,2898 +671,3077 @@ msgstr ""
msgid "Calculate SoundEx code for the name"
msgstr ""
-#: glade.c:2342
+#: glade.c:2496
msgid "Calculates the relationship between two people"
msgstr ""
#: glade.c:268
-msgid "Cancel"
-msgstr ""
-
-#: glade.c:2042
-msgid "Cannot revert to a previous database, since one does not exist"
-msgstr ""
-
-#: glade.c:1908
-msgid "Caste"
+msgid "Calendars"
msgstr ""
#: glade.c:271
-msgid "Cause"
+msgid "Cancel"
msgstr ""
-#: glade.c:1884
-msgid "Cause Of Death"
+#: glade.c:2185
+msgid "Cannot revert to a previous database, since one does not exist"
msgstr ""
-#: glade.c:1885
-msgid "Census"
+#: glade.c:2055
+msgid "Caste"
msgstr ""
#: glade.c:274
-msgid "Change Event Type of"
+msgid "Cause"
+msgstr ""
+
+#: glade.c:2029
+msgid "Cause Of Death"
+msgstr ""
+
+#: glade.c:2030
+msgid "Census"
msgstr ""
#: glade.c:277
-msgid "Change Global Media Object Properties"
+msgid "Change Event Type of"
msgstr ""
#: glade.c:280
-msgid "Change Local Media Object Properties"
+msgid "Change Global Media Object Properties"
msgstr ""
#: glade.c:283
+msgid "Change Local Media Object Properties"
+msgstr ""
+
+#: glade.c:286
msgid "Changed by"
msgstr ""
-#: glade.c:1994
+#: glade.c:2127
msgid "Changing the gender caused problems with marriage information."
msgstr ""
-#: glade.c:2203
+#: glade.c:2354
msgid "Check Integrity"
msgstr ""
-#: glade.c:2204
+#: glade.c:2355
msgid "Check and repair database"
msgstr ""
-#: glade.c:2206
+#: glade.c:2357
msgid ""
"Checks the database for integrity problems, fixing the problems that it can"
msgstr ""
-#: glade.c:2251
+#: glade.c:2406
#, c-format
msgid "Child of %s and %s is:"
msgstr ""
-#: glade.c:286 glade.c:2286 glade.c:2302 glade.c:2387
+#: glade.c:289 glade.c:2441 glade.c:2457 glade.c:2542
msgid "Children"
msgstr ""
-#: glade.c:2252
+#: glade.c:2407
#, c-format
msgid "Children of %s and %s are:"
msgstr ""
-#: glade.c:289
+#: glade.c:292
msgid "Choose Parents"
msgstr ""
-#: glade.c:292
+#: glade.c:295
msgid "Choose Spouse"
msgstr ""
-#: glade.c:295
+#: glade.c:298
msgid "Choose Spouse/Partner"
msgstr ""
-#: glade.c:300
+#: glade.c:303
msgid "Choose the HTML template"
msgstr ""
-#: glade.c:1828
+#: glade.c:1973 glade.c:2160
#, c-format
msgid "Choose the Parents of %s"
msgstr ""
-#: glade.c:1886
+#: glade.c:2031
msgid "Christening"
msgstr ""
-#: glade.c:303
+#: glade.c:306
msgid "Church Parish"
msgstr ""
-#: glade.c:307
+#: glade.c:310
msgid "City"
msgstr ""
-#: glade.c:310
+#: glade.c:313
msgid "City/County"
msgstr ""
-#: glade.c:313
+#: glade.c:316
msgid ""
"Click column headers to sort. When sorted by birth date, drag and drop to "
"reorder children."
msgstr ""
-#: glade.c:316
+#: glade.c:319
msgid "Close"
msgstr ""
-#: glade.c:319
+#: glade.c:322
msgid "Close Window"
msgstr ""
-#: glade.c:322
+#: glade.c:325
msgid "Color"
msgstr ""
-#: glade.c:325
+#: glade.c:328
msgid "Comment"
msgstr ""
-#: glade.c:328
+#: glade.c:331
msgid "Comments"
msgstr ""
-#: glade.c:2275
+#: glade.c:2430
msgid "Compare individual events"
msgstr ""
-#: glade.c:331
+#: glade.c:334
msgid "Complete"
msgstr ""
-#: glade.c:334
+#: glade.c:337
msgid "Confidence"
msgstr ""
-#: glade.c:1887
+#: glade.c:2032
msgid "Confirmation"
msgstr ""
-#: glade.c:2061
+#: glade.c:2205 glade.c:2220
msgid "Convert to local copy"
msgstr ""
-#: glade.c:2032 glade.c:2033 glade.c:2034 glade.c:2035 glade.c:2036
-#: glade.c:2109 glade.c:2110 glade.c:2112 glade.c:2113
+#: glade.c:2175 glade.c:2176 glade.c:2177 glade.c:2178 glade.c:2179
+#: glade.c:2253 glade.c:2254 glade.c:2256 glade.c:2257 glade.c:2562
+#: glade.c:2563
#, c-format
msgid "Could not create %s"
msgstr ""
-#: glade.c:2395 glade.c:2396
+#: glade.c:2550 glade.c:2551
#, c-format
msgid "Could not create the directory : %s"
msgstr ""
-#: glade.c:2057
+#: glade.c:2201 glade.c:2222 glade.c:2486 glade.c:2487 glade.c:2488
#, c-format
msgid "Could not import %s"
msgstr ""
-#: glade.c:2332 glade.c:2334
-#, c-format
-msgid "Could not import %s: currently an unknown file type"
-msgstr ""
-
-#: glade.c:2331 glade.c:2333
-#, c-format
-msgid ""
-"Could not import %s: either the file could not be found, or it was not a "
-"valid image"
-msgstr ""
-
-#: glade.c:2111
+#: glade.c:2255
#, c-format
msgid "Could not load image file %s"
msgstr ""
-#: glade.c:2165 glade.c:2250
+#: glade.c:2316 glade.c:2405
#, c-format
msgid "Could not open %s"
msgstr ""
-#: glade.c:2054 glade.c:2055
+#: glade.c:2198 glade.c:2199
#, c-format
msgid ""
"Could not open %s\n"
"Using the default template"
msgstr ""
-#: glade.c:339
+#: glade.c:342
msgid "Country"
msgstr ""
-#: glade.c:2213
+#: glade.c:2364
msgid "Counts number of ancestors of selected person"
msgstr ""
-#: glade.c:343
+#: glade.c:346
msgid "County"
msgstr ""
-#: glade.c:346
+#: glade.c:349
msgid "Created by"
msgstr ""
-#: glade.c:2290
+#: glade.c:2445
msgid ""
"Creates a family group report, showing information on a set of parents and "
"their children."
msgstr ""
-#: glade.c:350
+#: glade.c:352
+msgid "Creates a new address from the above data"
+msgstr ""
+
+#: glade.c:355
+msgid "Creates a new attribute from the above data"
+msgstr ""
+
+#: glade.c:358
msgid "Creates a new event from the above data"
msgstr ""
-#: glade.c:353
+#: glade.c:361
msgid "Creating Web Pages"
msgstr ""
-#: glade.c:1888
+#: glade.c:2033
msgid "Cremation"
msgstr ""
-#: glade.c:2039
+#: glade.c:2182
msgid "Currently, you can only delete one person at a time"
msgstr ""
-#: glade.c:2082
+#: glade.c:2231
msgid "Currently, you can only delete one place at a time"
msgstr ""
-#: glade.c:356
+#: glade.c:364
msgid "Custom Colors"
msgstr ""
-#: glade.c:1839
+#: glade.c:1984
msgid "DD-MM-YYYY"
msgstr ""
-#: glade.c:1842
+#: glade.c:1987
msgid "DD. Month Year"
msgstr ""
-#: glade.c:1841
+#: glade.c:1986
msgid "DD.MM.YYYY"
msgstr ""
-#: glade.c:1838
+#: glade.c:1983
msgid "DD/MM/YYYY"
msgstr ""
-#: glade.c:1847
+#: glade.c:1992
msgid "DD/MM/YYYY, DD.MM.YYYY, or DD-MM-YYYY"
msgstr ""
-#: glade.c:2069
+#: glade.c:2213
msgid "Data was modified. Are you sure you want to abandon your changes?"
msgstr ""
-#: glade.c:359
+#: glade.c:367
msgid "Database"
msgstr ""
-#: glade.c:2190 glade.c:2205 glade.c:2319 glade.c:2325 glade.c:2344
+#: glade.c:2341 glade.c:2356 glade.c:2474 glade.c:2480 glade.c:2498
msgid "Database Processing"
msgstr ""
-#: glade.c:362
+#: glade.c:370
msgid "Database Summary"
msgstr ""
-#: glade.c:365
+#: glade.c:373
msgid "Database Verify"
msgstr ""
-#: glade.c:368
+#: glade.c:376
msgid "Database name: "
msgstr ""
-#: glade.c:374
+#: glade.c:383
msgid "Date"
msgstr ""
-#: glade.c:377
+#: glade.c:386
msgid "Date Format"
msgstr ""
-#: glade.c:1835
+#: glade.c:389
+msgid "Dates"
+msgstr ""
+
+#: glade.c:1980
msgid "Day MON Year"
msgstr ""
-#: glade.c:380 glade.c:2274 glade.c:2280
+#: glade.c:392 glade.c:2429 glade.c:2435
msgid "Death"
msgstr ""
-#: glade.c:383
+#: glade.c:395
msgid "Death Date"
msgstr ""
-#: glade.c:386
+#: glade.c:398
msgid "Death Place"
msgstr ""
-#: glade.c:1940
+#: glade.c:2074
msgid "December"
msgstr ""
-#: glade.c:389
+#: glade.c:401
msgid "Default Web Site directory"
msgstr ""
-#: glade.c:392
+#: glade.c:404
msgid "Default database directory"
msgstr ""
-#: glade.c:395
+#: glade.c:407
msgid "Default report directory"
msgstr ""
-#: glade.c:1889
+#: glade.c:2034
msgid "Degree"
msgstr ""
-#: glade.c:402
+#: glade.c:414
msgid "Delete"
msgstr ""
-#: glade.c:405
+#: glade.c:417
msgid "Delete Filter"
msgstr ""
-#: glade.c:409
+#: glade.c:421
msgid "Delete Media Object"
msgstr ""
-#: glade.c:412
+#: glade.c:424
msgid "Delete Person"
msgstr ""
-#: glade.c:415
+#: glade.c:427
msgid "Delete Place"
msgstr ""
-#: glade.c:418
+#: glade.c:430
msgid "Delete Source"
msgstr ""
-#: glade.c:422
+#: glade.c:433
+msgid "Delete the selected address"
+msgstr ""
+
+#: glade.c:436
+msgid "Delete the selected attribute"
+msgstr ""
+
+#: glade.c:439
msgid "Delete the selected event"
msgstr ""
-#: glade.c:425
+#: glade.c:442
msgid "Descendant Browser"
msgstr ""
-#: glade.c:428 glade.c:2218
+#: glade.c:2372
+#, c-format
+msgid "Descendant Chart for %s"
+msgstr ""
+
+#: glade.c:2373
+msgid "Descendant Graph"
+msgstr ""
+
+#: glade.c:445 glade.c:2369
msgid "Descendant Report"
msgstr ""
-#: glade.c:2292 glade.c:2390
+#: glade.c:2447 glade.c:2545
msgid "Descendants"
msgstr ""
-#: glade.c:2217 glade.c:2404 glade.c:2410
+#: glade.c:2368 glade.c:2559 glade.c:2567
#, c-format
msgid "Descendants of %s"
msgstr ""
-#: glade.c:433 glade.c:1909
+#: glade.c:450 glade.c:2056
msgid "Description"
msgstr ""
-#: glade.c:2270
+#: glade.c:2425
msgid "Detailed Ancestral Report"
msgstr ""
-#: glade.c:2268
+#: glade.c:2423
#, c-format
msgid "Detailed Ancestral Report for %s"
msgstr ""
-#: glade.c:442
+#: glade.c:459
msgid "Details"
msgstr ""
-#: glade.c:445
+#: glade.c:462
msgid "Determining Possible Merges"
msgstr ""
-#: glade.c:448
-msgid "Directories"
-msgstr ""
-
-#: glade.c:2355 glade.c:2418
+#: glade.c:2509 glade.c:2575
msgid "Disconnected individuals"
msgstr ""
-#: glade.c:451
+#: glade.c:465
+msgid "Display"
+msgstr ""
+
+#: glade.c:468
msgid "Display Format"
msgstr ""
-#: glade.c:454
+#: glade.c:471
msgid "Display Formats"
msgstr ""
-#: glade.c:457
+#: glade.c:474
msgid "Display active person's family relationships"
msgstr ""
-#: glade.c:460
+#: glade.c:477
msgid "Display attribute on Edit Person form"
msgstr ""
-#: glade.c:463
+#: glade.c:480
+msgid "Display both icons and text"
+msgstr ""
+
+#: glade.c:483
+msgid "Display global properties editor when object is dropped"
+msgstr ""
+
+#: glade.c:486
msgid "Display gramps ID in lists"
msgstr ""
-#: glade.c:466
+#: glade.c:489
+msgid "Display local properties editor when object is dropped"
+msgstr ""
+
+#: glade.c:492
+msgid "Display only icons"
+msgstr ""
+
+#: glade.c:495
+msgid "Display only text"
+msgstr ""
+
+#: glade.c:498
+msgid "Display the list of media objects"
+msgstr ""
+
+#: glade.c:501
msgid "Display the list of people"
msgstr ""
-#: glade.c:469
+#: glade.c:504
+msgid "Display the list of places"
+msgstr ""
+
+#: glade.c:507
msgid "Display the list of sources"
msgstr ""
-#: glade.c:1869
+#: glade.c:2014
msgid "Divorce"
msgstr ""
-#: glade.c:1868 glade.c:1890
+#: glade.c:2013 glade.c:2035
msgid "Divorce Filing"
msgstr ""
-#: glade.c:472
+#: glade.c:510
msgid "Do not compress XML data file"
msgstr ""
-#: glade.c:475
+#: glade.c:513
msgid "Do not display alternate names in person list"
msgstr ""
-#: glade.c:478
+#: glade.c:516
msgid "Do not include comments and text in source information"
msgstr ""
-#: glade.c:482
+#: glade.c:520
msgid "Do not include records marked private"
msgstr ""
-#: glade.c:485
+#: glade.c:523
msgid "Do not make a local copy"
msgstr ""
-#: glade.c:488
+#: glade.c:526
msgid "Do not use images"
msgstr ""
-#: glade.c:491
+#: glade.c:529
msgid "Do not use images for living people"
msgstr ""
-#: glade.c:2038
+#: glade.c:2181
#, c-format
msgid "Do you really wish to delete %s?"
msgstr ""
-#: glade.c:2025
+#: glade.c:2168
msgid "Do you want to close the current database and create a new one?"
msgstr ""
-#: glade.c:2041
+#: glade.c:2184
msgid ""
"Do you wish to abandon your changes and revert to the last saved database?"
msgstr ""
-#: glade.c:2024
+#: glade.c:2167
msgid "Do you wish to save the changes?"
msgstr ""
-#: glade.c:2052
+#: glade.c:2196
#, c-format
msgid "Do you wish to set %s as the home person?"
msgstr ""
-#: glade.c:494
+#: glade.c:532
msgid "Document Styles"
msgstr ""
-#: glade.c:2080
+#: glade.c:2229
#, c-format
msgid "Double clicking will make %s the active person"
msgstr ""
-#: glade.c:2079
+#: glade.c:2228
msgid "Doubleclick to edit, Shift-Doubleclick to make the active person"
msgstr ""
-#: glade.c:501
+#: glade.c:535
+msgid "Drag and Drop from an External Source"
+msgstr ""
+
+#: glade.c:538
+msgid "Drag and Drop from an Internal Source"
+msgstr ""
+
+#: glade.c:545
msgid "Edit"
msgstr ""
-#: glade.c:504
+#: glade.c:548
msgid "Edit Bookmarks"
msgstr ""
-#: glade.c:507
+#: glade.c:551
msgid "Edit Media Object"
msgstr ""
-#: glade.c:510
+#: glade.c:554
msgid "Edit Note"
msgstr ""
-#: glade.c:2060
+#: glade.c:2204 glade.c:2219
msgid "Edit Object Properties"
msgstr ""
-#: glade.c:514
+#: glade.c:558
msgid "Edit Properties"
msgstr ""
-#: glade.c:518
+#: glade.c:562
msgid "Edit Source"
msgstr ""
-#: glade.c:521
+#: glade.c:565
msgid "Edit marriage information"
msgstr ""
-#: glade.c:525
+#: glade.c:569
msgid "Edit source information for the highlighted event"
msgstr ""
-#: glade.c:2059
+#: glade.c:2203 glade.c:2218
msgid "Edit with the GIMP"
msgstr ""
-#: glade.c:528
+#: glade.c:572
msgid "Edit/View"
msgstr ""
-#: glade.c:531
+#: glade.c:575
msgid "Edit/View Person"
msgstr ""
-#: glade.c:534
+#: glade.c:578
msgid "Edit/View Place"
msgstr ""
-#: glade.c:537
+#: glade.c:581
msgid "Edit/View Source"
msgstr ""
-#: glade.c:1891
+#: glade.c:2036
msgid "Education"
msgstr ""
-#: glade.c:2143 glade.c:2228
+#: glade.c:2294 glade.c:2383
msgid "Eighth"
msgstr ""
-#: glade.c:2153 glade.c:2238
+#: glade.c:2304 glade.c:2393
msgid "Eightteenth"
msgstr ""
-#: glade.c:1892
+#: glade.c:2037
msgid "Elected"
msgstr ""
-#: glade.c:2146 glade.c:2231
+#: glade.c:2297 glade.c:2386
msgid "Eleventh"
msgstr ""
-#: glade.c:1893
+#: glade.c:2038
msgid "Emigration"
msgstr ""
-#: glade.c:540
+#: glade.c:584
msgid "Enable Custom Colors"
msgstr ""
-#: glade.c:543
+#: glade.c:587
+msgid "Enable autocompletion"
+msgstr ""
+
+#: glade.c:590
msgid "Encoding"
msgstr ""
-#: glade.c:1870
+#: glade.c:593
+msgid "Endowment"
+msgstr ""
+
+#: glade.c:2015
msgid "Engagement"
msgstr ""
-#: glade.c:2294 glade.c:2402 glade.c:2408
+#: glade.c:2449 glade.c:2557 glade.c:2565
msgid "Entire Database"
msgstr ""
-#: glade.c:2393
+#: glade.c:2548
msgid "Entire database"
msgstr ""
-#: glade.c:546
+#: glade.c:596
msgid "Entry Formats"
msgstr ""
-#: glade.c:2098 glade.c:2099 glade.c:2103 glade.c:2104 glade.c:2107
-#: glade.c:2108
+#: glade.c:2244 glade.c:2245 glade.c:2248 glade.c:2249 glade.c:2251
+#: glade.c:2252
#, c-format
msgid "Error reading %s"
msgstr ""
-#: glade.c:549
+#: glade.c:599
msgid "Even Row Background"
msgstr ""
-#: glade.c:552
+#: glade.c:602
msgid "Even Row Foreground"
msgstr ""
-#: glade.c:555
+#: glade.c:605
msgid "Event"
msgstr ""
-#: glade.c:558
+#: glade.c:608
msgid "Event Comparison"
msgstr ""
-#: glade.c:561
+#: glade.c:611
msgid "Event Comparison - Create a complex filter"
msgstr ""
-#: glade.c:564
+#: glade.c:614
msgid "Event Editor"
msgstr ""
-#: glade.c:567
+#: glade.c:617
msgid "Event Type"
msgstr ""
-#: glade.c:570
+#: glade.c:620
msgid "Events"
msgstr ""
-#: glade.c:2022
+#: glade.c:2165
msgid "Exactly two people must be selected to perform a merge"
msgstr ""
-#: glade.c:2081
+#: glade.c:2230
msgid "Exactly two places must be selected to perform a merge"
msgstr ""
-#: glade.c:573
+#: glade.c:623
msgid "Exchange active person and displayed spouse"
msgstr ""
-#: glade.c:576
+#: glade.c:626
msgid "Export GEDCOM"
msgstr ""
-#: glade.c:579
+#: glade.c:629
msgid "Export GEDCOM file"
msgstr ""
-#: glade.c:582
+#: glade.c:632
msgid "Export GRAMPS package"
msgstr ""
-#: glade.c:585
+#: glade.c:635
msgid "Export PAF for PalmOS"
msgstr ""
-#: glade.c:588
+#: glade.c:638
msgid "Export PAF for PalmOS file"
msgstr ""
-#: glade.c:2407
+#: glade.c:2564
msgid "Export to GEDCOM"
msgstr ""
-#: glade.c:2414
+#: glade.c:2571
msgid "Export to GRAMPS package"
msgstr ""
-#: glade.c:2413
+#: glade.c:2570
msgid "Export to PAF for PalmOS"
msgstr ""
-#: glade.c:2324
+#: glade.c:2479
msgid "Extract information from names"
msgstr ""
-#: glade.c:591
+#: glade.c:641
msgid "F"
msgstr ""
-#: glade.c:2383
+#: glade.c:2538
msgid "Facts and Events"
msgstr ""
-#: glade.c:2014 glade.c:2085 glade.c:2086 glade.c:2087 glade.c:2088
+#: glade.c:2148 glade.c:2234 glade.c:2235 glade.c:2236 glade.c:2237
#, c-format
msgid "Failed to load the module: %s"
msgstr ""
-#: glade.c:594 glade.c:2002
+#: glade.c:644 glade.c:2135
msgid "Families"
msgstr ""
-#: glade.c:597 glade.c:2063
+#: glade.c:647 glade.c:2207
msgid "Family"
msgstr ""
-#: glade.c:2009
+#: glade.c:2142
msgid "Family Attributes"
msgstr ""
-#: glade.c:2008
+#: glade.c:2141
msgid "Family Events"
msgstr ""
-#: glade.c:600 glade.c:2278 glade.c:2288
+#: glade.c:650 glade.c:2433 glade.c:2443
msgid "Family Group Report"
msgstr ""
-#: glade.c:2287
+#: glade.c:2442
#, c-format
msgid "Family Group Report for %s"
msgstr ""
-#: glade.c:2356
+#: glade.c:2510
msgid "Family Information"
msgstr ""
-#: glade.c:2397 glade.c:2398
+#: glade.c:2552 glade.c:2553
msgid "Family Tree Index"
msgstr ""
-#: glade.c:604 glade.c:1832 glade.c:2047 glade.c:2281 glade.c:2308
-#: glade.c:2377 glade.c:2379
+#: glade.c:654 glade.c:1977 glade.c:2164 glade.c:2191 glade.c:2436
+#: glade.c:2463 glade.c:2532 glade.c:2534
msgid "Father"
msgstr ""
-#: glade.c:1930
+#: glade.c:2072
msgid "February"
msgstr ""
-#: glade.c:2307 glade.c:2376
+#: glade.c:2462 glade.c:2531
msgid "Female"
msgstr ""
-#: glade.c:2352 glade.c:2421
+#: glade.c:2506 glade.c:2578
msgid "Females"
msgstr ""
-#: glade.c:2150 glade.c:2235
+#: glade.c:2301 glade.c:2390
msgid "Fifteenth"
msgstr ""
-#: glade.c:2140 glade.c:2225
+#: glade.c:2291 glade.c:2380
msgid "Fifth"
msgstr ""
-#: glade.c:607
+#: glade.c:657
msgid "File"
msgstr ""
-#: glade.c:612
+#: glade.c:662
msgid "Filter"
msgstr ""
-#: glade.c:615
-msgid "Find Person by Name"
+#: glade.c:665
+msgid "Find"
msgstr ""
-#: glade.c:2318
+#: glade.c:668
+msgid "Find Person"
+msgstr ""
+
+#: glade.c:2473
msgid "Find possible duplicate people"
msgstr ""
-#: glade.c:2136 glade.c:2221
+#: glade.c:2287 glade.c:2376
msgid "First"
msgstr ""
-#: glade.c:1894
+#: glade.c:2039
msgid "First Communion"
msgstr ""
-#: glade.c:618 glade.c:2074
+#: glade.c:671 glade.c:2223
msgid "First Person"
msgstr ""
-#: glade.c:1849
+#: glade.c:1994
msgid "Firstname Surname"
msgstr ""
-#: glade.c:621
+#: glade.c:674
msgid "Font"
msgstr ""
-#: glade.c:624
+#: glade.c:677
msgid "Font Options"
msgstr ""
-#: glade.c:2297
+#: glade.c:2452
msgid ""
"For more information or to get a copy of GraphViz, goto http://www.graphviz."
"org"
msgstr ""
-#: glade.c:630
+#: glade.c:684
msgid "Format"
msgstr ""
-#: glade.c:633
-msgid "Formats"
-msgstr ""
-
-#: glade.c:636 glade.c:1858
+#: glade.c:687 glade.c:2003
msgid "Foster"
msgstr ""
-#: glade.c:2149 glade.c:2234
+#: glade.c:2300 glade.c:2389
msgid "Fourteenth"
msgstr ""
-#: glade.c:2139 glade.c:2224
+#: glade.c:2290 glade.c:2379
msgid "Fourth"
msgstr ""
-#: glade.c:640
+#: glade.c:690 glade.c:2080 glade.c:2145
+msgid "French"
+msgstr ""
+
+#: glade.c:694
msgid "GEDCOM Export"
msgstr ""
-#: glade.c:643
+#: glade.c:697
msgid "GEDCOM Import"
msgstr ""
-#: glade.c:646
+#: glade.c:700
msgid "GEDCOM Import Progress"
msgstr ""
-#: glade.c:649
+#: glade.c:703
msgid "GEDCOM Import Status"
msgstr ""
-#: glade.c:652
+#: glade.c:706
msgid "GEDCOM Read Progress"
msgstr ""
-#: glade.c:655
+#: glade.c:709
msgid "GEDCOM file"
msgstr ""
-#: glade.c:1992 glade.c:2070
+#: glade.c:712
+msgid "GRAMPS ID"
+msgstr ""
+
+#: glade.c:715
+msgid "GRAMPS ID prefixes"
+msgstr ""
+
+#: glade.c:2125 glade.c:2214
msgid "GRAMPS ID value was not changed."
msgstr ""
-#: glade.c:658
-msgid "GRAMPS id prefixes"
+#: glade.c:718
+msgid ""
+"GRAMPS is an Open Source project. Its success \n"
+"depends on the users. User feedback is important. \n"
+"Please join the mailing lists, submit bug reports,\n"
+"suggest improvements, and see how you can \n"
+"contribute.\n"
+"\n"
+"Please enjoy using GRAMPS."
msgstr ""
-#: glade.c:2093
-msgid "GRAMPS is not able to find an XML parser on your system."
-msgstr ""
-
-#: glade.c:661
+#: glade.c:728
msgid "GRAMPS package export"
msgstr ""
-#: glade.c:665 glade.c:2382
+#: glade.c:732 glade.c:2537
msgid "Gallery"
msgstr ""
-#: glade.c:669 glade.c:2305 glade.c:2375 glade.c:2376
+#: glade.c:736 glade.c:2460 glade.c:2530 glade.c:2531
msgid "Gender"
msgstr ""
-#: glade.c:674
+#: glade.c:741
msgid "General"
msgstr ""
-#: glade.c:677
+#: glade.c:744
msgid "General Information"
msgstr ""
-#: glade.c:2134 glade.c:2185 glade.c:2219 glade.c:2271 glade.c:2289
-#: glade.c:2299 glade.c:2313
+#: glade.c:2285 glade.c:2336 glade.c:2370 glade.c:2374 glade.c:2426
+#: glade.c:2444 glade.c:2454 glade.c:2468
msgid "Generate Files"
msgstr ""
-#: glade.c:680
+#: glade.c:747
msgid "Generate Relationship Graphs"
msgstr ""
-#: glade.c:2346
+#: glade.c:2500
msgid "Generate SoundEx codes"
msgstr ""
-#: glade.c:2399
+#: glade.c:2554
msgid "Generate Web Site"
msgstr ""
-#: glade.c:683
+#: glade.c:750
msgid "Generate an Ancestor Graph"
msgstr ""
-#: glade.c:686
+#: glade.c:753
msgid "Generate reports"
msgstr ""
-#: glade.c:2348
+#: glade.c:2502
msgid "Generates SoundEx codes for names"
msgstr ""
-#: glade.c:2220
+#: glade.c:2371 glade.c:2375
msgid "Generates a list of descendants of the active person"
msgstr ""
-#: glade.c:2295
+#: glade.c:2450
msgid "Generates relationship graphs, currently only in GraphViz format."
msgstr ""
-#: glade.c:2401
+#: glade.c:2556
msgid "Generates web (HTML) pages for individuals, or a set of individuals."
msgstr ""
-#: glade.c:2209
+#: glade.c:2360
#, c-format
msgid "Generation %d has %d individuals.\n"
msgstr ""
-#: glade.c:2208
+#: glade.c:2359
#, c-format
msgid "Generation %d has 1 individual.\n"
msgstr ""
-#: glade.c:690
+#: glade.c:757
msgid "Generations"
msgstr ""
-#: glade.c:694
+#: glade.c:761
msgid "Given Name"
msgstr ""
-#: glade.c:697
+#: glade.c:764
msgid "Go"
msgstr ""
-#: glade.c:700
+#: glade.c:767
msgid "Go to Bookmark"
msgstr ""
-#: glade.c:1896
+#: glade.c:2041
msgid "Graduation"
msgstr ""
-#: glade.c:703 glade.c:2028
+#: glade.c:770 glade.c:2171
msgid "Gramps"
msgstr ""
-#: glade.c:1851
+#: glade.c:1996
msgid ""
"Gramps (Genealogical Research and Analysis Management Programming System) is "
"a personal genealogy program."
msgstr ""
-#: glade.c:706
+#: glade.c:773
msgid "Gramps - Add Child"
msgstr ""
-#: glade.c:709
+#: glade.c:776
msgid "Gramps - Add New Child"
msgstr ""
-#: glade.c:712
+#: glade.c:779
msgid "Gramps - Address Editor"
msgstr ""
-#: glade.c:715
+#: glade.c:782
msgid "Gramps - Ahnentafel Report"
msgstr ""
-#: glade.c:718
+#: glade.c:785
msgid "Gramps - Alternate Name Editor"
msgstr ""
-#: glade.c:721
+#: glade.c:788
msgid "Gramps - Ancestor Chart"
msgstr ""
-#: glade.c:724
+#: glade.c:791
msgid "Gramps - Attribute Editor"
msgstr ""
-#: glade.c:727
+#: glade.c:794
msgid "Gramps - Change Event Types"
msgstr ""
-#: glade.c:730
+#: glade.c:797
msgid "Gramps - Change Global Media Object Properties"
msgstr ""
-#: glade.c:733
+#: glade.c:800
msgid "Gramps - Change Local Media Object Properties"
msgstr ""
-#: glade.c:736
+#: glade.c:803
msgid "Gramps - Choose Parents"
msgstr ""
-#: glade.c:739
+#: glade.c:806
msgid "Gramps - Choose Spouse"
msgstr ""
-#: glade.c:742
+#: glade.c:809
msgid "Gramps - Complex Filter"
msgstr ""
-#: glade.c:745
+#: glade.c:812
msgid "Gramps - Database Summary"
msgstr ""
-#: glade.c:748
+#: glade.c:815
msgid "Gramps - Database Verify"
msgstr ""
-#: glade.c:751
+#: glade.c:818
msgid "Gramps - Descendant Browser"
msgstr ""
-#: glade.c:754
+#: glade.c:821
msgid "Gramps - Descendant Report"
msgstr ""
-#: glade.c:757
+#: glade.c:824
msgid "Gramps - Document Styles"
msgstr ""
-#: glade.c:760
+#: glade.c:827
msgid "Gramps - Edit Bookmarks"
msgstr ""
-#: glade.c:763
+#: glade.c:830
msgid "Gramps - Edit Note"
msgstr ""
-#: glade.c:766
+#: glade.c:833
msgid "Gramps - Edit Person"
msgstr ""
-#: glade.c:769
+#: glade.c:836
msgid "Gramps - Event Comparison"
msgstr ""
-#: glade.c:772
+#: glade.c:839
msgid "Gramps - Event Editor"
msgstr ""
-#: glade.c:775
+#: glade.c:842
msgid "Gramps - Export GRAMPS package"
msgstr ""
-#: glade.c:778
+#: glade.c:845
msgid "Gramps - Family Group Report"
msgstr ""
-#: glade.c:781
-msgid "Gramps - Find person"
+#: glade.c:848
+msgid "Gramps - Find Person"
msgstr ""
-#: glade.c:784
+#: glade.c:851
msgid "Gramps - GEDCOM Import"
msgstr ""
-#: glade.c:787
+#: glade.c:854
msgid "Gramps - Generate HTML reports"
msgstr ""
-#: glade.c:790
+#: glade.c:857
msgid "Gramps - Getting Started"
msgstr ""
-#: glade.c:793
+#: glade.c:860
msgid "Gramps - Gramps import"
msgstr ""
-#: glade.c:796
+#: glade.c:863
msgid "Gramps - Individual Summary"
msgstr ""
-#: glade.c:799
+#: glade.c:866
+msgid "Gramps - Internal Error Ecountered"
+msgstr ""
+
+#: glade.c:869
msgid "Gramps - Internet Address Editor"
msgstr ""
-#: glade.c:802
+#: glade.c:872
msgid "Gramps - Marriage Editor"
msgstr ""
-#: glade.c:805
+#: glade.c:875
msgid "Gramps - Marriage/Relationship Editor"
msgstr ""
-#: glade.c:808
+#: glade.c:878
msgid "Gramps - Merge List"
msgstr ""
-#: glade.c:811
+#: glade.c:881
msgid "Gramps - Merge People"
msgstr ""
-#: glade.c:814
+#: glade.c:884
msgid "Gramps - Merge Places"
msgstr ""
-#: glade.c:817
+#: glade.c:887
msgid "Gramps - Name and Title Extraction Tool"
msgstr ""
-#: glade.c:820
+#: glade.c:890
msgid "Gramps - Open a database"
msgstr ""
-#: glade.c:823
+#: glade.c:893
msgid "Gramps - Place Editor"
msgstr ""
-#: glade.c:826
+#: glade.c:896
msgid "Gramps - Plugin Selection"
msgstr ""
-#: glade.c:829
+#: glade.c:899
msgid "Gramps - Preferences"
msgstr ""
-#: glade.c:832
+#: glade.c:902
msgid "Gramps - Relationship Calculator"
msgstr ""
-#: glade.c:835
+#: glade.c:905
msgid "Gramps - Report Selection"
msgstr ""
-#: glade.c:838
+#: glade.c:908
+msgid "Gramps - Report Title"
+msgstr ""
+
+#: glade.c:911
msgid "Gramps - Revison Control Comment"
msgstr ""
-#: glade.c:841
+#: glade.c:914
msgid "Gramps - Save as a Spreadsheet"
msgstr ""
-#: glade.c:844
+#: glade.c:917
msgid "Gramps - Select File"
msgstr ""
-#: glade.c:847
+#: glade.c:920
msgid "Gramps - Select a Media Object"
msgstr ""
-#: glade.c:850
+#: glade.c:923
msgid "Gramps - Select an older revision"
msgstr ""
-#: glade.c:853
+#: glade.c:926
msgid "Gramps - Select default database directory"
msgstr ""
-#: glade.c:856
+#: glade.c:929
msgid "Gramps - Select default report directory"
msgstr ""
-#: glade.c:859
+#: glade.c:932
msgid "Gramps - SoundEx Code Generator"
msgstr ""
-#: glade.c:862
+#: glade.c:935
msgid "Gramps - Source Editor"
msgstr ""
-#: glade.c:865
+#: glade.c:938
msgid "Gramps - Source Information"
msgstr ""
-#: glade.c:868
+#: glade.c:941
msgid "Gramps - Source Reference Selection"
msgstr ""
-#: glade.c:871
+#: glade.c:944
msgid "Gramps - Style Editor"
msgstr ""
-#: glade.c:874
+#: glade.c:947
msgid "Gramps Import"
msgstr ""
-#: glade.c:877
+#: glade.c:950
msgid "Gramps Startup Druid"
msgstr ""
-#: glade.c:880
+#: glade.c:953
msgid "Gramps file"
msgstr ""
-#: glade.c:2392
+#: glade.c:2547
msgid "Grandparent's ancestors and descendants"
msgstr ""
-#: glade.c:883
+#: glade.c:956
msgid "GraphViz (dot)"
msgstr ""
-#: glade.c:2296
+#: glade.c:2451
msgid ""
"GraphViz (dot) can transform the graph into postscript, jpeg, png, vrml, "
"svg, and many other formats."
msgstr ""
-#: glade.c:886
+#: glade.c:959
msgid "GraphViz File"
msgstr ""
-#: glade.c:889 glade.c:2018
+#: glade.c:962 glade.c:2145
+msgid "Gregorian"
+msgstr ""
+
+#: glade.c:965 glade.c:2152
msgid "HTML"
msgstr ""
-#: glade.c:892
+#: glade.c:968
msgid "HTML Template"
msgstr ""
-#: glade.c:2177
+#: glade.c:2328
#, c-format
msgid "He died in the year %s"
msgstr ""
-#: glade.c:2176
+#: glade.c:2327
#, c-format
msgid "He died in the year %s in %s"
msgstr ""
-#: glade.c:2173
+#: glade.c:2324
#, c-format
msgid "He died on %s"
msgstr ""
-#: glade.c:2172
+#: glade.c:2323
#, c-format
msgid "He died on %s in %s"
msgstr ""
-#: glade.c:895
+#: glade.c:971 glade.c:2079 glade.c:2145
+msgid "Hebrew"
+msgstr ""
+
+#: glade.c:974
msgid "Hide people not likely to be a child of this family"
msgstr ""
-#: glade.c:898 glade.c:1865 glade.c:2317
+#: glade.c:977 glade.c:2010 glade.c:2472
msgid "High"
msgstr ""
-#: glade.c:901
+#: glade.c:980
msgid "Home"
msgstr ""
-#: glade.c:904
+#: glade.c:983
msgid "I"
msgstr ""
-#: glade.c:910
+#: glade.c:989
msgid "ID"
msgstr ""
-#: glade.c:913
+#: glade.c:992
msgid "Identification"
msgstr ""
-#: glade.c:1910
+#: glade.c:2057
msgid "Identification Number"
msgstr ""
-#: glade.c:916
+#: glade.c:995
msgid "Image"
msgstr ""
-#: glade.c:1895
+#: glade.c:2040
msgid "Immigration"
msgstr ""
-#: glade.c:2335
+#: glade.c:2489
msgid "Import from GEDCOM"
msgstr ""
-#: glade.c:2336
-msgid "Import from Gramps"
+#: glade.c:2490
+msgid "Import from GRAMPS"
msgstr ""
-#: glade.c:919
+#: glade.c:998
msgid "Include a link to the index page"
msgstr ""
-#: glade.c:2388
+#: glade.c:2543
msgid "Individual"
msgstr ""
-#: glade.c:2006
+#: glade.c:2139
msgid "Individual Attributes"
msgstr ""
-#: glade.c:2005
+#: glade.c:2138
msgid "Individual Events"
msgstr ""
-#: glade.c:2310
+#: glade.c:2465
msgid "Individual Facts"
msgstr ""
-#: glade.c:2007
+#: glade.c:2140
msgid "Individual Names"
msgstr ""
-#: glade.c:922 glade.c:2312
+#: glade.c:1001 glade.c:2467
msgid "Individual Summary"
msgstr ""
-#: glade.c:2311
+#: glade.c:2466
#, c-format
msgid "Individual Summary for %s"
msgstr ""
-#: glade.c:2349
+#: glade.c:2503
msgid "Individuals"
msgstr ""
-#: glade.c:2354
+#: glade.c:2508
msgid "Individuals missing birth dates"
msgstr ""
-#: glade.c:2353
+#: glade.c:2507
msgid "Individuals with incomplete names"
msgstr ""
-#: glade.c:2360
+#: glade.c:2514
msgid "Individuals with media objects"
msgstr ""
-#: glade.c:925
+#: glade.c:1004
msgid "Information"
msgstr ""
-#: glade.c:2214
+#: glade.c:2365
msgid "Interactive descendant browser"
msgstr ""
-#: glade.c:928
+#: glade.c:1007
+msgid "Internal Error Encountered"
+msgstr ""
+
+#: glade.c:1010
msgid "Internet"
msgstr ""
-#: glade.c:931 glade.c:1997 glade.c:1999
+#: glade.c:1013 glade.c:2130 glade.c:2132
msgid "Internet Address Editor"
msgstr ""
-#: glade.c:1996 glade.c:1998
+#: glade.c:2129 glade.c:2131
#, c-format
msgid "Internet Address Editor for %s"
msgstr ""
-#: glade.c:934
+#: glade.c:1016
msgid "Internet Addresses"
msgstr ""
-#: glade.c:2040
+#: glade.c:2183
msgid "Invalid move. Children must be ordered by birth date."
msgstr ""
-#: glade.c:937
+#: glade.c:1019
msgid "Invert"
msgstr ""
-#: glade.c:940
+#: glade.c:1022
msgid "Italic"
msgstr ""
-#: glade.c:1929
+#: glade.c:2072
msgid "January"
msgstr ""
-#: glade.c:1935
+#: glade.c:1025 glade.c:2078 glade.c:2145
+msgid "Julian"
+msgstr ""
+
+#: glade.c:2073
msgid "July"
msgstr ""
-#: glade.c:1934
+#: glade.c:2073
msgid "June"
msgstr ""
-#: glade.c:2020
+#: glade.c:2154
msgid "KWord"
msgstr ""
-#: glade.c:943
+#: glade.c:1028
msgid "Keep other birth event as an alternate birth event"
msgstr ""
-#: glade.c:946
+#: glade.c:1031
msgid "Keep other death event as an alternate death event"
msgstr ""
-#: glade.c:949
+#: glade.c:1034
msgid "Keep other name as an alternate name"
msgstr ""
-#: glade.c:2019
+#: glade.c:1037
+msgid "LDS"
+msgstr ""
+
+#: glade.c:1040
+msgid "LDS Baptism"
+msgstr ""
+
+#: glade.c:2153
msgid "LaTeX"
msgstr ""
-#: glade.c:952 glade.c:2078
+#: glade.c:1043 glade.c:2227
msgid "Landscape"
msgstr ""
-#: glade.c:955
+#: glade.c:1046
msgid "Latitude"
msgstr ""
-#: glade.c:958
+#: glade.c:1049
msgid "Left Margin"
msgstr ""
-#: glade.c:961
+#: glade.c:1053
msgid "Letter"
msgstr ""
-#: glade.c:964
+#: glade.c:1056
msgid "List display options"
msgstr ""
-#: glade.c:2370
+#: glade.c:2525
msgid "List exceptions to assertions or checks about the database"
msgstr ""
-#: glade.c:967
+#: glade.c:1059
msgid "Load Filters"
msgstr ""
-#: glade.c:2027
+#: glade.c:2170
#, c-format
msgid "Loading %s ..."
msgstr ""
-#: glade.c:970
+#: glade.c:1062
msgid "Location"
msgstr ""
-#: glade.c:973 glade.c:2067
+#: glade.c:1065 glade.c:2211
msgid "Location Editor"
msgstr ""
-#: glade.c:2066
+#: glade.c:2210
#, c-format
msgid "Location Editor for %s"
msgstr ""
-#: glade.c:976
+#: glade.c:1068
msgid "Longitude"
msgstr ""
-#: glade.c:979 glade.c:1863 glade.c:2315
+#: glade.c:1071 glade.c:2008 glade.c:2470
msgid "Low"
msgstr ""
-#: glade.c:1837
+#: glade.c:1982
msgid "MM-DD-YYYY"
msgstr ""
-#: glade.c:1840
+#: glade.c:1985
msgid "MM.DD.YYYY"
msgstr ""
-#: glade.c:1836
+#: glade.c:1981
msgid "MM/DD/YYYY"
msgstr ""
-#: glade.c:1846
+#: glade.c:1991
msgid "MM/DD/YYYY, MM.DD.YYYY, or MM-DD-YYYY"
msgstr ""
-#: glade.c:1834
+#: glade.c:1979
msgid "MON Day, Year"
msgstr ""
-#: glade.c:982
+#: glade.c:1074
msgid "Make Local Copy"
msgstr ""
-#: glade.c:985
+#: glade.c:1077
+msgid "Make a local copy when the object is dropped"
+msgstr ""
+
+#: glade.c:1080
+msgid "Make a reference to the object when the object is dropped"
+msgstr ""
+
+#: glade.c:1083
msgid "Make the active person the default person"
msgstr ""
-#: glade.c:988
+#: glade.c:1086
msgid "Make the current father the active person"
msgstr ""
-#: glade.c:991
+#: glade.c:1089
msgid "Make the current mother the active person"
msgstr ""
-#: glade.c:994
+#: glade.c:1092
msgid "Make the default person the active person"
msgstr ""
-#: glade.c:997
+#: glade.c:1095
msgid "Make the selected child the active person"
msgstr ""
-#: glade.c:2306 glade.c:2375
+#: glade.c:2461 glade.c:2530
msgid "Male"
msgstr ""
-#: glade.c:2351 glade.c:2424
+#: glade.c:2505 glade.c:2581
msgid "Males"
msgstr ""
-#: glade.c:1931
+#: glade.c:2072
msgid "March"
msgstr ""
-#: glade.c:1874
+#: glade.c:2019
msgid "Marriage"
msgstr ""
-#: glade.c:1871
+#: glade.c:2016
msgid "Marriage Contract"
msgstr ""
-#: glade.c:1000
+#: glade.c:1098
msgid "Marriage Editor"
msgstr ""
-#: glade.c:1872
+#: glade.c:2017
msgid "Marriage License"
msgstr ""
-#: glade.c:1873
+#: glade.c:2018
msgid "Marriage Settlement"
msgstr ""
-#: glade.c:1003
+#: glade.c:1101
msgid "Marriage/Relationship Editor"
msgstr ""
-#: glade.c:2300 glade.c:2385
+#: glade.c:2455 glade.c:2540
msgid "Marriages/Children"
msgstr ""
-#: glade.c:1821 glade.c:1914 glade.c:1919 glade.c:2284 glade.c:2285
+#: glade.c:1966 glade.c:2061 glade.c:2066 glade.c:2439 glade.c:2440
msgid "Married"
msgstr ""
-#: glade.c:1006
-msgid "Match Treshold"
+#: glade.c:1104
+msgid "Match Threshold"
msgstr ""
-#: glade.c:1009
+#: glade.c:1107
msgid "Maximum Generations"
msgstr ""
-#: glade.c:1012
+#: glade.c:1110
msgid "Maximum age"
msgstr ""
-#: glade.c:1015
+#: glade.c:1113
msgid "Maximum age to bear a child"
msgstr ""
-#: glade.c:1018
+#: glade.c:1116
msgid "Maximum age to father a child"
msgstr ""
-#: glade.c:1021
+#: glade.c:1119
msgid "Maximum age to marry"
msgstr ""
-#: glade.c:1024
+#: glade.c:1122
msgid "Maximum husband-wife age difference"
msgstr ""
-#: glade.c:1027
+#: glade.c:1125
msgid "Maximum number of children"
msgstr ""
-#: glade.c:1030
+#: glade.c:1128
msgid "Maximum number of consecutive years of widowhood"
msgstr ""
-#: glade.c:1033
+#: glade.c:1131
msgid "Maximum number of spouses for a person"
msgstr ""
-#: glade.c:1036
+#: glade.c:1134
msgid "Maximum number of years between children"
msgstr ""
-#: glade.c:1039
+#: glade.c:1137
msgid "Maximum span of years for all children"
msgstr ""
-#: glade.c:1933
+#: glade.c:2073
msgid "May"
msgstr ""
-#: glade.c:1042
+#: glade.c:1140
msgid "Media"
msgstr ""
-#: glade.c:1045
+#: glade.c:1143
msgid "Media Object"
msgstr ""
-#: glade.c:2010 glade.c:2359
+#: glade.c:1146 glade.c:2143 glade.c:2513
msgid "Media Objects"
msgstr ""
-#: glade.c:1897
+#: glade.c:2042
msgid "Medical Information"
msgstr ""
-#: glade.c:2316
+#: glade.c:2471
msgid "Medium"
msgstr ""
-#: glade.c:1048
+#: glade.c:1149
msgid "Men"
msgstr ""
-#: glade.c:1051
+#: glade.c:1152
msgid "Merge"
msgstr ""
-#: glade.c:1054
+#: glade.c:1155
msgid "Merge People"
msgstr ""
-#: glade.c:1057
+#: glade.c:1158
msgid "Merge and Close"
msgstr ""
-#: glade.c:1060
+#: glade.c:1161
msgid "Merge and Edit"
msgstr ""
-#: glade.c:1898
+#: glade.c:2043
msgid "Military Service"
msgstr ""
-#: glade.c:1063
+#: glade.c:1164
msgid "Minimum age to bear a child"
msgstr ""
-#: glade.c:1066
+#: glade.c:1167
msgid "Minimum age to father a child"
msgstr ""
-#: glade.c:1069
+#: glade.c:1170
msgid "Minimum age to marry"
msgstr ""
-#: glade.c:1833
+#: glade.c:2519
+msgid "Missing Media Objects"
+msgstr ""
+
+#: glade.c:1978
msgid "Month Day, Year"
msgstr ""
-#: glade.c:1073 glade.c:1831 glade.c:2048 glade.c:2282 glade.c:2309
-#: glade.c:2378 glade.c:2380
+#: glade.c:1174 glade.c:1976 glade.c:2163 glade.c:2192 glade.c:2437
+#: glade.c:2464 glade.c:2533 glade.c:2535
msgid "Mother"
msgstr ""
-#: glade.c:1076
+#: glade.c:1177
msgid "Multiple"
msgstr ""
-#: glade.c:1083 glade.c:2304 glade.c:2374
+#: glade.c:1184 glade.c:2459 glade.c:2529
msgid "Name"
msgstr ""
-#: glade.c:1086
+#: glade.c:1187
msgid "Name Format"
msgstr ""
-#: glade.c:1089
+#: glade.c:1190
msgid "Name and Title Extraction Tool"
msgstr ""
-#: glade.c:1092
+#: glade.c:1193
msgid "Name used to generate SoundEx code"
msgstr ""
-#: glade.c:1095
+#: glade.c:1196
msgid "Names"
msgstr ""
-#: glade.c:2432
+#: glade.c:2589
msgid "Names that contain a substring"
msgstr ""
-#: glade.c:2431
+#: glade.c:2588
msgid "Names that match a regular expression"
msgstr ""
-#: glade.c:2426
+#: glade.c:2583
msgid "Names with same SoundEx code as ..."
msgstr ""
-#: glade.c:2425
+#: glade.c:2582
msgid "Names with the specified SoundEx code"
msgstr ""
-#: glade.c:1911
+#: glade.c:2058
msgid "National Origin"
msgstr ""
-#: glade.c:1899
+#: glade.c:2044
msgid "Naturalization"
msgstr ""
-#: glade.c:2394
+#: glade.c:2549
#, c-format
msgid "Neither %s nor %s are directories"
msgstr ""
-#: glade.c:1098
+#: glade.c:1199
msgid "New Database"
msgstr ""
-#: glade.c:1101
+#: glade.c:1202
msgid "New Person"
msgstr ""
-#: glade.c:1104
+#: glade.c:1205
msgid "Nick Name"
msgstr ""
-#: glade.c:2154 glade.c:2239
+#: glade.c:2305 glade.c:2394
msgid "Nineteenth"
msgstr ""
-#: glade.c:2144 glade.c:2229
+#: glade.c:2295 glade.c:2384
msgid "Ninth"
msgstr ""
-#: glade.c:1107
+#: glade.c:1208
msgid "No Addresses"
msgstr ""
-#: glade.c:1110
+#: glade.c:1211
msgid "No Alternate Names"
msgstr ""
-#: glade.c:1114
+#: glade.c:1215
msgid "No Attributes"
msgstr ""
-#: glade.c:2029 glade.c:2043 glade.c:2044
+#: glade.c:2172 glade.c:2186 glade.c:2187
msgid "No Comment Provided"
msgstr ""
-#: glade.c:1117
+#: glade.c:1218
msgid "No Events"
msgstr ""
-#: glade.c:2051
+#: glade.c:2195
msgid "No default/home person has been set"
msgstr ""
-#: glade.c:1924
+#: glade.c:2071
msgid "No definition available"
msgstr ""
-#: glade.c:2013 glade.c:2131
+#: glade.c:2147 glade.c:2276
msgid "No description"
msgstr ""
-#: glade.c:2090 glade.c:2092
+#: glade.c:2239 glade.c:2241
msgid "No description was provided"
msgstr ""
-#: glade.c:2192
+#: glade.c:2343
msgid "No errors were found"
msgstr ""
-#: glade.c:1915
+#: glade.c:2062
msgid "No legal or common-law relationship between man and woman"
msgstr ""
-#: glade.c:2323
+#: glade.c:2478
msgid "No titles or nicknames were found"
msgstr ""
-#: glade.c:1121 glade.c:1859
+#: glade.c:2045
+msgid "Nobility Title"
+msgstr ""
+
+#: glade.c:1222 glade.c:2004 glade.c:2120
msgid "None"
msgstr ""
-#: glade.c:1124 glade.c:1864
+#: glade.c:1225 glade.c:2009
msgid "Normal"
msgstr ""
-#: glade.c:1129 glade.c:2125
+#: glade.c:1230 glade.c:2270 glade.c:2278
msgid "Note"
msgstr ""
-#: glade.c:1133 glade.c:2384
+#: glade.c:1234 glade.c:2539
msgid "Notes"
msgstr ""
-#: glade.c:1939
+#: glade.c:2074
msgid "November"
msgstr ""
-#: glade.c:1913
+#: glade.c:2060
msgid "Number of Children"
msgstr ""
-#: glade.c:1136
+#: glade.c:1237
msgid "Number of Errors"
msgstr ""
-#: glade.c:1139
+#: glade.c:1240
msgid "Number of Families"
msgstr ""
-#: glade.c:1142
+#: glade.c:2046
+msgid "Number of Marriages"
+msgstr ""
+
+#: glade.c:1243
msgid "Number of People"
msgstr ""
-#: glade.c:2211
+#: glade.c:2362
msgid "Number of ancestors"
msgstr ""
-#: glade.c:2207
+#: glade.c:2358
#, c-format
msgid "Number of ancestors of \"%s\" by generation"
msgstr ""
-#: glade.c:2357
+#: glade.c:2511
msgid "Number of families"
msgstr ""
-#: glade.c:2350
+#: glade.c:2504
msgid "Number of individuals"
msgstr ""
-#: glade.c:2362
+#: glade.c:2516
msgid "Number of unique media objects"
msgstr ""
-#: glade.c:1145
+#: glade.c:1246
msgid "O"
msgstr ""
-#: glade.c:1148
+#: glade.c:1249
msgid "OK"
msgstr ""
-#: glade.c:1151
+#: glade.c:1252
msgid "Object Type"
msgstr ""
-#: glade.c:1900
+#: glade.c:2047
msgid "Occupation"
msgstr ""
-#: glade.c:1938
+#: glade.c:2074
msgid "October"
msgstr ""
-#: glade.c:1154
+#: glade.c:1255
msgid "Odd Row Background"
msgstr ""
-#: glade.c:1157
+#: glade.c:1258
msgid "Odd Row Foreground"
msgstr ""
-#: glade.c:1160
+#: glade.c:1261
msgid "Open"
msgstr ""
-#: glade.c:1163
+#: glade.c:1264
msgid "Open File"
msgstr ""
-#: glade.c:1166
+#: glade.c:1267
msgid "Open a GRAMPS Database"
msgstr ""
-#: glade.c:1169
+#: glade.c:1270
msgid "Open a database"
msgstr ""
-#: glade.c:1172 glade.c:2015
+#: glade.c:1274 glade.c:2149
msgid "OpenOffice"
msgstr ""
-#: glade.c:1175
+#: glade.c:1277
msgid "OpenOffice Spreadsheet"
msgstr ""
-#: glade.c:1182
+#: glade.c:1285
msgid "Options"
msgstr ""
-#: glade.c:1901
+#: glade.c:1288
+msgid "Ordinance"
+msgstr ""
+
+#: glade.c:2048
msgid "Ordination"
msgstr ""
-#: glade.c:1187
+#: glade.c:1293
msgid "Orientation"
msgstr ""
-#: glade.c:1190 glade.c:1861 glade.c:1918 glade.c:1923
+#: glade.c:1296 glade.c:2006 glade.c:2065 glade.c:2070
msgid "Other"
msgstr ""
-#: glade.c:1193
+#: glade.c:1299
msgid "Other Names"
msgstr ""
-#: glade.c:1196
+#: glade.c:1302
msgid "Output File"
msgstr ""
-#: glade.c:1199
+#: glade.c:1305
msgid "P"
msgstr ""
-#: glade.c:1202
+#: glade.c:1308
msgid "PAF for PalmOS Export"
msgstr ""
-#: glade.c:1205 glade.c:2017
+#: glade.c:1311 glade.c:2151
msgid "PDF"
msgstr ""
-#: glade.c:1208
+#: glade.c:1314
msgid "P_laces"
msgstr ""
-#: glade.c:1211
+#: glade.c:1317
msgid "Padding"
msgstr ""
-#: glade.c:1214
+#: glade.c:1320
msgid "Page break between generations"
msgstr ""
-#: glade.c:1217
+#: glade.c:1323
msgid "Pages"
msgstr ""
-#: glade.c:1224
+#: glade.c:1331
msgid "Paper"
msgstr ""
-#: glade.c:1227
+#: glade.c:1334
msgid "Paper Orientation"
msgstr ""
-#: glade.c:1230
+#: glade.c:1337
msgid "Paper Size Selection"
msgstr ""
-#: glade.c:1233
+#: glade.c:1340
msgid "Paragraph Options"
msgstr ""
-#: glade.c:1236
+#: glade.c:1343
msgid "Paragraph Style"
msgstr ""
-#: glade.c:1829 glade.c:1830 glade.c:2045 glade.c:2046
+#: glade.c:1974 glade.c:1975 glade.c:2161 glade.c:2162 glade.c:2189
+#: glade.c:2190
msgid "Parent"
msgstr ""
-#: glade.c:1239
+#: glade.c:1346
msgid "Parent Relationship"
msgstr ""
-#: glade.c:1242
+#: glade.c:1349
msgid "Parents"
msgstr ""
-#: glade.c:1822 glade.c:1916 glade.c:1921
+#: glade.c:1967 glade.c:2063 glade.c:2068
msgid "Partners"
msgstr ""
-#: glade.c:1246
+#: glade.c:1353
msgid "Path"
msgstr ""
-#: glade.c:1249
+#: glade.c:1356
msgid "Pe_digree"
msgstr ""
-#: glade.c:1252
+#: glade.c:1359
msgid "Pedigree"
msgstr ""
-#: glade.c:1256 glade.c:2000
+#: glade.c:1363 glade.c:2133
msgid "People"
msgstr ""
-#: glade.c:2406 glade.c:2412
+#: glade.c:2561 glade.c:2569
#, c-format
msgid "People somehow connected to %s"
msgstr ""
-#: glade.c:2420
+#: glade.c:2577
msgid "People who have an event type of ..."
msgstr ""
-#: glade.c:2422
+#: glade.c:2579
msgid "People who have images"
msgstr ""
-#: glade.c:2416
+#: glade.c:2573
msgid "People who were adopted"
msgstr ""
-#: glade.c:2415
+#: glade.c:2572
msgid "People with an event after ..."
msgstr ""
-#: glade.c:2417
+#: glade.c:2574
msgid "People with an event before ..."
msgstr ""
-#: glade.c:2419
+#: glade.c:2576
msgid "People with an event location of ..."
msgstr ""
-#: glade.c:2430
+#: glade.c:2587
msgid "People with children"
msgstr ""
-#: glade.c:2423
+#: glade.c:2580
msgid "People with incomplete names"
msgstr ""
-#: glade.c:2427
+#: glade.c:2584
msgid "People with multiple marriage records"
msgstr ""
-#: glade.c:2428
+#: glade.c:2585
msgid "People with no marriage records"
msgstr ""
-#: glade.c:2429
+#: glade.c:2586
msgid "People without a birth date"
msgstr ""
-#: glade.c:1261 glade.c:2062 glade.c:2274
+#: glade.c:1368 glade.c:2206 glade.c:2429
msgid "Person"
msgstr ""
-#: glade.c:1264
+#: glade.c:1371
msgid "Person 1"
msgstr ""
-#: glade.c:1267
+#: glade.c:1374
msgid "Person 2"
msgstr ""
-#: glade.c:1270
+#: glade.c:1377
msgid "Phone"
msgstr ""
-#: glade.c:1273
+#: glade.c:1380
msgid "Pick a Font"
msgstr ""
-#: glade.c:1279
+#: glade.c:1386
msgid "Pick a color"
msgstr ""
-#: glade.c:1284 glade.c:2065
+#: glade.c:1391 glade.c:2209
msgid "Place"
msgstr ""
-#: glade.c:1287
+#: glade.c:1394
msgid "Place 1"
msgstr ""
-#: glade.c:1290
+#: glade.c:1397
msgid "Place 2"
msgstr ""
-#: glade.c:1293
+#: glade.c:1400
msgid "Place Editor"
msgstr ""
-#: glade.c:1296
+#: glade.c:1403
msgid "Place Name"
msgstr ""
-#: glade.c:1299 glade.c:2011
+#: glade.c:1406 glade.c:2144
msgid "Places"
msgstr ""
-#: glade.c:1302
+#: glade.c:1409
msgid "Please be patient. This may take a while."
msgstr ""
-#: glade.c:1995
+#: glade.c:2128
msgid "Please check the person's marriages."
msgstr ""
-#: glade.c:1305
-msgid "Please enjoy using Gramps."
-msgstr ""
-
-#: glade.c:1308
+#: glade.c:1412
msgid ""
"Please enter the following information. You can change it at \n"
"anytime in the program's preference settings"
msgstr ""
-#: glade.c:1313 glade.c:2077
+#: glade.c:1418 glade.c:2226
msgid "Portrait"
msgstr ""
-#: glade.c:1316
+#: glade.c:1421
msgid "Potential Merges"
msgstr ""
-#: glade.c:1319
+#: glade.c:1424
msgid "Preferred Output Format"
msgstr ""
-#: glade.c:1322
+#: glade.c:1427
msgid "Preferred Paper Size"
msgstr ""
-#: glade.c:1325
+#: glade.c:1430
msgid "Preview"
msgstr ""
-#: glade.c:1328
+#: glade.c:1433
msgid "Print"
msgstr ""
-#: glade.c:1331
+#: glade.c:1436
msgid "Privacy Options"
msgstr ""
-#: glade.c:1334 glade.c:2128 glade.c:2129
+#: glade.c:1439 glade.c:2273 glade.c:2274 glade.c:2281 glade.c:2282
msgid "Private"
msgstr ""
-#: glade.c:1338
+#: glade.c:1443
msgid "Private Record"
msgstr ""
-#: glade.c:1902
+#: glade.c:2049
msgid "Probate"
msgstr ""
-#: glade.c:2272
+#: glade.c:2427
msgid "Produces a detailed ancestral report"
msgstr ""
-#: glade.c:2314
+#: glade.c:2469
msgid "Produces a detailed report on the selected person."
msgstr ""
-#: glade.c:2135
+#: glade.c:2286
msgid "Produces a graphical ancestral tree graph"
msgstr ""
-#: glade.c:2186
+#: glade.c:2337
msgid "Produces a textual ancestral report"
msgstr ""
-#: glade.c:1341
+#: glade.c:1446
msgid "Prompt for comment on save"
msgstr ""
-#: glade.c:1903
+#: glade.c:2050
msgid "Property"
msgstr ""
-#: glade.c:2216
+#: glade.c:2367
msgid "Provides a browsable hierarchy based on the active person"
msgstr ""
-#: glade.c:2367
+#: glade.c:2522
msgid "Provides a summary of the current database"
msgstr ""
-#: glade.c:1344
+#: glade.c:1449
msgid "Publication Info"
msgstr ""
-#: glade.c:1347
+#: glade.c:1452
msgid "Publication Information"
msgstr ""
-#: glade.c:1350
+#: glade.c:1455
msgid "Qualifier"
msgstr ""
-#: glade.c:1353 glade.c:2130
+#: glade.c:1458 glade.c:2275
msgid "RCS"
msgstr ""
-#: glade.c:2021
+#: glade.c:2155
msgid "RTF"
msgstr ""
-#: glade.c:1356
+#: glade.c:1461
msgid "Rating"
msgstr ""
-#: glade.c:1359
+#: glade.c:1464
msgid "References"
msgstr ""
-#: glade.c:1362
+#: glade.c:1467
msgid "Relationship"
msgstr ""
-#: glade.c:1365
+#: glade.c:1470
msgid "Relationship Type"
msgstr ""
-#: glade.c:2340
+#: glade.c:2494
msgid "Relationship calculator"
msgstr ""
-#: glade.c:1368
+#: glade.c:1473
msgid "Relationship definition"
msgstr ""
-#: glade.c:2298
+#: glade.c:2453
msgid "Relationship graph"
msgstr ""
-#: glade.c:2114 glade.c:2115 glade.c:2118 glade.c:2119 glade.c:2120
-#: glade.c:2337
+#: glade.c:2258 glade.c:2259 glade.c:2260 glade.c:2263 glade.c:2264
+#: glade.c:2265 glade.c:2491
#, c-format
msgid "Relationship to %s"
msgstr ""
-#: glade.c:1371
+#: glade.c:1476
msgid "Relationship to Father"
msgstr ""
-#: glade.c:1374
+#: glade.c:1479
msgid "Relationship to Mother"
msgstr ""
-#: glade.c:1377
+#: glade.c:1482
msgid "Relationship to child"
msgstr ""
-#: glade.c:1904
+#: glade.c:2051
msgid "Religion"
msgstr ""
-#: glade.c:1380
+#: glade.c:1485
msgid "Reload Plugins"
msgstr ""
-#: glade.c:1383
+#: glade.c:1488
msgid "Remove Child"
msgstr ""
-#: glade.c:1386
+#: glade.c:1491
msgid "Remove current spouse"
msgstr ""
-#: glade.c:2189
+#: glade.c:2340
msgid "Rename personal event types"
msgstr ""
-#: glade.c:2343
+#: glade.c:2497
msgid "Reorder gramps IDs"
msgstr ""
-#: glade.c:2345
+#: glade.c:2499
msgid "Reorders the gramps IDs according to gramps' default rules."
msgstr ""
-#: glade.c:1389
+#: glade.c:1494
msgid "Report Selection"
msgstr ""
-#: glade.c:1392
+#: glade.c:1497
+msgid "Report Title"
+msgstr ""
+
+#: glade.c:1500
msgid "Reports"
msgstr ""
-#: glade.c:1395
+#: glade.c:1503
msgid "Researcher"
msgstr ""
-#: glade.c:1398
+#: glade.c:1506
msgid "Researcher Information"
msgstr ""
-#: glade.c:1905
+#: glade.c:2052
msgid "Residence"
msgstr ""
-#: glade.c:1401
+#: glade.c:1509
msgid "Restrict data on living people"
msgstr ""
-#: glade.c:1404
+#: glade.c:1512
msgid "Restrict information on living people"
msgstr ""
-#: glade.c:1906
+#: glade.c:2053
msgid "Retirement"
msgstr ""
-#: glade.c:2381
+#: glade.c:2536
msgid "Return to the index of people"
msgstr ""
-#: glade.c:1407
+#: glade.c:1515
msgid "Revert to an older revision"
msgstr ""
-#: glade.c:1410
+#: glade.c:1518
msgid "Revert to an older version from revision control"
msgstr ""
-#: glade.c:1413
+#: glade.c:1521
msgid "Revert to last saved database"
msgstr ""
-#: glade.c:1416
+#: glade.c:1524
msgid "Revision"
msgstr ""
-#: glade.c:1419
-msgid "Revision Control"
-msgstr ""
-
-#: glade.c:1422
+#: glade.c:1527
msgid "Revision Control Comment"
msgstr ""
-#: glade.c:1425
+#: glade.c:1530
+msgid "Revison Control"
+msgstr ""
+
+#: glade.c:1533
msgid "Right Margin"
msgstr ""
-#: glade.c:1428
+#: glade.c:1536
msgid "Run a tool"
msgstr ""
-#: glade.c:1431
+#: glade.c:1539
msgid "S"
msgstr ""
-#: glade.c:1434
+#: glade.c:1542
msgid "Save"
msgstr ""
-#: glade.c:1437
+#: glade.c:1545
msgid "Save Ancestor Chart"
msgstr ""
-#: glade.c:1440
+#: glade.c:1548
msgid "Save Ancestor Report"
msgstr ""
-#: glade.c:1445
+#: glade.c:1553
msgid "Save As"
msgstr ""
-#: glade.c:1448
+#: glade.c:1556
msgid "Save As..."
msgstr ""
-#: glade.c:1451
+#: glade.c:1559
msgid "Save Data"
msgstr ""
-#: glade.c:1454
+#: glade.c:1562
msgid "Save Descendant Report"
msgstr ""
-#: glade.c:1457
+#: glade.c:1565
msgid "Save Family Group Report"
msgstr ""
-#: glade.c:1460
+#: glade.c:1568
msgid "Save File"
msgstr ""
-#: glade.c:1463
+#: glade.c:1571
msgid "Save Filters"
msgstr ""
-#: glade.c:1466
+#: glade.c:1574
msgid "Save complex filter as:"
msgstr ""
-#: glade.c:1469
+#: glade.c:1577
msgid "Save data as a spreadsheet"
msgstr ""
-#: glade.c:2030
+#: glade.c:2173
#, c-format
msgid "Saving %s ..."
msgstr ""
-#: glade.c:2326
+#: glade.c:1580
+msgid "Sealed to Parents"
+msgstr ""
+
+#: glade.c:2481
msgid ""
"Searches the entire database and attempts to extract titles and nicknames "
"that may be embedded in a person's given name field."
msgstr ""
-#: glade.c:2320
+#: glade.c:2475
msgid ""
"Searches the entire database, looking for individual entries that may "
"represent the same person."
msgstr ""
-#: glade.c:2137 glade.c:2222
+#: glade.c:2288 glade.c:2377
msgid "Second"
msgstr ""
-#: glade.c:1472 glade.c:2075
+#: glade.c:1583 glade.c:2224
msgid "Second Person"
msgstr ""
-#: glade.c:1475
+#: glade.c:1586
msgid "Select"
msgstr ""
-#: glade.c:1478
+#: glade.c:1589
msgid "Select File"
msgstr ""
-#: glade.c:1481
+#: glade.c:1592
msgid "Select a Media Object"
msgstr ""
-#: glade.c:1484
+#: glade.c:1595
msgid "Select a report from those available on the left."
msgstr ""
-#: glade.c:1487
+#: glade.c:1598
msgid "Select a tool from those available on the left."
msgstr ""
-#: glade.c:1490
+#: glade.c:1601
msgid "Select an image"
msgstr ""
-#: glade.c:1493
+#: glade.c:1604
msgid "Select existing person"
msgstr ""
-#: glade.c:1496
+#: glade.c:1607
msgid "Select existing person as spouse"
msgstr ""
-#: glade.c:1499
+#: glade.c:1610
msgid "Select information source"
msgstr ""
-#: glade.c:1502
+#: glade.c:1613
msgid "Select the title for the merged place"
msgstr ""
-#: glade.c:1937
+#: glade.c:1616
+msgid "Selects the calendar format for display"
+msgstr ""
+
+#: glade.c:2074
msgid "September"
msgstr ""
-#: glade.c:2152 glade.c:2237
+#: glade.c:2303 glade.c:2392
msgid "Seventeenth"
msgstr ""
-#: glade.c:2142 glade.c:2227
+#: glade.c:2293 glade.c:2382
msgid "Seventh"
msgstr ""
-#: glade.c:2179
+#: glade.c:2330
#, c-format
msgid "She died in the year %s"
msgstr ""
-#: glade.c:2178
+#: glade.c:2329
#, c-format
msgid "She died in the year %s in %s"
msgstr ""
-#: glade.c:2175
+#: glade.c:2326
#, c-format
msgid "She died on %s"
msgstr ""
-#: glade.c:2174
+#: glade.c:2325
#, c-format
msgid "She died on %s in %s"
msgstr ""
-#: glade.c:1505
+#: glade.c:1619
msgid "Show Detail Flags in display lists"
msgstr ""
-#: glade.c:1508
+#: glade.c:1622
msgid "Show active person's anscestors"
msgstr ""
-#: glade.c:1511
+#: glade.c:1625
+msgid "Show calendar format selection menu"
+msgstr ""
+
+#: glade.c:1628
msgid "Show index numbers in child list"
msgstr ""
-#: glade.c:1514
+#: glade.c:1631
msgid "Show persons that do not match the filtering rule"
msgstr ""
-#: glade.c:1517
+#: glade.c:1634
msgid "Single"
msgstr ""
-#: glade.c:1520
+#: glade.c:1637
msgid "Single (scaled)"
msgstr ""
-#: glade.c:2151 glade.c:2236
+#: glade.c:2302 glade.c:2391
msgid "Sixteenth"
msgstr ""
-#: glade.c:2141 glade.c:2226
+#: glade.c:2292 glade.c:2381
msgid "Sixth"
msgstr ""
-#: glade.c:1523
+#: glade.c:1640
msgid "Size"
msgstr ""
-#: glade.c:1912
+#: glade.c:2059
msgid "Social Security Number"
msgstr ""
-#: glade.c:1526
+#: glade.c:1643
msgid "SoundEx Code"
msgstr ""
-#: glade.c:1529
+#: glade.c:1646
msgid "SoundEx Code Generator"
msgstr ""
-#: glade.c:1532 glade.c:2064 glade.c:2126 glade.c:2127
+#: glade.c:1649 glade.c:2208 glade.c:2271 glade.c:2272 glade.c:2279
+#: glade.c:2280
msgid "Source"
msgstr ""
-#: glade.c:1535
+#: glade.c:1652
msgid "Source Editor"
msgstr ""
-#: glade.c:1538
+#: glade.c:1655
msgid "Source Information"
msgstr ""
-#: glade.c:1541
+#: glade.c:1658
msgid "Source Reference Selection"
msgstr ""
-#: glade.c:1545 glade.c:2372
+#: glade.c:1662 glade.c:2527
msgid "Sources"
msgstr ""
-#: glade.c:1548 glade.c:2283
+#: glade.c:1665 glade.c:2438
msgid "Spouse"
msgstr ""
-#: glade.c:1551
+#: glade.c:1668
+msgid "Spouse Sealing"
+msgstr ""
+
+#: glade.c:1671
msgid "Spouses"
msgstr ""
-#: glade.c:1555
+#: glade.c:1674
+msgid "Standard GEDCOM 5.5"
+msgstr ""
+
+#: glade.c:1678
msgid "State"
msgstr ""
-#: glade.c:1559
+#: glade.c:1682
msgid "State/Province"
msgstr ""
-#: glade.c:1562
+#: glade.c:1685
msgid "Status"
msgstr ""
-#: glade.c:1565
+#: glade.c:1688
msgid "Status Bar"
msgstr ""
-#: glade.c:1569 glade.c:1857
+#: glade.c:1692 glade.c:2002
msgid "Stepchild"
msgstr ""
-#: glade.c:1575
+#: glade.c:1698
msgid "Style Editor"
msgstr ""
-#: glade.c:1578
+#: glade.c:1701
msgid "Style Name"
msgstr ""
-#: glade.c:1583
+#: glade.c:1707
msgid "Styles"
msgstr ""
-#: glade.c:1586
+#: glade.c:1710
msgid "Suffix"
msgstr ""
-#: glade.c:2303 glade.c:2371 glade.c:2373
+#: glade.c:2458 glade.c:2526 glade.c:2528
#, c-format
msgid "Summary of %s"
msgstr ""
-#: glade.c:2365
+#: glade.c:2520
msgid "Summary of the database"
msgstr ""
-#: glade.c:1590
+#: glade.c:1714
msgid "Surname"
msgstr ""
-#: glade.c:1850
+#: glade.c:1995
msgid "Surname, Firstname"
msgstr ""
-#: glade.c:1593
+#: glade.c:1717
+msgid "Target"
+msgstr ""
+
+#: glade.c:1720
msgid "Target Directory"
msgstr ""
-#: glade.c:1600
+#: glade.c:1727
msgid "Template"
msgstr ""
-#: glade.c:2145 glade.c:2230
+#: glade.c:1730
+msgid "Temple"
+msgstr ""
+
+#: glade.c:2296 glade.c:2385
msgid "Tenth"
msgstr ""
-#: glade.c:1603
+#: glade.c:1733
msgid "Text"
msgstr ""
-#: glade.c:1606
+#: glade.c:1736
msgid "Text Color"
msgstr ""
-#: glade.c:2056
+#: glade.c:2200
msgid "That is not a valid file name."
msgstr ""
-#: glade.c:1609
+#: glade.c:1739
msgid "The default directory for storing databases"
msgstr ""
-#: glade.c:1612
+#: glade.c:1742
msgid "The default directory for the output of many report generators"
msgstr ""
-#: glade.c:1615
+#: glade.c:1745
msgid "The default directory for the output of the Web Site report generators"
msgstr ""
-#: glade.c:2053
+#: glade.c:2197
msgid "The marker '' was not in the template"
msgstr ""
-#: glade.c:2338
+#: glade.c:2492
#, c-format
msgid "Their common ancestor is %s."
msgstr ""
-#: glade.c:2339
+#: glade.c:2493
#, c-format
msgid "There is no relationship between %s and %s."
msgstr ""
-#: glade.c:2138 glade.c:2223
+#: glade.c:2289 glade.c:2378
msgid "Third"
msgstr ""
-#: glade.c:2148 glade.c:2233
+#: glade.c:2299 glade.c:2388
msgid "Thirteenth"
msgstr ""
-#: glade.c:2094
-msgid "This is probably due to an incomplete python or PyXML installation"
-msgstr ""
-
-#: glade.c:2073
+#: glade.c:2221
msgid "This media object is currently being used. Delete anyway?"
msgstr ""
-#: glade.c:2083
+#: glade.c:2232
msgid "This place is currently being used. Delete anyway?"
msgstr ""
-#: glade.c:2123
+#: glade.c:2268
msgid "This source is currently being used. Delete anyway?"
msgstr ""
-#: glade.c:1621
+#: glade.c:1751
msgid "Title"
msgstr ""
-#: glade.c:1624
+#: glade.c:1754
msgid "Tool Selection"
msgstr ""
-#: glade.c:1627
+#: glade.c:1757
+msgid "Toolbar"
+msgstr ""
+
+#: glade.c:1760
msgid "Tools"
msgstr ""
-#: glade.c:2210
+#: glade.c:2361
#, c-format
msgid "Total ancestors in generations %d to -1 is %d .\n"
msgstr ""
-#: glade.c:2361
+#: glade.c:2515
msgid "Total number of media object references"
msgstr ""
-#: glade.c:2363
+#: glade.c:2517
msgid "Total size of images"
msgstr ""
-#: glade.c:2147 glade.c:2232
+#: glade.c:2298 glade.c:2387
msgid "Twelfth"
msgstr ""
-#: glade.c:2155 glade.c:2240
+#: glade.c:2306 glade.c:2395
msgid "Twentieth"
msgstr ""
-#: glade.c:2163 glade.c:2248
+#: glade.c:2314 glade.c:2403
msgid "Twenty-eighth"
msgstr ""
-#: glade.c:2160 glade.c:2245
+#: glade.c:2311 glade.c:2400
msgid "Twenty-fifth"
msgstr ""
-#: glade.c:2156 glade.c:2241
+#: glade.c:2307 glade.c:2396
msgid "Twenty-first"
msgstr ""
-#: glade.c:2159 glade.c:2244
+#: glade.c:2310 glade.c:2399
msgid "Twenty-fourth"
msgstr ""
-#: glade.c:2164 glade.c:2249
+#: glade.c:2315 glade.c:2404
msgid "Twenty-ninth"
msgstr ""
-#: glade.c:2157 glade.c:2242
+#: glade.c:2308 glade.c:2397
msgid "Twenty-second"
msgstr ""
-#: glade.c:2162 glade.c:2247
+#: glade.c:2313 glade.c:2402
msgid "Twenty-seventh"
msgstr ""
-#: glade.c:2161 glade.c:2246
+#: glade.c:2312 glade.c:2401
msgid "Twenty-sixth"
msgstr ""
-#: glade.c:2158 glade.c:2243
+#: glade.c:2309 glade.c:2398
msgid "Twenty-third"
msgstr ""
-#: glade.c:1630
+#: glade.c:1763
msgid "Type"
msgstr ""
-#: glade.c:1633
+#: glade.c:1766
msgid "Type Face"
msgstr ""
-#: glade.c:1636
+#: glade.c:1769
msgid "UNICODE"
msgstr ""
-#: glade.c:2089 glade.c:2091
+#: glade.c:2238 glade.c:2240
msgid "Uncategorized"
msgstr ""
-#: glade.c:1639
+#: glade.c:1772
msgid "Underline"
msgstr ""
-#: glade.c:2358
+#: glade.c:2512
msgid "Unique surnames"
msgstr ""
-#: glade.c:1643 glade.c:1860 glade.c:1917 glade.c:1922 glade.c:2049
+#: glade.c:1776 glade.c:2005 glade.c:2064 glade.c:2069 glade.c:2193
msgid "Unknown"
msgstr ""
-#: glade.c:1917
+#: glade.c:2064
msgid "Unknown relationship between a man and woman"
msgstr ""
-#: glade.c:1915 glade.c:1920
+#: glade.c:2062 glade.c:2067
msgid "Unmarried"
msgstr ""
-#: glade.c:2023
+#: glade.c:2166
msgid "Unsaved changes exist in the current database\n"
msgstr ""
-#: glade.c:1647
+#: glade.c:1779
+msgid "Updates the selected address with the above data"
+msgstr ""
+
+#: glade.c:1782
+msgid "Updates the selected attribute with the above data"
+msgstr ""
+
+#: glade.c:1785
msgid "Updates the selected event with the above data"
msgstr ""
-#: glade.c:1650
+#: glade.c:1788
msgid "Use Revision Control"
msgstr ""
-#: glade.c:1653
+#: glade.c:1791
msgid "Use SoundEx codes for name matches"
msgstr ""
-#: glade.c:1656
+#: glade.c:1794
msgid "Use tabbed pages"
msgstr ""
-#: glade.c:2341 glade.c:2347 glade.c:2369
+#: glade.c:1797
+msgid "User Defined IDs"
+msgstr ""
+
+#: glade.c:2495 glade.c:2501 glade.c:2524
msgid "Utilities"
msgstr ""
-#: glade.c:1661
+#: glade.c:1802
msgid "Value"
msgstr ""
-#: glade.c:1664
+#: glade.c:1805
msgid "Verify - Settings"
msgstr ""
-#: glade.c:2368
+#: glade.c:2523
msgid "Verify the database"
msgstr ""
-#: glade.c:1667
+#: glade.c:1808
msgid "Version"
msgstr ""
-#: glade.c:1670 glade.c:1866
+#: glade.c:1811 glade.c:2011
msgid "Very High"
msgstr ""
-#: glade.c:1673 glade.c:1862
+#: glade.c:1814 glade.c:2007
msgid "Very Low"
msgstr ""
-#: glade.c:2212 glade.c:2366
+#: glade.c:2363 glade.c:2521
msgid "View"
msgstr ""
-#: glade.c:2058
+#: glade.c:2202 glade.c:2217
msgid "View in the default viewer"
msgstr ""
-#: glade.c:1676
+#: glade.c:1817
msgid "Volume/Film/Page"
msgstr ""
-#: glade.c:2329 glade.c:2330
+#: glade.c:2484 glade.c:2485
#, c-format
msgid "Warning: line %d was not understood, so it was ignored."
msgstr ""
-#: glade.c:1680
+#: glade.c:1821
msgid "Web Address"
msgstr ""
-#: glade.c:2400
+#: glade.c:2555
msgid "Web Page"
msgstr ""
-#: glade.c:1683
+#: glade.c:1824
msgid ""
"Welcome to Gramps, the Genealogical Research\n"
"and Analysis Management Programming System.\n"
@@ -3587,266 +3755,270 @@ msgid ""
"information."
msgstr ""
-#: glade.c:1907
+#: glade.c:2054
msgid "Will"
msgstr ""
-#: glade.c:1696
+#: glade.c:1837
msgid "Women"
msgstr ""
-#: glade.c:1844
+#: glade.c:1989
msgid "YYYY-MM-DD"
msgstr ""
-#: glade.c:1845
+#: glade.c:1990
msgid "YYYY.MM.DD"
msgstr ""
-#: glade.c:1843
+#: glade.c:1988
msgid "YYYY/MM/DD"
msgstr ""
-#: glade.c:1848
+#: glade.c:1993
msgid "YYYY/MM/DD, YYYY.MM.DD, or YYYY-MM-DD"
msgstr ""
-#: glade.c:2037
+#: glade.c:2180
msgid "You requested too many people to edit at the same time"
msgstr ""
-#: glade.c:2084
+#: glade.c:2233
msgid "You requested too many places to edit at the same time"
msgstr ""
-#: glade.c:1700
+#: glade.c:1841
msgid "ZIP/Postal Code"
msgstr ""
-#: glade.c:1703
+#: glade.c:1844
msgid "Zoom In"
msgstr ""
-#: glade.c:1706
+#: glade.c:1847
msgid "Zoom Out"
msgstr ""
-#: glade.c:1709
+#: glade.c:1850
msgid "_Add Bookmark"
msgstr ""
-#: glade.c:1712
+#: glade.c:1853
msgid "_Bookmarks"
msgstr ""
-#: glade.c:1715
+#: glade.c:1856
msgid "_Default Person"
msgstr ""
-#: glade.c:1718
+#: glade.c:1859
msgid "_Edit"
msgstr ""
-#: glade.c:1721
+#: glade.c:1862
msgid "_Edit Bookmarks"
msgstr ""
-#: glade.c:1724
+#: glade.c:1865
msgid "_Export"
msgstr ""
-#: glade.c:1727
+#: glade.c:1868
msgid "_Family"
msgstr ""
-#: glade.c:1730
+#: glade.c:1871
+msgid "_Find..."
+msgstr ""
+
+#: glade.c:1874
msgid "_Import"
msgstr ""
-#: glade.c:1733
+#: glade.c:1877
msgid "_Media"
msgstr ""
-#: glade.c:1736
+#: glade.c:1880
msgid "_Merge"
msgstr ""
-#: glade.c:1739
+#: glade.c:1883
msgid "_New File"
msgstr ""
-#: glade.c:1742
+#: glade.c:1886
msgid "_People"
msgstr ""
-#: glade.c:1745
+#: glade.c:1889
msgid "_Reports"
msgstr ""
-#: glade.c:1748
+#: glade.c:1892
msgid "_Revert"
msgstr ""
-#: glade.c:1751
+#: glade.c:1895
msgid "_Sources"
msgstr ""
-#: glade.c:1754
+#: glade.c:1898
msgid "_Tools"
msgstr ""
-#: glade.c:1757
+#: glade.c:1901
msgid "_User's Manual"
msgstr ""
-#: glade.c:1760
+#: glade.c:1904
msgid "_Writing Extensions"
msgstr ""
-#: glade.c:1942 glade.c:1956 glade.c:1969
+#: glade.c:2083 glade.c:2091 glade.c:2099
msgid "about"
msgstr ""
-#: glade.c:1941 glade.c:1954 glade.c:1972
+#: glade.c:2083 glade.c:2102
msgid "abt"
msgstr ""
-#: glade.c:1943
+#: glade.c:2084
msgid "abt."
msgstr ""
-#: glade.c:1955
-msgid "abt\\."
+#: glade.c:2090
+msgid "abt\\.?"
msgstr ""
-#: glade.c:1953 glade.c:1963
+#: glade.c:2089
msgid "aft"
msgstr ""
-#: glade.c:1952
+#: glade.c:2088
msgid "aft."
msgstr ""
-#: glade.c:1964
-msgid "aft\\."
+#: glade.c:2097
+msgid "aft\\.?"
msgstr ""
-#: glade.c:1951 glade.c:1962 glade.c:1971 glade.c:1974
+#: glade.c:2088 glade.c:2096 glade.c:2101 glade.c:2104
msgid "after"
msgstr ""
-#: glade.c:1947 glade.c:1960
+#: glade.c:2086 glade.c:2094
msgid "around"
msgstr ""
-#: glade.c:1949 glade.c:1966
+#: glade.c:2087
msgid "bef"
msgstr ""
-#: glade.c:1950
+#: glade.c:2087
msgid "bef."
msgstr ""
-#: glade.c:1965
-msgid "bef\\."
+#: glade.c:2098
+msgid "bef\\.?"
msgstr ""
-#: glade.c:1948 glade.c:1961 glade.c:1970 glade.c:1973
+#: glade.c:2086 glade.c:2095 glade.c:2100 glade.c:2103
msgid "before"
msgstr ""
-#: glade.c:1763
+#: glade.c:1907
msgid "bottom"
msgstr ""
-#: glade.c:2364
+#: glade.c:2518
msgid "bytes"
msgstr ""
-#: glade.c:1766
+#: glade.c:1910
msgid "center"
msgstr ""
-#: glade.c:1946 glade.c:1959
+#: glade.c:2085 glade.c:2093
msgid "circa"
msgstr ""
-#: glade.c:1769
+#: glade.c:1913
msgid "cm"
msgstr ""
-#: glade.c:1774
+#: glade.c:1919
msgid "default"
msgstr ""
-#: glade.c:1777
+#: glade.c:1922
msgid "email"
msgstr ""
-#: glade.c:1944 glade.c:1957
+#: glade.c:2084
msgid "est"
msgstr ""
-#: glade.c:1945
+#: glade.c:2085
msgid "est."
msgstr ""
-#: glade.c:1958
-msgid "est\\."
+#: glade.c:2092
+msgid "est\\.?"
msgstr ""
-#: glade.c:1780 glade.c:1853
+#: glade.c:1925 glade.c:1998
msgid "female"
msgstr ""
-#: glade.c:1927 glade.c:1928
+#: glade.c:2077 glade.c:2081 glade.c:2082
msgid "from"
msgstr ""
-#: glade.c:1783
+#: glade.c:1928
msgid "gramps ID"
msgstr ""
-#: glade.c:1786
+#: glade.c:1931
msgid "justify"
msgstr ""
-#: glade.c:1789
+#: glade.c:1934
msgid "left"
msgstr ""
-#: glade.c:1792 glade.c:1852
+#: glade.c:1937 glade.c:1997
msgid "male"
msgstr ""
-#: glade.c:1795
+#: glade.c:1940
msgid "name"
msgstr ""
-#: glade.c:1798
+#: glade.c:1943
msgid "pt"
msgstr ""
-#: glade.c:1801
+#: glade.c:1946
msgid "right"
msgstr ""
-#: glade.c:1804
+#: glade.c:1949
msgid "roman (Times)"
msgstr ""
-#: glade.c:1807
+#: glade.c:1952
msgid "swiss (Arial, Helvetica)"
msgstr ""
-#: glade.c:1810 glade.c:1927 glade.c:1928
+#: glade.c:1955 glade.c:2077 glade.c:2081 glade.c:2082
msgid "to"
msgstr ""
-#: glade.c:1813
+#: glade.c:1958
msgid "top"
msgstr ""
-#: glade.c:1816 glade.c:1854 glade.c:2301 glade.c:2386
+#: glade.c:1961 glade.c:1999 glade.c:2122 glade.c:2456 glade.c:2541
msgid "unknown"
msgstr ""
diff --git a/gramps/src/sort.py b/gramps/src/sort.py
index 360520a0c..db6af483b 100644
--- a/gramps/src/sort.py
+++ b/gramps/src/sort.py
@@ -17,25 +17,39 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
+"""
+Provides sorting routines for use in GRAMPS. Since these functions are
+intended to provide fast sorting, they tend to bypass access methods,
+and directly use class members. For this reason, care needs to be taken
+to make sure these remain in sync with the rest of the design.
+"""
+#-------------------------------------------------------------------------
+#
+# Imported Modules
+#
+#-------------------------------------------------------------------------
import string
-from Date import compare_dates, UNDEF
+import Date
#-------------------------------------------------------------------------
#
-#
+# Functions
#
#-------------------------------------------------------------------------
+
def build_sort_name(n):
+ """Builds a name from a RelLib.Name instance that is suitable for
+ use as a sort key in a GtkCList. The name is converted to upper case
+ to provide for case-insenstive sorting"""
return "%-25s%-30s%s" % \
(string.upper(n.Surname),string.upper(n.FirstName),string.upper(n.Suffix))
-#-------------------------------------------------------------------------
-#
-#
-#
-#-------------------------------------------------------------------------
-def build_sort_event(n):
+def build_sort_date(n):
+ """Builds a date from a Date.Date instance that is suitable for
+ use as a sort key in a GtkCList. The resultant string is in the format
+ of YYYYMMDD. Unknown values are given as all nines, so that the
+ appear at the end"""
y = n.start.year
if y < 0:
y = 9999
@@ -47,110 +61,32 @@ def build_sort_event(n):
d = 99
return "%04d%02d%02d" % (y,m,d)
-#-------------------------------------------------------------------------
-#
-#
-#
-#-------------------------------------------------------------------------
-def fast_name_sort(list):
- nlist = map(build_sort_name,list)
- nlist.sort()
- return map(lambda(key,x): x, nlist)
+def by_last_name(first, second):
+ """Sort routine for comparing two last names. If last names are equal,
+ uses the given name and suffix"""
+ u = string.upper
+ name1 = first.PrimaryName
+ name2 = second.PrimaryName
-#-------------------------------------------------------------------------
-#
-#
-#
-#-------------------------------------------------------------------------
-def reverse_name_sort(list):
- nlist = map(build_sort_name,list)
- nlist.sort()
- nlist.reverse()
- return map(lambda(key,x): x, nlist)
-
-#-------------------------------------------------------------------------
-#
-#
-#
-#-------------------------------------------------------------------------
-def fast_birth_sort(list):
- nlist = map(build_sort_event,list)
- nlist.sort()
- return map(lambda(key,x): x, nlist)
-
-#-------------------------------------------------------------------------
-#
-#
-#
-#-------------------------------------------------------------------------
-def reverse_birth_sort(list):
- nlist = map(build_sort_event,list)
- nlist.sort()
- nlist.reverse()
- return map(lambda(key,x): x, nlist)
-
-#-------------------------------------------------------------------------
-#
-#
-#
-#-------------------------------------------------------------------------
-def fast_death_sort(list):
- nlist = map(build_sort_event,list)
- nlist.sort()
- return map(lambda(key,x): x, nlist)
-
-#-------------------------------------------------------------------------
-#
-#
-#
-#-------------------------------------------------------------------------
-def reverse_death_sort(list):
- nlist = map(build_sort_event,list)
- nlist.sort()
- nlist.reverse()
- return map(lambda(key,x): x, nlist)
-
-#-------------------------------------------------------------------------
-#
-#
-#
-#-------------------------------------------------------------------------
-def by_last_name(first, second) :
-
- name1 = first.getPrimaryName()
- name2 = second.getPrimaryName()
-
- fsn = string.upper(name1.getSurname())
- ssn = string.upper(name2.getSurname())
+ fsn = u(name1.Surname)
+ ssn = u(name2.Surname)
if fsn == ssn :
- ffn = string.upper(name1.getFirstName())
- sfn = string.upper(name2.getFirstName())
+ ffn = u(name1.FirstName)
+ sfn = u(name2.FirstName)
if ffn == sfn :
- return cmp(string.upper(name1.getSuffix()), string.upper(name2.getSuffix()))
+ return cmp(u(name1.Suffix), u(name2.Suffix))
else :
return cmp(ffn, sfn)
else :
return cmp(fsn, ssn)
-#-------------------------------------------------------------------------
-#
-#
-#
-#-------------------------------------------------------------------------
-def by_last_name_backwards(first, second) :
- return by_last_name(second,first)
-
-#-------------------------------------------------------------------------
-#
-#
-#
-#-------------------------------------------------------------------------
def by_birthdate(first, second) :
-
+ """Sort routine for comparing two people by birth dates. If the birth dates
+ are equal, sorts by name"""
date1 = first.getBirth().getDateObj()
date2 = second.getBirth().getDateObj()
- val = compare_dates(date1,date2)
+ val = Date.compare_dates(date1,date2)
if val == 0:
return by_last_name(first,second)
return val