* src/plugins/NavWebPage.py: first pass at ancestor map
* src/data/main*.css: ancestor css styles svn: r5304
This commit is contained in:
parent
ffed1c6ff2
commit
8c2e2f357e
@ -1,4 +1,6 @@
|
||||
2005-10-11 Don Allingham <don@gramps-project.org>
|
||||
* src/plugins/NavWebPage.py: first pass at ancestor map
|
||||
* src/data/main*.css: ancestor css styles
|
||||
* src/EditPerson.py: handle adding death/birth record correctly
|
||||
|
||||
2005-10-11 Alex Roitman <shura@gramps-project.org>
|
||||
|
@ -232,6 +232,15 @@ TD.field {
|
||||
#sourcerefs { }
|
||||
#weblinks { }
|
||||
|
||||
.box { font-size: 10pt; height: 55px; padding: 5px; }
|
||||
.bvline { position: absolute; background-color: #000000; font-size: 0pt; z-index: 3; height: 1px;}
|
||||
.bhline { position: absolute; background-color: #000000; font-size: 0pt; z-index: 3; width: 1px;}
|
||||
.border { position: absolute; background-color: #000000; font-size: 0pt; z-index: 4; width: 153px; height: 57px; }
|
||||
.boxbg { position: absolute; background-color: #cccccc; z-index: 5; width: 151px; height: 55px;}
|
||||
.shadow { position: absolute; background-color: #999999; z-index: 1; width: 153px; height: 57px; }
|
||||
.ghline { position: absolute; background-color: #999999; font-size: 0pt; z-index: 1; width: 1px;}
|
||||
.gvline { position: absolute; background-color: #999999; font-size: 0pt; z-index: 1; height: 1px;}
|
||||
|
||||
/* 1}}}
|
||||
vim:foldmethod=marker
|
||||
*/
|
||||
|
@ -234,6 +234,16 @@ TD.field {
|
||||
#sourcerefs { }
|
||||
#weblinks { }
|
||||
|
||||
.box { font-size: 10pt; height: 55px; padding: 5px; }
|
||||
.bvline { position: absolute; background-color: #000000; font-size: 0pt; z-index: 3; height: 1px;}
|
||||
.bhline { position: absolute; background-color: #000000; font-size: 0pt; z-index: 3; width: 1px;}
|
||||
.border { position: absolute; background-color: #000000; font-size: 0pt; z-index: 4; width: 153px; height: 57px; }
|
||||
.boxbg { position: absolute; background-color: #cccccc; z-index: 5; width: 151px; height: 55px;}
|
||||
.shadow { position: absolute; background-color: #999999; z-index: 1; width: 153px; height: 57px; }
|
||||
.ghline { position: absolute; background-color: #999999; font-size: 0pt; z-index: 1; width: 1px;}
|
||||
.gvline { position: absolute; background-color: #999999; font-size: 0pt; z-index: 1; height: 1px;}
|
||||
|
||||
|
||||
/* 1}}}
|
||||
vim:foldmethod=marker
|
||||
*/
|
||||
|
@ -250,6 +250,15 @@ TD.field {
|
||||
#sourcerefs { }
|
||||
#weblinks { }
|
||||
|
||||
.box { font-size: 10pt; height: 55px; padding: 5px; }
|
||||
.bvline { position: absolute; background-color: #000000; font-size: 0pt; z-index: 3; height: 1px;}
|
||||
.bhline { position: absolute; background-color: #000000; font-size: 0pt; z-index: 3; width: 1px;}
|
||||
.border { position: absolute; background-color: #000000; font-size: 0pt; z-index: 4; width: 153px; height: 57px; }
|
||||
.boxbg { position: absolute; background-color: #cccccc; z-index: 5; width: 151px; height: 55px;}
|
||||
.shadow { position: absolute; background-color: #999999; z-index: 1; width: 153px; height: 57px; }
|
||||
.ghline { position: absolute; background-color: #999999; font-size: 0pt; z-index: 1; width: 1px;}
|
||||
.gvline { position: absolute; background-color: #999999; font-size: 0pt; z-index: 1; height: 1px;}
|
||||
|
||||
/* 1}}}
|
||||
vim:foldmethod=marker
|
||||
*/
|
||||
|
@ -262,6 +262,15 @@ TD.field {
|
||||
#sourcerefs { }
|
||||
#weblinks { }
|
||||
|
||||
.box { font-size: 10pt; height: 55px; padding: 5px; }
|
||||
.bvline { position: absolute; background-color: #000000; font-size: 0pt; z-index: 3; height: 1px;}
|
||||
.bhline { position: absolute; background-color: #000000; font-size: 0pt; z-index: 3; width: 1px;}
|
||||
.border { position: absolute; background-color: #000000; font-size: 0pt; z-index: 4; width: 153px; height: 57px; }
|
||||
.boxbg { position: absolute; background-color: #cccccc; z-index: 5; width: 151px; height: 55px;}
|
||||
.shadow { position: absolute; background-color: #999999; z-index: 1; width: 153px; height: 57px; }
|
||||
.ghline { position: absolute; background-color: #999999; font-size: 0pt; z-index: 1; width: 1px;}
|
||||
.gvline { position: absolute; background-color: #999999; font-size: 0pt; z-index: 1; height: 1px;}
|
||||
|
||||
/* 1}}}
|
||||
vim:foldmethod=marker
|
||||
*/
|
||||
|
@ -268,6 +268,15 @@ TD.data {
|
||||
#sourcerefs { }
|
||||
#weblinks { }
|
||||
|
||||
.box { font-size: 10pt; height: 55px; padding: 5px; }
|
||||
.bvline { position: absolute; background-color: #000000; font-size: 0pt; z-index: 3; height: 1px;}
|
||||
.bhline { position: absolute; background-color: #000000; font-size: 0pt; z-index: 3; width: 1px;}
|
||||
.border { position: absolute; background-color: #000000; font-size: 0pt; z-index: 4; width: 153px; height: 57px; }
|
||||
.boxbg { position: absolute; background-color: #cccccc; z-index: 5; width: 151px; height: 55px;}
|
||||
.shadow { position: absolute; background-color: #999999; z-index: 1; width: 153px; height: 57px; }
|
||||
.ghline { position: absolute; background-color: #999999; font-size: 0pt; z-index: 1; width: 1px;}
|
||||
.gvline { position: absolute; background-color: #999999; font-size: 0pt; z-index: 1; height: 1px;}
|
||||
|
||||
/* 1}}}
|
||||
vim:foldmethod=marker
|
||||
*/
|
||||
|
@ -255,6 +255,16 @@ SPAN.grampsid {
|
||||
margin: 5px 50% 5px 5px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.box { font-size: 10pt; height: 55px; padding: 5px; }
|
||||
.bvline { position: absolute; background-color: #000000; font-size: 0pt; z-index: 3; height: 1px;}
|
||||
.bhline { position: absolute; background-color: #000000; font-size: 0pt; z-index: 3; width: 1px;}
|
||||
.border { position: absolute; background-color: #000000; font-size: 0pt; z-index: 4; width: 153px; height: 57px; }
|
||||
.boxbg { position: absolute; background-color: #cccccc; z-index: 5; width: 151px; height: 55px;}
|
||||
.shadow { position: absolute; background-color: #999999; z-index: 1; width: 153px; height: 57px; }
|
||||
.ghline { position: absolute; background-color: #999999; font-size: 0pt; z-index: 1; width: 1px;}
|
||||
.gvline { position: absolute; background-color: #999999; font-size: 0pt; z-index: 1; height: 1px;}
|
||||
|
||||
/* 1}}}
|
||||
vim:foldmethod=marker
|
||||
*/
|
||||
|
@ -1344,9 +1344,130 @@ class IndividualPage(BasePage):
|
||||
self.display_url_list(of, self.person.get_url_list())
|
||||
self.display_ind_sources(of)
|
||||
self.display_ind_pedigree(of)
|
||||
self.display_tree(of)
|
||||
self.display_footer(of,db)
|
||||
self.close_file(of)
|
||||
|
||||
def display_tree(self,of):
|
||||
family_handle = self.person.get_main_parents_family_handle()
|
||||
if not family_handle:
|
||||
return
|
||||
family = self.db.get_family_from_handle(family_handle)
|
||||
|
||||
of.write('<div id="tree">\n')
|
||||
of.write('<h4>%s</h4>\n' % _('Ancestors'))
|
||||
of.write('<div style="position: relative;" align="left">\n')
|
||||
|
||||
# self
|
||||
|
||||
of.write('<div class="boxbg" style="top: 107px; left: 2px;">\n')
|
||||
of.write('<table><tr><td class="box">%s</td></tr></table>\n' % _nd.display(self.person))
|
||||
of.write('</div>\n')
|
||||
of.write('<div class="shadow" style="top: 110px; left: 5px;"></div>\n')
|
||||
of.write('<div class="border" style="top: 106px; left: 1px;"></div>\n')
|
||||
|
||||
father_handle = family.get_father_handle()
|
||||
if father_handle:
|
||||
father = self.db.get_person_from_handle(father_handle)
|
||||
of.write('<div class="boxbg" style="top: 36px; left: 184px;">\n')
|
||||
of.write('<table><tr><td class="box">%s</td></tr></table>\n' % _nd.display(father))
|
||||
of.write('</div>\n')
|
||||
of.write('<div class="shadow" style="top: 39px; left: 187px;"></div>\n')
|
||||
of.write('<div class="border" style="top: 35px; left: 183px;"></div>\n')
|
||||
of.write('<div class="bvline" style="top: 64px; left: 169px; width: 17px;"></div>\n')
|
||||
of.write('<div class="gvline" style="top: 69px; left: 174px; width: 17px;"></div>\n')
|
||||
of.write('<div class="bhline" style="top: 64px; left: 169px; height: 73px;"></div>\n')
|
||||
of.write('<div class="ghline" style="top: 69px; left: 174px; height: 73px;"></div>\n')
|
||||
|
||||
f_family_handle = father.get_main_parents_family_handle()
|
||||
if f_family_handle:
|
||||
of.write('<div class="bvline" style="top: 64px; left: 335px; width: 16px;"></div>\n')
|
||||
of.write('<div class="gvline" style="top: 69px; left: 340px; width: 16px;"></div>\n')
|
||||
|
||||
f_family = self.db.get_family_from_handle(f_family_handle)
|
||||
f_father_handle = f_family.get_father_handle()
|
||||
|
||||
if f_father_handle:
|
||||
f_father = self.db.get_person_from_handle(f_father_handle)
|
||||
of.write('<div class="boxbg" style="top: 1px; left: 366px;">\n')
|
||||
of.write('<table><tr><td class="box"">%s</td></tr></table>\n' % _nd.display(f_father))
|
||||
of.write('</div>\n')
|
||||
of.write('<div class="shadow" style="top: 4px; left: 369px;"></div>\n')
|
||||
of.write('<div class="border" style="top: 0px; left: 365px;"></div>\n')
|
||||
of.write('<div class="bvline" style="top: 28px; left: 351px; width: 17px;"></div>\n')
|
||||
of.write('<div class="gvline" style="top: 33px; left: 356px; width: 17px;"></div>\n')
|
||||
of.write('<div class="bhline" style="top: 28px; left: 351px; height: 37px;"></div>\n')
|
||||
of.write('<div class="ghline" style="top: 33px; left: 356px; height: 37px;"></div>\n')
|
||||
|
||||
f_mother_handle = f_family.get_mother_handle()
|
||||
|
||||
if f_mother_handle:
|
||||
f_mother = self.db.get_person_from_handle(f_mother_handle)
|
||||
|
||||
of.write('<div class="boxbg" style="top: 73px; left: 366px;">\n')
|
||||
of.write('<table><tr><td class="box">%s</td></tr></table>\n' % _nd.display(f_mother))
|
||||
of.write('</div>\n')
|
||||
of.write('<div class="shadow" style="top: 76px; left: 369px;"></div>\n')
|
||||
of.write('<div class="border" style="top: 72px; left: 365px;"></div>\n')
|
||||
of.write('<div class="bvline" style="top: 100px; left: 351px; width: 17px;"></div>\n')
|
||||
of.write('<div class="gvline" style="top: 105px; left: 356px; width: 17px;"></div>\n')
|
||||
of.write('<div class="bhline" style="top: 65px; left: 351px; height: 36px;"></div>\n')
|
||||
of.write('<div class="ghline" style="top: 70px; left: 356px; height: 36px;"></div>\n')
|
||||
|
||||
mother_handle = family.get_mother_handle()
|
||||
if mother_handle:
|
||||
mother = self.db.get_person_from_handle(mother_handle)
|
||||
|
||||
of.write('<div class="boxbg" style="top: 180px; left: 184px;">\n')
|
||||
of.write('<table><tr><td class="box">%s</td></tr></table>\n' % _nd.display(mother))
|
||||
of.write('</div>\n')
|
||||
of.write('<div class="shadow" style="top: 183px; left: 187px;"></div>\n')
|
||||
of.write('<div class="border" style="top: 179px; left: 183px;"></div>\n')
|
||||
of.write('<div class="bvline" style="top: 208px; left: 169px; width: 17px;"></div>\n')
|
||||
of.write('<div class="gvline" style="top: 213px; left: 174px; width: 17px;"></div>\n')
|
||||
of.write('<div class="bvline" style="top: 208px; left: 335px; width: 16px;"></div>\n')
|
||||
of.write('<div class="gvline" style="top: 213px; left: 340px; width: 16px;"></div>\n')
|
||||
of.write('<div class="bhline" style="top: 137px; left: 169px; height: 72px;"></div>\n')
|
||||
of.write('<div class="ghline" style="top: 142px; left: 174px; height: 72px;"></div>\n')
|
||||
|
||||
m_family_handle = mother.get_main_parents_family_handle()
|
||||
if m_family_handle:
|
||||
of.write('<div class="bvline" style="top: 136px; left: 153px; width: 16px;"></div>\n')
|
||||
of.write('<div class="gvline" style="top: 141px; left: 158px; width: 16px;"></div>\n')
|
||||
|
||||
m_family = self.db.get_family_from_handle(m_family_handle)
|
||||
m_father_handle = m_family.get_father_handle()
|
||||
|
||||
if m_father_handle:
|
||||
m_father = self.db.get_person_from_handle(m_father_handle)
|
||||
|
||||
of.write('<div class="boxbg" style="top: 145px; left: 366px;">\n')
|
||||
of.write('<table><tr><td class="box">%s</td></tr></table>\n' % _nd.display(m_father))
|
||||
of.write('</div>\n')
|
||||
of.write('<div class="border" style="top: 144px; left: 365px;"></div>\n')
|
||||
of.write('<div class="shadow" style="top: 148px; left: 369px;"></div>\n')
|
||||
of.write('<div class="bvline" style="top: 172px; left: 351px; width: 17px;"></div>\n')
|
||||
of.write('<div class="gvline" style="top: 177px; left: 356px; width: 17px;"></div>\n')
|
||||
of.write('<div class="bhline" style="top: 172px; left: 351px; height: 37px;"></div>\n')
|
||||
of.write('<div class="ghline" style="top: 177px; left: 356px; height: 37px;"></div>\n')
|
||||
|
||||
m_mother_handle = m_family.get_mother_handle()
|
||||
|
||||
if m_mother_handle:
|
||||
m_mother = self.db.get_person_from_handle(m_mother_handle)
|
||||
of.write('<div class="boxbg" style="top: 217px; left: 366px;">\n')
|
||||
of.write('<table><tr><td class="box">%s</td></tr></table>\n' % _nd.display(m_mother))
|
||||
of.write('</div>\n')
|
||||
of.write('<div class="border" style="top: 216px; left: 365px;"></div>\n')
|
||||
of.write('<div class="shadow" style="top: 220px; left: 369px;"></div>\n')
|
||||
of.write('<div class="bvline" style="top: 244px; left: 351px; width: 17px;"></div>\n')
|
||||
of.write('<div class="gvline" style="top: 249px; left: 356px; width: 17px;"></div>\n')
|
||||
of.write('<div class="bhline" style="top: 209px; left: 351px; height: 36px;"></div>\n')
|
||||
of.write('<div class="ghline" style="top: 214px; left: 356px; height: 36px;"></div>\n')
|
||||
|
||||
of.write('</div>\n')
|
||||
of.write('<table style="height: 400px; width: 500px;"><tr><td></td></tr></table>\n')
|
||||
|
||||
def display_ind_sources(self,of):
|
||||
sreflist = self.src_refs + self.person.get_source_references()
|
||||
if not sreflist or self.restrict:
|
||||
|
Loading…
x
Reference in New Issue
Block a user