Update of /cvsroot/freevo/freevo/src/plugins
In directory sc8-pr-cvs1:/tmp/cvs-serv15613

Modified Files:
        lcd.py 
Log Message:
Applied patch from: Immo Goltz <immo [At] nothrix.org>
It fixes screens for 2-line LCD and now it uses "marquee" scrolling instead
of the previous "ping-pong" one. Much better!


Index: lcd.py
===================================================================
RCS file: /cvsroot/freevo/freevo/src/plugins/lcd.py,v
retrieving revision 1.12
retrieving revision 1.13
diff -C2 -d -r1.12 -r1.13
*** lcd.py      22 Sep 2003 21:21:54 -0000      1.12
--- lcd.py      7 Oct 2003 04:35:27 -0000       1.13
***************
*** 14,17 ****
--- 14,22 ----
  # -----------------------------------------------------------------------
  # $Log$
+ # Revision 1.13  2003/10/07 04:35:27  gsbarbieri
+ # Applied patch from: Immo Goltz <immo [At] nothrix.org>
+ # It fixes screens for 2-line LCD and now it uses "marquee" scrolling instead
+ # of the previous "ping-pong" one. Much better!
+ #
  # Revision 1.12  2003/09/22 21:21:54  gsbarbieri
  # Better doc and handling for lack of pylcd module.
***************
*** 92,95 ****
--- 97,101 ----
  # Configuration: (Should move to freevo_conf.py?)
  sep_str = " | " # use as separator between two strings. Like: "Length: 
123<sep_str>Plot: ..."
+ sep_str_mscroll = "   " # if string > width of lcd add this 
  
  # Animaton-Sequence used in audio playback
***************
*** 180,185 ****
                                   None ),
                    "calendar" : ( "scroller",
!                                  "1 2 %d 2 h 2 \"Today is %s.\"",
!                                  "( self.width, time.strftime('%A, %d-%B') )" ),
                    "clock"    : ( "string",
                                   "%d 3 \"%s\"",
--- 186,191 ----
                                   None ),
                    "calendar" : ( "scroller",
!                                  "1 2 %d 2 m 3 \"Today is %s.%s\"",
!                                  "( self.width, time.strftime('%A, %d-%B'), 
self.get_sepstrmscroll(time.strftime('%A, %d-%B')) )" ),
                    "clock"    : ( "string",
                                   "%d 3 \"%s\"",
***************
*** 202,216 ****
                                   None ),                
                    "title_v"  : ( "scroller",
!                                  "7 1 %d 1 h 2 \"%s\"",
!                                  "( self.width, menu.heading )" ),
                    "item_v"   : ( "scroller",
!                                  "7 2 %d 2 h 2 \"%s\"",
!                                  "( self.width, title )" ),
                    "type_v"   : ( "scroller",
!                                  "7 3 %d 3 h 2 \"%s\"",
!                                  "( self.width, typeinfo )" ),
                    "info_v"   : ( "scroller",
!                                  "7 4 %d 1 h 2 \"%s\"",
!                                  "( self.width, info )" )
                    },
                  
--- 208,222 ----
                                   None ),                
                    "title_v"  : ( "scroller",
!                                  "7 1 %d 1 m 3 \"%s%s\"",
!                                  "( self.width, menu.heading, 
self.get_sepstrmscroll(menu.heading) )" ),
                    "item_v"   : ( "scroller",
!                                  "7 2 %d 2 m 3 \"%s%s\"",
!                                  "( self.width, title, self.get_sepstrmscroll(title) 
)" ),
                    "type_v"   : ( "scroller",
!                                  "7 3 %d 3 m 3 \"%s%s\"",
!                                  "( self.width, typeinfo, 
self.get_sepstrmscroll(typeinfo) )" ),
                    "info_v"   : ( "scroller",
!                                  "7 4 %d 1 m 3 \"%s%s\"",
!                                  "( self.width, info, self.get_sepstrmscroll(info) 
)" )
                    },
                  
***************
*** 226,237 ****
                                    None ),
                    "music_v"   : ( "scroller",
!                                   "9 1 %d 1 h 2 \"%s\"",
!                                 "( self.width, title )" ),
                    "album_v"   : ( "scroller",
!                                   "9 2 %d 2 h 2 \"%s\"",
!                                   "( self.width, player.getattr('album') )" ),
                    "artist_v"  : ( "scroller",
!                                   "9 3 %d 3 h 2 \"%s\"",
!                                   "( self.width, player.getattr('artist') )" ),
                    "time_v1"   : ( "string",
                                    "2 4 '% 2d:%02d/'",
--- 232,243 ----
                                    None ),
                    "music_v"   : ( "scroller",
!                                   "9 1 %d 1 m 3 \"%s%s\"",
!                                 "( self.width, title, self.get_sepstrmscroll(title) 
)" ),
                    "album_v"   : ( "scroller",
!                                   "9 2 %d 2 m 3 \"%s%s\"",
!                                   "( self.width, player.getattr('album'), 
self.get_sepstrmscroll(player.getattr('album')) )" ),
                    "artist_v"  : ( "scroller",
!                                   "9 3 %d 3 m 3 \"%s%s\"",
!                                   "( self.width, player.getattr('artist'), 
self.get_sepstrmscroll(player.getattr('artist')) )" ),
                    "time_v1"   : ( "string",
                                    "2 4 '% 2d:%02d/'",
***************
*** 264,275 ****
                                    None ),
                    "video_v"   : ( "scroller",
!                                   "9 1 %d 1 h 2 \"%s\"",
!                                 "( self.width, title )" ),
                    "tag_v"     : ( "scroller",
!                                   "9 2 %d 2 h 2 \"%s\"",
!                                   "( self.width, player.getattr('tagline') )" ),
                    "genre_v"   : ( "scroller",
!                                   "9 3 %d 3 h 2 \"%s\"",
!                                   "( self.width, player.getattr('genre') )" ),
                    "time_v1"   : ( "string",
                                    "2 4 '%s/'",
--- 270,281 ----
                                    None ),
                    "video_v"   : ( "scroller",
!                                   "9 1 %d 1 m 3 \"%s%s\"",
!                                 "( self.width, title, self.get_sepstrmscroll(title) 
)" ),
                    "tag_v"     : ( "scroller",
!                                   "9 2 %d 2 m 3 \"%s%s\"",
!                                   "( self.width, player.getattr('tagline'), 
self.get_sepstrmscroll(player.getattr('tagline')) )" ),
                    "genre_v"   : ( "scroller",
!                                   "9 3 %d 3 m 3 \"%s%s\"",
!                                   "( self.width, player.getattr('genre'), 
self.get_sepstrmscroll(player.getattr('genre')) )" ),
                    "time_v1"   : ( "string",
                                    "2 4 '%s/'",
***************
*** 306,320 ****
                                  None ),                
                    "chan_v"   : ( "scroller",
!                                  "7 1 %d 1 h 2 \"%s\"",
!                                  "( self.width, tv.channel_id )" ),
                    "prog_v"   : ( "scroller",
!                                  "7 2 %d 2 h 2 \"%s\"",
!                                  "( self.width, tv.title )" ),
                    "time_v"   : ( "scroller",
!                                  "7 3 %d 3 h 2 \"%s-%s\"",
!                                  "( self.width, tv.start, tv.stop )" ),
                    "desc_v"   : ( "scroller",
!                                  "7 4 %d 4 h 2 \"%s\"",
!                                  "( self.width, tv.desc )" )
                    }
                  },              
--- 312,326 ----
                                  None ),                
                    "chan_v"   : ( "scroller",
!                                  "7 1 %d 1 m 3 \"%s%s\"",
!                                  "( self.width, tv.channel_id, 
self.get_sepstrmscroll(tv.channel_id) )" ),
                    "prog_v"   : ( "scroller",
!                                  "7 2 %d 2 m 3 \"%s%s\"",
!                                  "( self.width, tv.title, 
self.get_sepstrmscroll(tv.title) )" ),
                    "time_v"   : ( "scroller",
!                                  "7 3 %d 3 m 3 \"%s-%s%s\"",
!                                  "( self.width, tv.start, tv.stop, 
self.get_sepstrmscroll(tv.start+'-'+tv.stop) )" ),
                    "desc_v"   : ( "scroller",
!                                  "7 4 %d 4 m 3 \"%s%s\"",
!                                  "( self.width, tv.desc, 
self.get_sepstrmscroll(tv.desc) )" )
                    }
                  },              
***************
*** 328,333 ****
                                   None ),
                    "calendar" : ( "scroller",
!                                  "1 2 %d 2 h 2 \"Today is %s.\"",
!                                  "( self.width, time.strftime('%A, %d-%B') )" ),
                    "clock"    : ( "string",
                                   "%d 3 \"%s\"",
--- 334,339 ----
                                   None ),
                    "calendar" : ( "scroller",
!                                  "1 2 %d 2 m 3 \"Today is %s.%s\"",
!                                  "( self.width, time.strftime('%A, %d-%B'), 
self.get_sepstrmscroll(time.strftime('%A, %d-%B')) )" ),
                    "clock"    : ( "string",
                                   "%d 3 \"%s\"",
***************
*** 338,364 ****
                  "menu"    :
                  { "title_v"  : ( "scroller",
!                                  "1 1 %d 1 h 2 \"%s\"",
!                                  "( self.width, menu.heading )" ),
                    "item_v"   : ( "scroller",
!                                  "1 2 %d 2 h 2 \"%s\"",
!                                  "( self.width, title )" ),
                    "type_v"   : ( "scroller",
!                                  "1 3 %d 3 h 2 \"%s\"",
!                                  "( self.width, typeinfo )" ),
                    "info_v"   : ( "scroller",
!                                  "1 4 %d 1 h 2 \"%s\"",
!                                  "( self.width, info )" )
                    },
                  
                  "audio_player"  :
                  { "music_v"   : ( "scroller",
!                                   "1 1 %d 1 h 2 \"%s\"",
!                                   "( self.width, title )" ),
                    "album_v"   : ( "scroller",
!                                   "1 2 %d 2 h 2 \"%s\"",
!                                   "( self.width, player.getattr('album') )" ),
                    "artist_v"  : ( "scroller",
!                                   "1 3 %d 3 h 2 \"%s\"",
!                                   "( self.width, player.getattr('artist') )" ),
                    "time_v1"   : ( "string",
                                    "2 4 '% 2d:%02d/'",
--- 344,370 ----
                  "menu"    :
                  { "title_v"  : ( "scroller",
!                                  "1 1 %d 1 m 3 \"%s%s\"",
!                                  "( self.width, menu.heading, 
self.get_sepstrmscroll(menu.heading) )" ),
                    "item_v"   : ( "scroller",
!                                  "1 2 %d 2 m 3 \"%s%s\"",
!                                  "( self.width, title, self.get_sepstrmscroll(title) 
)" ),
                    "type_v"   : ( "scroller",
!                                  "1 3 %d 3 m 3 \"%s%s\"",
!                                  "( self.width, typeinfo, 
self.get_sepstrmscroll(typeinfo) )" ),
                    "info_v"   : ( "scroller",
!                                  "1 4 %d 1 m 3 \"%s%s\"",
!                                  "( self.width, info, self.get_sepstrmscroll(info) 
)" )
                    },
                  
                  "audio_player"  :
                  { "music_v"   : ( "scroller",
!                                   "1 1 %d 1 m 3 \"%s%s\"",
!                                   "( self.width, title, 
self.get_sepstrmscroll(title) )" ),
                    "album_v"   : ( "scroller",
!                                   "1 2 %d 2 m 3 \"%s%s\"",
!                                   "( self.width, player.getattr('album'), 
self.get_sepstrmscroll(player.getattr('album')) )" ),
                    "artist_v"  : ( "scroller",
!                                   "1 3 %d 3 m 3 \"%s%s\"",
!                                   "( self.width, player.getattr('artist'), 
self.get_sepstrmscroll(player.getattr('artist')) )" ),
                    "time_v1"   : ( "string",
                                    "2 4 '% 2d:%02d/'",
***************
*** 377,388 ****
                  "video_player"  :
                  { "video_v"   : ( "scroller",
!                                   "1 1 %d 1 h 2 \"%s\"",
!                                 "( self.width, title )" ),
                    "tag_v"     : ( "scroller",
!                                   "1 2 %d 2 h 2 \"%s\"",
!                                   "( self.width, player.getattr('tagline') )" ),
                    "genre_v"   : ( "scroller",
!                                   "1 3 %d 3 h 2 \"%s\"",
!                                   "( self.width, player.getattr('genre') )" ),
                    "time_v1"   : ( "string",
                                    "3 4 '%s /'",
--- 383,394 ----
                  "video_player"  :
                  { "video_v"   : ( "scroller",
!                                   "1 1 %d 1 m 3 \"%s%s\"",
!                                 "( self.width, title, self.get_sepstrmscroll(title) 
)" ),
                    "tag_v"     : ( "scroller",
!                                   "1 2 %d 2 m 3 \"%s%s\"",
!                                   "( self.width, player.getattr('tagline'), 
self.get_sepstrmscroll(player.getattr('tagline')) )" ),
                    "genre_v"   : ( "scroller",
!                                   "1 3 %d 3 m 3 \"%s%s\"",
!                                   "( self.width, player.getattr('genre'), 
self.get_sepstrmscroll(player.getattr('genre')) )" ),
                    "time_v1"   : ( "string",
                                    "3 4 '%s /'",
***************
*** 399,413 ****
                  "tv"            :
                  { "chan_v"   : ( "scroller",
!                                  "1 1 %d 1 h 2 \"%s\"",
!                                  "( self.width, tv.channel_id )" ),
                    "prog_v"   : ( "scroller",
!                                  "1 2 %d 2 h 2 \"%s\"",
!                                  "( self.width, tv.title )" ),
                    "time_v"   : ( "scroller",
!                                  "1 3 %d 3 h 2 \"%s-%s\"",
!                                  "( self.width, tv.start, tv.stop )" ),
                    "desc_v"   : ( "scroller",
!                                  "1 4 %d 4 h 2 \"%s\"",
!                                  "( self.width, tv.desc )" )
                    }              
                  } # screens
--- 405,419 ----
                  "tv"            :
                  { "chan_v"   : ( "scroller",
!                                  "1 1 %d 1 m 3 \"%s%s\"",
!                                  "( self.width, tv.channel_id, 
self.get_sepstrmscroll(tv.channel_id) )" ),
                    "prog_v"   : ( "scroller",
!                                  "1 2 %d 2 m 3 \"%s%s\"",
!                                  "( self.width, tv.title, 
self.get_sepstrmscroll(tv.title) )" ),
                    "time_v"   : ( "scroller",
!                                  "1 3 %d 3 m 3 \"%s-%s%s\"",
!                                  "( self.width, tv.start, tv.stop, 
self.get_sepstrmscroll(tv.start+'-'+tv.stop) )" ),
                    "desc_v"   : ( "scroller",
!                                  "1 4 %d 4 m 3 \"%s%s\"",
!                                  "( self.width, tv.desc, 
self.get_sepstrmscroll(tv.desc) )" )
                    }              
                  } # screens
***************
*** 426,440 ****
                   "menu"    :
                   { "title_v"  : ( "scroller",
!                                   "1 1 %d 1 h 2 \"%s\"",
!                                   "( self.width, menu.heading )" ),
                     "item_v"   : ( "scroller",
!                                   "1 2 %d 2 h 2 \"%s\"",
!                                   "( self.width, title )" )
                     },
  
                   "audio_player"  :
                   { "music_v"   : ( "scroller",
!                                    "1 1 %d 1 h 2 \"%s\"",
!                                    "( self.width, title )" ),
                    "time_v1"   : ( "string",
                                    "2 2 '% 2d:%02d/'",
--- 432,446 ----
                   "menu"    :
                   { "title_v"  : ( "scroller",
!                                   "1 1 %d 1 m 3 \"%s%s\"",
!                                   "( self.width, menu.heading, 
self.get_sepstrmscroll(menu.heading) )" ),
                     "item_v"   : ( "scroller",
!                                   "1 2 %d 2 m 3 \"%s%s\"",
!                                   "( self.width, title, 
self.get_sepstrmscroll(title) )" )
                     },
  
                   "audio_player"  :
                   { "music_v"   : ( "scroller",
!                                    "1 1 %d 1 m 3 \"%s%s\"",
!                                    "( self.width, title, 
self.get_sepstrmscroll(title) )" ),
                    "time_v1"   : ( "string",
                                    "2 2 '% 2d:%02d/'",
***************
*** 451,456 ****
                  "video_player"  :
                  { "video_v"   : ( "scroller",
!                                   "1 1 %d 1 h 2 \"%s\"" ,
!                                   "( self.width, title )" ),
                    "time_v2"   : ( "string",
                                    "2 2 '%s'",
--- 457,462 ----
                  "video_player"  :
                  { "video_v"   : ( "scroller",
!                                   "1 1 %d 1 m 3 \"%s%s\"" ,
!                                   "( self.width, title, 
self.get_sepstrmscroll(title) )" ),
                    "time_v2"   : ( "string",
                                    "2 2 '%s'",
***************
*** 468,476 ****
                   "tv"            :
                   { "chan_v"   : ( "scroller",
!                                   "1 1 %d 1 h 2 \"%s\"",
!                                   "( self.width, tv.display_name) )" ),
                     "prog_v"   : ( "scroller",
!                                   "1 2 %d 2 h 2 \"%s\"",
!                                   "( self.width, tv.title )" )
                     }
                  },
--- 474,482 ----
                   "tv"            :
                   { "chan_v"   : ( "scroller",
!                                   "1 1 %d 1 m 3 \"%s%s\"",
!                                   "( self.width, tv.channel_id, 
self.get_sepstrmscroll(tv.channel_id) )" ),
                     "prog_v"   : ( "scroller",
!                                   "1 2 %d 2 m 3 \"%s%s\"",
!                                   "( self.width, tv.title, 
self.get_sepstrmscroll(tv.title) )" )
                     }
                  },
***************
*** 486,500 ****
                   "menu"    :
                   { "title_v"  : ( "scroller",
!                                   "1 1 %d 1 h 2 \"%s\"",
!                                   "( self.width, menu.heading )" ),
                     "item_v"   : ( "scroller",
!                                   "1 2 %d 2 h 2 \"%s\"",
!                                   "( self.width, title )" )
                     },
  
                   "audio_player":
                   { "music_v"   : ( "scroller",
!                                    "1 1 %d 1 h 2 \"%s\"",
!                                    "( self.width, title )" ),
                    "time_v1"   : ( "string",
                                    "2 2 '% 2d:%02d/'",
--- 492,506 ----
                   "menu"    :
                   { "title_v"  : ( "scroller",
!                                   "1 1 %d 1 m 3 \"%s%s\"",
!                                   "( self.width, menu.heading, 
self.get_sepstrmscroll(menu.heading) )" ),
                     "item_v"   : ( "scroller",
!                                   "1 2 %d 2 m 3 \"%s%s\"",
!                                   "( self.width, title, 
self.get_sepstrmscroll(title) )" )
                     },
  
                   "audio_player":
                   { "music_v"   : ( "scroller",
!                                    "1 1 %d 1 m 3 \"%s%s\"",
!                                    "( self.width, title, 
self.get_sepstrmscroll(title) )" ),
                    "time_v1"   : ( "string",
                                    "2 2 '% 2d:%02d/'",
***************
*** 514,519 ****
                  "video_player"  :
                  { "video_v"   : ( "scroller",
!                                   "1 1 %d 1 h 2 \"%s\"",
!                                 "( self.width, title )" ),
                    "time_v1"   : ( "string",
                                    "3 2 '%s /'",
--- 520,525 ----
                  "video_player"  :
                  { "video_v"   : ( "scroller",
!                                   "1 1 %d 1 m 3 \"%s%s\"",
!                                 "( self.width, title, self.get_sepstrmscroll(title) 
)" ),
                    "time_v1"   : ( "string",
                                    "3 2 '%s /'",
***************
*** 531,539 ****
                   "tv":
                   { "chan_v"   : ( "scroller",
!                                   "1 1 %d 1 h 2 \"%s\"",
!                                   "( self.width, tv.display_name) )" ),
                     "prog_v"   : ( "scroller",
!                                   "1 2 %d 2 h 2 \"%s\"",
!                                   "( self.width, tv.title )" )
                     }
                   },
--- 537,545 ----
                   "tv":
                   { "chan_v"   : ( "scroller",
!                                   "1 1 %d 1 m 3 \"%s%s\"",
!                                   "( self.width, tv.channel_id, 
self.get_sepstrmscroll(tv.channel_id) )" ),
                     "prog_v"   : ( "scroller",
!                                   "1 2 %d 2 m 3 \"%s%s\"",
!                                   "( self.width, tv.title, 
self.get_sepstrmscroll(tv.title) )" )
                     }
                   },
***************
*** 555,563 ****
                                   None ),
                     "title_v"  : ( "scroller",
!                                   "7 1 %d 1 h 2 \"%s\"",
!                                   "( self.width, menu.heading )" ),
                     "item_v"   : ( "scroller",
!                                   "7 2 %d 2 h 2 \"%s\"",
!                                   "( self.width, title )" )
                     },
  
--- 561,569 ----
                                   None ),
                     "title_v"  : ( "scroller",
!                                   "7 1 %d 1 m 3 \"%s%s\"",
!                                   "( self.width, menu.heading, 
self.get_sepstrmscroll(menu.heading) )" ),
                     "item_v"   : ( "scroller",
!                                   "7 2 %d 2 m 3 \"%s%s\"",
!                                   "( self.width, title, 
self.get_sepstrmscroll(title) )" )
                     },
  
***************
*** 567,572 ****
                                    None ),
                    "music_v"   : ( "scroller",
!                                   "8 1 %d 1 h 2 \"%s\"",
!                                 "( self.width, title )" ),
                    "time_v1"   : ( "string",
                                    "2 2 '% 2d:%02d/'",
--- 573,578 ----
                                    None ),
                    "music_v"   : ( "scroller",
!                                   "8 1 %d 1 m 3 \"%s%s\"",
!                                 "( self.width, title, self.get_sepstrmscroll(title) 
)" ),
                    "time_v1"   : ( "string",
                                    "2 2 '% 2d:%02d/'",
***************
*** 594,599 ****
                                    None ),
                    "video_v"   : ( "scroller",
!                                   "9 1 %d 1 h 2 \"%s\"",
!                                 "( self.width, title )" ),
                    "time_v1"   : ( "string",
                                    "2 2 '%s/'",
--- 600,605 ----
                                    None ),
                    "video_v"   : ( "scroller",
!                                   "9 1 %d 1 m 3 \"%s%s\"",
!                                 "( self.width, title, self.get_sepstrmscroll(title) 
)" ),
                    "time_v1"   : ( "string",
                                    "2 2 '%s/'",
***************
*** 625,636 ****
                                   None ),
                    "chan_v"   : ( "scroller",
!                                  "7 1 %d 1 h 2 \"%s\"",
!                                  "( self.width, tv.channel_id )" ),
                    "prog_v"   : ( "scroller",
!                                  "7 2 %d 2 h 2 \"%s\"",
!                                  "( self.width, tv.title )" ),
                    "time_v"   : ( "scroller",
!                                  "%d 1 %d 3 h 2 \"[%s-%s]\"",
!                                  "( self.width - 13, 13, tv.start, tv.stop )" ),
                    }
                  } # screens
--- 631,642 ----
                                   None ),
                    "chan_v"   : ( "scroller",
!                                  "7 1 %d 1 m 3 \"%s%s\"",
!                                  "( self.width, tv.channel_id, 
self.get_sepstrmscroll(tv.channel_id) )" ),
                    "prog_v"   : ( "scroller",
!                                  "7 2 %d 2 m 3 \"%s%s\"",
!                                  "( self.width, tv.title, 
self.get_sepstrmscroll(tv.title) )" ),
                    "time_v"   : ( "scroller",
!                                  "%d 1 %d 3 m 3 \"[%s-%s%s]\"",
!                                  "( self.width - 13, 13, tv.start, tv.stop, 
self.get_sepstrmscroll(tv.start+'-'+tv.stop) )" ),
                    }
                  } # screens
***************
*** 665,669 ****
  
  
- 
  class PluginInterface( plugin.DaemonPlugin ):
      """
--- 671,674 ----
***************
*** 883,887 ****
              for w in widgets:
                  type, param, val = self.screens[ s ][ w ]
!                 
                  if val: param = param % eval( val )
                  try:
--- 888,892 ----
              for w in widgets:
                  type, param, val = self.screens[ s ][ w ]
! 
                  if val: param = param % eval( val )
                  try:
***************
*** 954,955 ****
--- 959,970 ----
  
          return 0
+ 
+     def get_sepstrmscroll( self, mscrolldata ):
+         """
+         used for marquee scroller; returns seperator if info is wider then lcd
+         """
+         if len(mscrolldata) > self.width:
+             return sep_str_mscroll
+         else:
+             return ''
+ 




-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Freevo-cvslog mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freevo-cvslog

Reply via email to