From: Don A. <don...@co...> - 2005-10-09 20:45:24
|
Bruce, This sounds like a very good idea. If you want to improve this, please feel free to do so. Don On Sat, 2005-10-08 at 18:53 -0500, Bruce DeGrasse wrote: > Gramps, I noticed that the Narrative Web Page generator displayed all the= =20 > image objects for an individual in a single column. After some tinkering= =20 > with "display_additional_images_as_gallery" in NavWebPage.py I was able t= o=20 > display multiple images in a row. This appeared to improve that section = of=20 > the web page considerably. I have included the resulting code below, not= e=20 > that changed lines of code have a #bjd. This code is very rough at this=20 > stage but it does provide a starting point if there is any interest in=20 > developing it further. >=20 > Bruce D >=20 > ******************************** > def display_additional_images_as_gallery( self, of, db, photolist=3DNon= e): >=20 > if not photolist or not self.use_gallery: > return > =20 > of.write('<div id=3D"gallery">\n') > of.write('<h4>%s</h4>\n' % _('Gallery')) > of.write('<table><tr>') #bjd > col_count=3D 0 #bjd > for mediaref in photolist: > of.write('<td>') #bjd > photo_handle =3D mediaref.get_reference_handle() > photo =3D db.get_object_from_handle(photo_handle) >=20 > mime_type =3D photo.get_mime_type() > if mime_type: > try: > (real_path,newpath) =3D self.copy_media(photo) > self.media_link(of,photo_handle,newpath, > photo.get_description(),up=3DTrue) > except (IOError,OSError),msg: > WarningDialog(_("Could not add photo to page"),str(ms= g)) > else: > try: > self.doc_link(of,photo_handle, > photo.get_description(),up=3DTrue) > lnk =3D (self.cur_name,self.page_title,self.gid) > if self.photo_list.has_key(photo_handle): > if lnk not in self.photo_list[photo_handle]: > self.photo_list[photo_handle].append(lnk) > else: > self.photo_list[photo_handle] =3D [lnk] > except (IOError,OSError),msg: > WarningDialog(_("Could not add photo to page"),str(ms= g)) > =20 > of.write('</td>') #bjd > col_count +=3D 1 #bjd > if (col_count % 3) =3D=3D 0: #bjd > of.write('</tr><tr>') #bjd > =20 > of.write('</tr></table>') #bjd > of.write('</div>\n') >=20 --=20 Don Allingham <don...@co...> |