svn: r2681
This commit is contained in:
Don Allingham 2004-01-21 02:56:53 +00:00
parent 4cdab27d00
commit e41ee1c752
3 changed files with 70 additions and 55 deletions

View File

@ -85,7 +85,7 @@ class Rule:
labels = []
def __init__(self,list):
assert type(list) == type([]), "Argument is not a list"
assert type(list) == type([]) or list == None, "Argument is not a list"
self.list = list
def values(self):
@ -113,7 +113,7 @@ class Rule:
v = []
for i in range(0,len(self.list)):
if self.list[i]:
v.append('%s="%s"' % (_(self.labels[i]),self.list[i]))
v.append('%s="%s"' % (_(self.labels[i]),_(self.list[i])))
return join(v,'; ')
#-------------------------------------------------------------------------
@ -917,7 +917,7 @@ class HasEvent(Rule):
def __init__(self,list):
Rule.__init__(self,list)
if self.list[0]:
if self.list and self.list[0]:
self.date = Date.Date()
self.date.set(self.list[0])
else:
@ -964,7 +964,7 @@ class HasFamilyEvent(Rule):
def __init__(self,list):
Rule.__init__(self,list)
if self.list[0]:
if self.list and self.list[0]:
self.date = Date.Date()
self.date.set(self.list[0])
else:
@ -1066,7 +1066,7 @@ class HasBirth(Rule):
def __init__(self,list):
Rule.__init__(self,list)
if self.list[0]:
if self.list and self.list[0]:
self.date = Date.Date()
self.date.set(self.list[0])
else:
@ -1106,7 +1106,7 @@ class HasDeath(Rule):
def __init__(self,list):
Rule.__init__(self,list)
if self.list[0]:
if self.list and self.list[0]:
self.date = Date.Date()
self.date.set(self.list[0])
else:

View File

@ -213,7 +213,7 @@ familyConstantEvents = {
#
#-------------------------------------------------------------------------
_family_events = TransTable( {
family_events = TransTable( {
"Alternate Marriage" : _("Alternate Marriage"),
"Annulment" : _("Annulment"),
"Divorce Filing" : _("Divorce Filing"),
@ -226,10 +226,10 @@ _family_events = TransTable( {
})
def display_fevent(st):
return _family_events.find_value(st)
return family_events.find_value(st)
def save_fevent(st):
return _family_events.find_key(st)
return family_events.find_key(st)
#-------------------------------------------------------------------------
#
@ -280,7 +280,7 @@ personalConstantEvents = {
#
#-------------------------------------------------------------------------
_personal_events = TransTable({
personal_events = TransTable({
"Adopted" : _("Adopted"),
"Alternate Birth" : _("Alternate Birth"),
"Alternate Death" : _("Alternate Death"),
@ -319,10 +319,10 @@ _personal_events = TransTable({
})
def display_pevent(st):
return _personal_events.find_value(st)
return personal_events.find_value(st)
def save_pevent(st):
return _personal_events.find_key(st)
return personal_events.find_key(st)
#-------------------------------------------------------------------------
#
@ -331,17 +331,17 @@ def save_pevent(st):
#
#-------------------------------------------------------------------------
def display_event(st):
if _personal_events.has_key(st):
return _personal_events.find_value(st)
if _family_events.has_key(st):
return _family_events.find_value(st)
if personal_events.has_key(st):
return personal_events.find_value(st)
if family_events.has_key(st):
return family_events.find_value(st)
return _(st)
def save_event(st):
if _personal_events.has_value(st):
return _personal_events.find_key(st)
if _family_events.has_value(st):
return _family_events.find_key(st)
if personal_events.has_value(st):
return personal_events.find_key(st)
if family_events.has_value(st):
return family_events.find_key(st)
return st
#-------------------------------------------------------------------------
@ -363,7 +363,7 @@ personalConstantAttributes = {
#
#-------------------------------------------------------------------------
_personal_attributes = TransTable({
personal_attributes = TransTable({
"Caste" : _("Caste"),
"Description" : _("Description"),
"Identification Number" : _("Identification Number"),
@ -372,10 +372,10 @@ _personal_attributes = TransTable({
})
def display_pattr(st):
return _personal_attributes.find_value(st)
return personal_attributes.find_value(st)
def save_pattr(st):
return _personal_attributes.find_key(st)
return personal_attributes.find_key(st)
#-------------------------------------------------------------------------
#
@ -386,13 +386,13 @@ familyConstantAttributes = {
"Number of Children" : "NCHI",
}
_family_attributes = TransTable({"Number of Children" : _("Number of Children")})
family_attributes = TransTable({"Number of Children" : _("Number of Children")})
def display_fattr(st):
return _family_attributes.find_value(st)
return family_attributes.find_value(st)
def save_fattr(st):
return _family_attributes.find_key(st)
return family_attributes.find_key(st)
#-------------------------------------------------------------------------
#
@ -401,17 +401,17 @@ def save_fattr(st):
#
#-------------------------------------------------------------------------
def display_attr(st):
if _personal_attributes.has_key(st):
return _personal_attributes.find_value(st)
if _family_attributes.has_key(st):
return _family_attributes.find_value(st)
if personal_attributes.has_key(st):
return personal_attributes.find_value(st)
if family_attributes.has_key(st):
return family_attributes.find_value(st)
return _(st)
def save_attr(st):
if _personal_attributes.has_value(st):
return _personal_attributes.find_key(st)
if _family_attributes.has_value(st):
return _family_attributes.find_key(st)
if personal_attributes.has_value(st):
return personal_attributes.find_key(st)
if family_attributes.has_value(st):
return family_attributes.find_key(st)
return _(st)
#-------------------------------------------------------------------------
@ -420,25 +420,38 @@ def save_attr(st):
#
#-------------------------------------------------------------------------
_family_relations = TransTable({
_frel2def = {
_("Married") : _("A legal or common-law relationship between a husband and wife"),
_("Unmarried"): _("No legal or common-law relationship between man and woman"),
_("Partners") : _("An established relationship between members of the same sex"),
_("Unknown") : _("Unknown relationship between a man and woman"),
_("Other") : _("An unspecified relationship between a man and woman")
}
family_relations = TransTable({
"Married" : _("Married"),
"Unmarried" : _("Unmarried"),
"Partners" : _("Partners"),
"Unknown" : _("Unknown"),
"Other" : _("Other"),
})
#-------------------------------------------------------------------------
#
#
#
#-------------------------------------------------------------------------
def relationship_def(txt):
if _family_relations.has_key(txt):
return _family_relations.find_value[txt]
if _frel2def.has_key(txt):
return _frel2def[txt]
else:
return _("No definition available")
def display_frel(st):
return _family_relations.find_value(st)
return family_relations.find_value(st)
def save_frel(st):
return _family_relations.find_key(st)
return family_relations.find_key(st)
#-------------------------------------------------------------------------
#
@ -459,7 +472,7 @@ NameTypesMap = TransTable({
#
#-------------------------------------------------------------------------
def init_personal_event_list():
p = _personal_events.get_values()
p = personal_events.get_values()
p.sort()
return p
@ -469,7 +482,7 @@ def init_personal_event_list():
#
#-------------------------------------------------------------------------
def init_marriage_event_list():
p = _family_events.get_values()
p = family_events.get_values()
p.sort()
return p
@ -479,7 +492,7 @@ def init_marriage_event_list():
#
#-------------------------------------------------------------------------
def init_personal_attribute_list():
p = _personal_attributes.get_values()
p = personal_attributes.get_values()
p.sort()
return p
@ -489,7 +502,7 @@ def init_personal_attribute_list():
#
#-------------------------------------------------------------------------
def init_family_attribute_list():
p = _family_attributes.get_values()
p = family_attributes.get_values()
p.sort()
return p
@ -499,14 +512,14 @@ def init_family_attribute_list():
#
#-------------------------------------------------------------------------
def init_family_relation_list():
p = _family_relations.get_values()
p = family_relations.get_values()
p.sort()
return p
personalEvents = init_personal_event_list()
personalAttributes = init_personal_attribute_list()
marriageEvents = init_marriage_event_list()
defaultMarriageEvent = _family_events.find_value("Marriage")
defaultMarriageEvent = family_events.find_value("Marriage")
familyAttributes = init_family_attribute_list()
familyRelations = init_family_relation_list()
places = []

View File

@ -55,11 +55,11 @@ import SelectPerson
from gettext import gettext as _
_name2list = {
_('Personal event:') : const.personalEvents,
_('Family event:') : const.marriageEvents,
_('Personal attribute:') : const.personalAttributes,
_('Family attribute:') : const.familyAttributes,
_('Relationship type:') : const.familyRelations,
_('Personal event:') : (const.personalEvents,const.personal_events),
_('Family event:') : (const.marriageEvents,const.family_events),
_('Personal attribute:') : (const.personalAttributes,const.personal_attributes),
_('Family attribute:') : (const.familyAttributes,const.family_attributes),
_('Relationship type:') : (const.familyRelations,const.family_relations),
}
@ -196,19 +196,20 @@ class MyID(gtk.HBox):
#-------------------------------------------------------------------------
class MySelect(gtk.Combo):
def __init__(self,list):
def __init__(self,list,transtable):
gtk.Combo.__init__(self)
list.sort()
self.set_popdown_strings(list)
self.set_value_in_list(1,0)
self.entry.set_editable(0)
self.transtable = transtable
self.show()
def get_text(self):
return unicode(self.entry.get_text())
return self.transtable.find_key(unicode(self.entry.get_text()))
def set_text(self,val):
self.entry.set_text(val)
self.entry.set_text(_(val))
#-------------------------------------------------------------------------
#
@ -462,7 +463,8 @@ class FilterEditor:
elif v == _('Filter name:'):
t = MyFilters(self.filterdb.get_filters())
elif _name2list.has_key(v1):
t = MySelect(_name2list[v1])
data =_name2list[v1]
t = MySelect(data[0],data[1])
elif v == _('Inclusive:'):
t = MyBoolean(_('Include original person'))
else:
@ -560,7 +562,7 @@ class FilterEditor:
def rule_ok(self,obj):
name = unicode(self.rule_name.get_text())
class_def = GenericFilter.tasks[name]
obj = class_def([])
obj = class_def(None)
try:
page = self.name2page[name]
(n,c,v,t) = self.page[page]