* src/AddMedia.py: handle "note only" media object
* src/DisplayModels.py: handle media type of None * src/ImageSelect.py: Add "internal note" check box * src/MediaView.py: handle media type of None * src/NoteEdit.py: use glade definition * src/gramps.glade: add note editor * src/plubins/NavWebPage.py: Add default pages svn: r4035
This commit is contained in:
@@ -59,6 +59,7 @@ import BaseDoc
|
||||
from NameDisplay import displayer as _nd
|
||||
from DateHandler import displayer as _dd
|
||||
import ReportUtils
|
||||
import sets
|
||||
|
||||
_NARRATIVE = "narrative.css"
|
||||
|
||||
@@ -134,8 +135,9 @@ class BasePage:
|
||||
ofile.write('<br>\n')
|
||||
ofile.write('<br>\n')
|
||||
ofile.write('<hr>\n')
|
||||
ofile.write('<div class="footer">')
|
||||
ofile.write('Generated by <a href="http://gramps.sourceforge.net">GRAMPS</a> on 13 December 2004.')
|
||||
ofile.write('<div class="footer">Generated by ')
|
||||
ofile.write('<a href="http://gramps.sourceforge.net">GRAMPS</a> ')
|
||||
ofile.write('on 13 December 2004.')
|
||||
ofile.write('</div>\n')
|
||||
ofile.write('</body>\n')
|
||||
ofile.write('</html>\n')
|
||||
@@ -225,7 +227,7 @@ class IndividualListPage(BasePage):
|
||||
#------------------------------------------------------------------------
|
||||
class PlaceListPage(BasePage):
|
||||
|
||||
def __init__(self, db, title, handle_list, html_dir):
|
||||
def __init__(self, db, title, place_handles, html_dir, src_list):
|
||||
BasePage.__init__(self,title)
|
||||
page_name = os.path.join(html_dir,"places.html")
|
||||
ofile = open(page_name, "w")
|
||||
@@ -246,6 +248,7 @@ class PlaceListPage(BasePage):
|
||||
ofile.write('</tr>\n')
|
||||
|
||||
self.sort = Sort.Sort(db)
|
||||
handle_list = list(place_handles)
|
||||
handle_list.sort(self.sort.by_place_title)
|
||||
last_name = ""
|
||||
last_letter = ''
|
||||
@@ -388,7 +391,7 @@ class HomePage(BasePage):
|
||||
#------------------------------------------------------------------------
|
||||
class SourcesPage(BasePage):
|
||||
|
||||
def __init__(self, db, title, handle_list, html_dir):
|
||||
def __init__(self, db, title, handle_set, html_dir):
|
||||
BasePage.__init__(self,title)
|
||||
page_name = os.path.join(html_dir,"sources.html")
|
||||
|
||||
@@ -396,7 +399,19 @@ class SourcesPage(BasePage):
|
||||
self.display_header(ofile,_('Sources'),
|
||||
db.get_researcher().get_name())
|
||||
|
||||
ofile.write('<h3>%s</h3>\n' % _('Sources'))
|
||||
handle_list = list(handle_set)
|
||||
|
||||
ofile.write('<h3>%s</h3>\n<p>' % _('Sources'))
|
||||
ofile.write(_('All sources cited in the project.'))
|
||||
ofile.write('</p>\n<blockquote>\n<table class="infolist">\n')
|
||||
|
||||
index = 1
|
||||
for handle in handle_list:
|
||||
ofile.write('<tr><td class="category">%d.</td>\n' % index)
|
||||
ofile.write('<td class="data">')
|
||||
ofile.write('</td></tr>\n')
|
||||
|
||||
ofile.write('</table>\n<blockquote>\n')
|
||||
|
||||
self.display_footer(ofile)
|
||||
ofile.close()
|
||||
@@ -454,19 +469,20 @@ class IndividualPage(BasePage):
|
||||
RelLib.Person.UNKNOWN : const.unknown,
|
||||
}
|
||||
|
||||
def __init__(self, db, person, title, dirpath, ind_list):
|
||||
def __init__(self, db, person, title, dirpath, ind_list,
|
||||
place_list, src_list):
|
||||
BasePage.__init__(self,title)
|
||||
self.person = person
|
||||
self.db = db
|
||||
self.ind_list = ind_list
|
||||
self.dirpath = dirpath
|
||||
|
||||
gramps_id = self.person.get_gramps_id()
|
||||
self.src_list = src_list
|
||||
self.place_list = place_list
|
||||
self.sort_name = _nd.sorted(self.person)
|
||||
self.name = _nd.sorted(self.person)
|
||||
|
||||
ofile = open(os.path.join(dirpath,"%s.html" % gramps_id), "w")
|
||||
self.display_header(ofile, 'My Family Tree',
|
||||
ofile = open(os.path.join(dirpath,"%s.html" % person.gramps_id), "w")
|
||||
self.display_header(ofile, title,
|
||||
self.db.get_researcher().get_name())
|
||||
self.display_ind_general(ofile)
|
||||
self.display_ind_events(ofile)
|
||||
@@ -488,6 +504,8 @@ class IndividualPage(BasePage):
|
||||
|
||||
index = 1
|
||||
for sref in sreflist:
|
||||
self.src_list.add(sref.get_base_handle())
|
||||
|
||||
source = self.db.get_source_from_handle(sref.get_base_handle())
|
||||
author = source.get_author()
|
||||
title = source.get_title()
|
||||
@@ -761,9 +779,12 @@ class IndividualPage(BasePage):
|
||||
|
||||
def format_event(self,event):
|
||||
descr = event.get_description()
|
||||
place = ReportUtils.place_name(self.db,event.get_place_handle())
|
||||
date = _dd.display(event.get_date_object())
|
||||
place_handle = event.get_place_handle()
|
||||
if place_handle:
|
||||
self.place_list.add(place_handle)
|
||||
place = ReportUtils.place_name(self.db,place_handle)
|
||||
|
||||
date = _dd.display(event.get_date_object())
|
||||
tmap = {'description' : descr, 'date' : date, 'place' : place}
|
||||
|
||||
if descr and date and place:
|
||||
@@ -903,9 +924,13 @@ class WebReport(Report.Report):
|
||||
DownloadPage(self.database,self.title,dir_name)
|
||||
IntroductionPage(self.database,self.title,dir_name)
|
||||
|
||||
place_list = sets.Set()
|
||||
source_list = sets.Set()
|
||||
|
||||
for person_handle in ind_list:
|
||||
person = self.database.get_person_from_handle(person_handle)
|
||||
idoc = IndividualPage(self.database,person,self.title,dir_name, ind_list)
|
||||
idoc = IndividualPage(self.database, person, self.title,
|
||||
dir_name, ind_list, place_list, source_list)
|
||||
self.progress_bar_step()
|
||||
while gtk.events_pending():
|
||||
gtk.main_iteration()
|
||||
@@ -917,10 +942,9 @@ class WebReport(Report.Report):
|
||||
while gtk.events_pending():
|
||||
gtk.main_iteration()
|
||||
|
||||
SourcesPage(self.database,self.title,
|
||||
self.database.get_source_handles(),dir_name)
|
||||
PlaceListPage(self.database,self.title,
|
||||
self.database.get_place_handles(),dir_name)
|
||||
PlaceListPage(self.database, self.title, place_list,
|
||||
dir_name, source_list)
|
||||
SourcesPage(self.database,self.title, source_list, dir_name)
|
||||
self.progress_bar_done()
|
||||
|
||||
def write_css(self,dir_name):
|
||||
|
||||
Reference in New Issue
Block a user