* 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:
Don Allingham
2005-02-16 05:41:33 +00:00
parent ab8cabe655
commit db6a32af63
9 changed files with 2914 additions and 95 deletions

View File

@@ -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):