* src/GrampsParser.py: handle new witness format in XML file
* src/WriteXML.py: handle new witness format in XML file * src/dialog.glade: removed unused callbacks svn: r2251
This commit is contained in:
parent
c2e56b0fb6
commit
b57e63e9b7
@ -61,6 +61,7 @@ class GrampsParser:
|
|||||||
self.in_note = 0
|
self.in_note = 0
|
||||||
self.in_stext = 0
|
self.in_stext = 0
|
||||||
self.in_scomments = 0
|
self.in_scomments = 0
|
||||||
|
self.in_witness = 0
|
||||||
self.db = database
|
self.db = database
|
||||||
self.base = base
|
self.base = base
|
||||||
self.photo = None
|
self.photo = None
|
||||||
@ -100,6 +101,7 @@ class GrampsParser:
|
|||||||
self.func_list = [None]*50
|
self.func_list = [None]*50
|
||||||
self.func_index = 0
|
self.func_index = 0
|
||||||
self.func = None
|
self.func = None
|
||||||
|
self.witness_comment = ""
|
||||||
|
|
||||||
self.func_map = {
|
self.func_map = {
|
||||||
"address" : (self.start_address, self.stop_address),
|
"address" : (self.start_address, self.stop_address),
|
||||||
@ -116,7 +118,9 @@ class GrampsParser:
|
|||||||
"childof" : (self.start_childof,None),
|
"childof" : (self.start_childof,None),
|
||||||
"city" : (None, self.stop_city),
|
"city" : (None, self.stop_city),
|
||||||
"country" : (None, self.stop_country),
|
"country" : (None, self.stop_country),
|
||||||
|
"comment" : (None, self.stop_comment),
|
||||||
"created" : (self.start_created, None),
|
"created" : (self.start_created, None),
|
||||||
|
"ref" : (None, self.stop_ref),
|
||||||
"database" : (None, None),
|
"database" : (None, None),
|
||||||
"date" : (None, self.stop_date),
|
"date" : (None, self.stop_date),
|
||||||
"cause" : (None, self.stop_cause),
|
"cause" : (None, self.stop_cause),
|
||||||
@ -267,9 +271,11 @@ class GrampsParser:
|
|||||||
self.locations = self.locations + 1
|
self.locations = self.locations + 1
|
||||||
|
|
||||||
def start_witness(self,attrs):
|
def start_witness(self,attrs):
|
||||||
|
self.in_witness = 1
|
||||||
if attrs.has_key('ref'):
|
if attrs.has_key('ref'):
|
||||||
self.witness = RelLib.Witness(RelLib.Event.ID,attrs['ref'])
|
self.witness = RelLib.Witness(RelLib.Event.ID,attrs['ref'])
|
||||||
if attrs.has_key('name'):
|
if attrs.has_key('name'):
|
||||||
|
print "name",attrs['name']
|
||||||
self.witness = RelLib.Witness(RelLib.Event.NAME,attrs['name'])
|
self.witness = RelLib.Witness(RelLib.Event.NAME,attrs['name'])
|
||||||
|
|
||||||
def start_coord(self,attrs):
|
def start_coord(self,attrs):
|
||||||
@ -392,6 +398,7 @@ class GrampsParser:
|
|||||||
self.person.FamilyList.append(self.db.findFamilyNoMap(attrs["ref"]))
|
self.person.FamilyList.append(self.db.findFamilyNoMap(attrs["ref"]))
|
||||||
|
|
||||||
def start_name(self,attrs):
|
def start_name(self,attrs):
|
||||||
|
if not self.in_witness:
|
||||||
self.name = RelLib.Name()
|
self.name = RelLib.Name()
|
||||||
if attrs.has_key("type"):
|
if attrs.has_key("type"):
|
||||||
self.name.setType(attrs["type"])
|
self.name.setType(attrs["type"])
|
||||||
@ -581,9 +588,21 @@ class GrampsParser:
|
|||||||
def stop_attribute(self,tag):
|
def stop_attribute(self,tag):
|
||||||
self.attribute = None
|
self.attribute = None
|
||||||
|
|
||||||
|
def stop_comment(self,tag):
|
||||||
|
if tag.strip():
|
||||||
|
self.witness_comment = tag
|
||||||
|
else:
|
||||||
|
self.witness_comment = ""
|
||||||
|
|
||||||
def stop_witness(self,tag):
|
def stop_witness(self,tag):
|
||||||
|
if self.witness_comment:
|
||||||
|
self.witness.set_comment(self.witness_comment)
|
||||||
|
elif tag.strip():
|
||||||
self.witness.set_comment(tag)
|
self.witness.set_comment(tag)
|
||||||
|
else:
|
||||||
|
self.witness.set_comment("")
|
||||||
self.event.add_witness(self.witness)
|
self.event.add_witness(self.witness)
|
||||||
|
self.in_witness = 0
|
||||||
|
|
||||||
def stop_attr_type(self,tag):
|
def stop_attr_type(self,tag):
|
||||||
self.attribute.setType(tag)
|
self.attribute.setType(tag)
|
||||||
@ -622,11 +641,17 @@ class GrampsParser:
|
|||||||
self.event = None
|
self.event = None
|
||||||
|
|
||||||
def stop_name(self,tag):
|
def stop_name(self,tag):
|
||||||
|
if self.in_witness:
|
||||||
|
self.witness = RelLib.Witness(RelLib.Event.NAME,tag)
|
||||||
|
else:
|
||||||
if self.name.getType() == "":
|
if self.name.getType() == "":
|
||||||
self.name.setType("Birth Name")
|
self.name.setType("Birth Name")
|
||||||
self.person.setPrimaryName (self.name)
|
self.person.setPrimaryName (self.name)
|
||||||
self.name = None
|
self.name = None
|
||||||
|
|
||||||
|
def stop_ref(self,tag):
|
||||||
|
self.witness = RelLib.Witness(RelLib.Event.ID,tag)
|
||||||
|
|
||||||
def stop_place(self,tag):
|
def stop_place(self,tag):
|
||||||
if self.placeobj == None:
|
if self.placeobj == None:
|
||||||
if self.place_map.has_key(tag):
|
if self.place_map.has_key(tag):
|
||||||
|
@ -171,9 +171,9 @@ class XmlWriter:
|
|||||||
|
|
||||||
total = person_len + family_len + place_len + source_len
|
total = person_len + family_len + place_len + source_len
|
||||||
|
|
||||||
self.g.write('<?xml version="1.0"?>\n')
|
self.g.write('<?xml version="1.0" encoding="UTF-8"?>\n')
|
||||||
self.g.write('<!DOCTYPE database SYSTEM "gramps.dtd" []>\n')
|
self.g.write('<!DOCTYPE database SYSTEM "gramps.dtd" []>\n')
|
||||||
self.g.write("<database>\n")
|
self.g.write("<database xmlns=\"http://gramps.sourceforge.net/database\">\n")
|
||||||
self.g.write(" <header>\n")
|
self.g.write(" <header>\n")
|
||||||
self.g.write(" <created date=\"%s %s %s\"" % (date[2],string.upper(date[1]),date[4]))
|
self.g.write(" <created date=\"%s %s %s\"" % (date[2],string.upper(date[1]),date[4]))
|
||||||
self.g.write(" version=\"" + const.version + "\"")
|
self.g.write(" version=\"" + const.version + "\"")
|
||||||
@ -360,11 +360,11 @@ class XmlWriter:
|
|||||||
self.g.write("</database>\n")
|
self.g.write("</database>\n")
|
||||||
|
|
||||||
def fix(self,line):
|
def fix(self,line):
|
||||||
l = string.strip(line)
|
l = line.strip()
|
||||||
l = string.replace(l,'&','&')
|
l = l.replace('&','&')
|
||||||
l = string.replace(l,'>','>')
|
l = l.replace('>','>')
|
||||||
l = string.replace(l,'<','<')
|
l = l.replace('<','<')
|
||||||
return string.replace(l,'"','"')
|
return l.replace('"','"')
|
||||||
|
|
||||||
def write_note(self,val,note,indent=0):
|
def write_note(self,val,note,indent=0):
|
||||||
if not note:
|
if not note:
|
||||||
@ -387,9 +387,17 @@ class XmlWriter:
|
|||||||
sp = " "*index
|
sp = " "*index
|
||||||
com = self.fix(w.get_comment())
|
com = self.fix(w.get_comment())
|
||||||
if w.get_type() == RelLib.Event.ID:
|
if w.get_type() == RelLib.Event.ID:
|
||||||
self.g.write('%s<witness ref="%s">%s</witness>\n' % (sp,w.get_value(),com))
|
self.g.write('%s<witness>\n' % sp)
|
||||||
|
self.g.write(' %s<ref>%s</ref>\n' % (sp,w.get_value()))
|
||||||
|
if com:
|
||||||
|
self.g.write(' %s<comment>%s</comment>\n' % (sp,com))
|
||||||
|
self.g.write('%s</witness>\n' % sp)
|
||||||
else:
|
else:
|
||||||
self.g.write('%s<witness name="%s">%s</witness>\n' % (sp,w.get_value(),com))
|
self.g.write('%s<witness>\n' % sp)
|
||||||
|
self.g.write(' %s<name>%s</name>\n' % (sp,w.get_value()))
|
||||||
|
if com:
|
||||||
|
self.g.write(' %s<comment>%s</comment>\n' % (sp,com))
|
||||||
|
self.g.write('%s</witness>\n' % sp)
|
||||||
|
|
||||||
def dump_my_event(self,name,event,index=1):
|
def dump_my_event(self,name,event,index=1):
|
||||||
if not event or event.is_empty():
|
if not event or event.is_empty():
|
||||||
|
@ -3551,7 +3551,6 @@
|
|||||||
<property name="use_stock">True</property>
|
<property name="use_stock">True</property>
|
||||||
<property name="relief">GTK_RELIEF_NORMAL</property>
|
<property name="relief">GTK_RELIEF_NORMAL</property>
|
||||||
<property name="response_id">-6</property>
|
<property name="response_id">-6</property>
|
||||||
<signal name="clicked" handler="cancel_clicked" last_modification_time="Tue, 18 Feb 2003 16:46:57 GMT"/>
|
|
||||||
</widget>
|
</widget>
|
||||||
</child>
|
</child>
|
||||||
|
|
||||||
@ -3564,7 +3563,6 @@
|
|||||||
<property name="use_stock">True</property>
|
<property name="use_stock">True</property>
|
||||||
<property name="relief">GTK_RELIEF_NORMAL</property>
|
<property name="relief">GTK_RELIEF_NORMAL</property>
|
||||||
<property name="response_id">-5</property>
|
<property name="response_id">-5</property>
|
||||||
<signal name="clicked" handler="ok_clicked" last_modification_time="Tue, 18 Feb 2003 16:46:37 GMT"/>
|
|
||||||
</widget>
|
</widget>
|
||||||
</child>
|
</child>
|
||||||
</widget>
|
</widget>
|
||||||
|
Loading…
Reference in New Issue
Block a user