Thank you very much!
Those tv... were typos! Thanks again! It didn't show errors because it
was wrapped with "try-except" block.
Gustavo
--- Immo Goltz <[EMAIL PROTECTED]> escreveu:
> Hello,
>
> ask requested, i attach a patch against lcd.py version 1.12 which
> change
> the left-right bouncing scroller to an marquee like scroller.
>
> All screen definitions are changed and tested with lcdproc curses.
> All
> working.
>
> Please verify: in the 2 line displays i found to references to
> "tv.display_name)", which i do not understand. 1. i only get a empty
> line 2. what is the bracket good for?
> These both references i changed to tv.channel_id
>
>
> new variable:
> sep_str_mscroll = " "
> * added, if data to show is wider than lcd
>
> new function:
> get_sepstrmscroll( self, mscrolldata )
> * returns value of sep_str_mscroll if data is wider than lcd
>
> changes to screen definitions like this:
> "title_v" : ( "scroller",
> - "7 1 %d 1 h 2 \"%s\"",
> - "( self.width, menu.heading )" ),
> + "7 1 %d 1 m 3 \"%s%s\"",
> + "( self.width, menu.heading, self.get_sepstrm
> * h 2 changed to m 3, which is marquee scroller and a little slower
> than
> before
> * added a new string parameter and value
>
>
> Immo
> > --- lcd.py_1.12 Mon Sep 29 23:19:15 2003
> +++ lcd.py_1.12_m Mon Oct 6 16:19:23 2003
> @@ -91,6 +91,7 @@
>
> # 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
> # Some displays (like the CrytstalFontz) do display the \ as a /
> @@ -179,8 +180,8 @@
> "Freevo",
> None ),
> "calendar" : ( "scroller",
> - "1 2 %d 2 h 2 \"Today is %s.\"",
> - "( self.width, time.strftime('%A,
> %d-%B') )" ),
> + "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\"",
> "( ( self.width - len(
> time.strftime('%T') ) ) / 2 + 1 ," + \
> @@ -201,17 +202,17 @@
> "1 4 'INFO: '",
> None ),
> "title_v" : ( "scroller",
> - "7 1 %d 1 h 2 \"%s\"",
> - "( self.width, menu.heading )" ),
> + "7 1 %d 1 m 3 \"%s%s\"",
> + "( self.width, menu.heading,
> self.get_sepstrmscroll(menu.heading) )" ),
> "item_v" : ( "scroller",
> - "7 2 %d 2 h 2 \"%s\"",
> - "( self.width, title )" ),
> + "7 2 %d 2 m 3 \"%s%s\"",
> + "( self.width, title,
> self.get_sepstrmscroll(title) )" ),
> "type_v" : ( "scroller",
> - "7 3 %d 3 h 2 \"%s\"",
> - "( self.width, typeinfo )" ),
> + "7 3 %d 3 m 3 \"%s%s\"",
> + "( self.width, typeinfo,
> self.get_sepstrmscroll(typeinfo) )" ),
> "info_v" : ( "scroller",
> - "7 4 %d 1 h 2 \"%s\"",
> - "( self.width, info )" )
> + "7 4 %d 1 m 3 \"%s%s\"",
> + "( self.width, info,
> self.get_sepstrmscroll(info) )" )
> },
>
> "audio_player" :
> @@ -225,14 +226,14 @@
> "1 3 'ARTIST: '",
> None ),
> "music_v" : ( "scroller",
> - "9 1 %d 1 h 2 \"%s\"",
> - "( self.width, title )" ),
> + "9 1 %d 1 m 3 \"%s%s\"",
> + "( self.width, title,
> self.get_sepstrmscroll(title) )" ),
> "album_v" : ( "scroller",
> - "9 2 %d 2 h 2 \"%s\"",
> - "( self.width,
> player.getattr('album') )" ),
> + "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 h 2 \"%s\"",
> - "( self.width,
> player.getattr('artist') )" ),
> + "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/'",
> "( int(player.length / 60),
> int(player.length % 60) )" ),
> @@ -263,14 +264,14 @@
> "1 3 'GENRE: '",
> None ),
> "video_v" : ( "scroller",
> - "9 1 %d 1 h 2 \"%s\"",
> - "( self.width, title )" ),
> + "9 1 %d 1 m 3 \"%s%s\"",
> + "( self.width, title,
> self.get_sepstrmscroll(title) )" ),
> "tag_v" : ( "scroller",
> - "9 2 %d 2 h 2 \"%s\"",
> - "( self.width,
> player.getattr('tagline') )" ),
> + "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 h 2 \"%s\"",
> - "( self.width,
> player.getattr('genre') )" ),
> + "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/'",
> "( length )" ),
> @@ -305,17 +306,17 @@
> "1 4 'DESC: '",
> None ),
> "chan_v" : ( "scroller",
> - "7 1 %d 1 h 2 \"%s\"",
> - "( self.width, tv.channel_id )" ),
> + "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 h 2 \"%s\"",
> - "( self.width, tv.title )" ),
> + "7 2 %d 2 m 3 \"%s%s\"",
> + "( self.width, tv.title,
> self.get_sepstrmscroll(tv.title) )" ),
> "time_v" : ( "scroller",
> - "7 3 %d 3 h 2 \"%s-%s\"",
> - "( self.width, tv.start, tv.stop )"
> ),
> + "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 h 2 \"%s\"",
> - "( self.width, tv.desc )" )
> + "7 4 %d 4 m 3 \"%s%s\"",
> + "( self.width, tv.desc,
> self.get_sepstrmscroll(tv.desc) )" )
> }
> },
>
> @@ -327,8 +328,8 @@
> "Freevo",
> None ),
> "calendar" : ( "scroller",
> - "1 2 %d 2 h 2 \"Today is %s.\"",
> - "( self.width, time.strftime('%A,
> %d-%B') )" ),
> + "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\"",
> "( ( self.width - len(
> time.strftime('%T') ) ) / 2 + 1 ," + \
> @@ -337,29 +338,29 @@
>
> "menu" :
> { "title_v" : ( "scroller",
> - "1 1 %d 1 h 2 \"%s\"",
> - "( self.width, menu.heading )" ),
> + "1 1 %d 1 m 3 \"%s%s\"",
> + "( self.width, menu.heading,
> self.get_sepstrmscroll(menu.heading) )" ),
> "item_v" : ( "scroller",
> - "1 2 %d 2 h 2 \"%s\"",
> - "( self.width, title )" ),
> + "1 2 %d 2 m 3 \"%s%s\"",
> + "( self.width, title,
> self.get_sepstrmscroll(title) )" ),
> "type_v" : ( "scroller",
> - "1 3 %d 3 h 2 \"%s\"",
> - "( self.width, typeinfo )" ),
> + "1 3 %d 3 m 3 \"%s%s\"",
> + "( self.width, typeinfo,
> self.get_sepstrmscroll(typeinfo) )" ),
> "info_v" : ( "scroller",
> - "1 4 %d 1 h 2 \"%s\"",
> - "( self.width, info )" )
> + "1 4 %d 1 m 3 \"%s%s\"",
> + "( self.width, info,
> self.get_sepstrmscroll(info) )" )
> },
>
> "audio_player" :
> { "music_v" : ( "scroller",
> - "1 1 %d 1 h 2 \"%s\"",
> - "( self.width, title )" ),
> + "1 1 %d 1 m 3 \"%s%s\"",
> + "( self.width, title,
> self.get_sepstrmscroll(title) )" ),
> "album_v" : ( "scroller",
> - "1 2 %d 2 h 2 \"%s\"",
> - "( self.width,
> player.getattr('album') )" ),
> + "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 h 2 \"%s\"",
> - "( self.width,
> player.getattr('artist') )" ),
> + "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/'",
> "( int(player.length / 60),
> int(player.length % 60) )" ),
> @@ -376,14 +377,14 @@
>
> "video_player" :
> { "video_v" : ( "scroller",
> - "1 1 %d 1 h 2 \"%s\"",
> - "( self.width, title )" ),
> + "1 1 %d 1 m 3 \"%s%s\"",
> + "( self.width, title,
> self.get_sepstrmscroll(title) )" ),
> "tag_v" : ( "scroller",
> - "1 2 %d 2 h 2 \"%s\"",
> - "( self.width,
> player.getattr('tagline') )" ),
> + "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 h 2 \"%s\"",
> - "( self.width,
> player.getattr('genre') )" ),
> + "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 /'",
> "( length )" ),
> @@ -398,17 +399,17 @@
>
> "tv" :
> { "chan_v" : ( "scroller",
> - "1 1 %d 1 h 2 \"%s\"",
> - "( self.width, tv.channel_id )" ),
> + "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 h 2 \"%s\"",
> - "( self.width, tv.title )" ),
> + "1 2 %d 2 m 3 \"%s%s\"",
> + "( self.width, tv.title,
> self.get_sepstrmscroll(tv.title) )" ),
> "time_v" : ( "scroller",
> - "1 3 %d 3 h 2 \"%s-%s\"",
> - "( self.width, tv.start, tv.stop )"
> ),
> + "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 h 2 \"%s\"",
> - "( self.width, tv.desc )" )
> + "1 4 %d 4 m 3 \"%s%s\"",
> + "( self.width, tv.desc,
> self.get_sepstrmscroll(tv.desc) )" )
> }
> } # screens
> }, # chars per line
> @@ -425,17 +426,17 @@
>
> "menu" :
> { "title_v" : ( "scroller",
> - "1 1 %d 1 h 2 \"%s\"",
> - "( self.width, menu.heading )" ),
> + "1 1 %d 1 m 3 \"%s%s\"",
> + "( self.width, menu.heading,
> self.get_sepstrmscroll(menu.heading) )" ),
> "item_v" : ( "scroller",
> - "1 2 %d 2 h 2 \"%s\"",
> - "( self.width, title )" )
> + "1 2 %d 2 m 3 \"%s%s\"",
> + "( self.width, title,
> self.get_sepstrmscroll(title) )" )
> },
>
> "audio_player" :
> { "music_v" : ( "scroller",
> - "1 1 %d 1 h 2 \"%s\"",
> - "( self.width, title )" ),
> + "1 1 %d 1 m 3 \"%s%s\"",
> + "( self.width, title,
> self.get_sepstrmscroll(title) )" ),
> "time_v1" : ( "string",
> "2 2 '% 2d:%02d/'",
> "( int(player.length / 60),
> int(player.length % 60) )" ),
> @@ -450,8 +451,8 @@
>
> "video_player" :
> { "video_v" : ( "scroller",
> - "1 1 %d 1 h 2 \"%s\"" ,
> - "( self.width, title )" ),
> + "1 1 %d 1 m 3 \"%s%s\"" ,
> + "( self.width, title,
> self.get_sepstrmscroll(title) )" ),
> "time_v2" : ( "string",
> "2 2 '%s'",
> "( elapsed )" ),
> @@ -467,11 +468,11 @@
>
> "tv" :
> { "chan_v" : ( "scroller",
> - "1 1 %d 1 h 2 \"%s\"",
> - "( self.width, tv.display_name) )"
> ),
> + "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 h 2 \"%s\"",
> - "( self.width, tv.title )" )
> + "1 2 %d 2 m 3 \"%s%s\"",
> + "( self.width, tv.title,
> self.get_sepstrmscroll(tv.title) )" )
> }
> },
>
> @@ -485,17 +486,17 @@
>
> "menu" :
> { "title_v" : ( "scroller",
> - "1 1 %d 1 h 2 \"%s\"",
> - "( self.width, menu.heading )" ),
> + "1 1 %d 1 m 3 \"%s%s\"",
> + "( self.width, menu.heading,
> self.get_sepstrmscroll(menu.heading) )" ),
> "item_v" : ( "scroller",
> - "1 2 %d 2 h 2 \"%s\"",
> - "( self.width, title )" )
> + "1 2 %d 2 m 3 \"%s%s\"",
> + "( self.width, title,
> self.get_sepstrmscroll(title) )" )
> },
>
> "audio_player":
> { "music_v" : ( "scroller",
> - "1 1 %d 1 h 2 \"%s\"",
> - "( self.width, title )" ),
> + "1 1 %d 1 m 3 \"%s%s\"",
> + "( self.width, title,
> self.get_sepstrmscroll(title) )" ),
> "time_v1" : ( "string",
> "2 2 '% 2d:%02d/'",
> "( int(player.length / 60),
> int(player.length % 60) )" ),
> @@ -513,8 +514,8 @@
>
> "video_player" :
> { "video_v" : ( "scroller",
> - "1 1 %d 1 h 2 \"%s\"",
> - "( self.width, title )" ),
> + "1 1 %d 1 m 3 \"%s%s\"",
> + "( self.width, title,
> self.get_sepstrmscroll(title) )" ),
> "time_v1" : ( "string",
> "3 2 '%s /'",
> "( length )" ),
> @@ -530,11 +531,11 @@
>
> "tv":
> { "chan_v" : ( "scroller",
> - "1 1 %d 1 h 2 \"%s\"",
> - "( self.width, tv.display_name) )"
> ),
> + "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 h 2 \"%s\"",
> - "( self.width, tv.title )" )
> + "1 2 %d 2 m 3 \"%s%s\"",
> + "( self.width, tv.title,
> self.get_sepstrmscroll(tv.title) )" )
> }
> },
>
> @@ -554,11 +555,11 @@
> "1 2 'ITEM: '",
> None ),
> "title_v" : ( "scroller",
> - "7 1 %d 1 h 2 \"%s\"",
> - "( self.width, menu.heading )" ),
> + "7 1 %d 1 m 3 \"%s%s\"",
> + "( self.width, menu.heading,
> self.get_sepstrmscroll(menu.heading) )" ),
> "item_v" : ( "scroller",
> - "7 2 %d 2 h 2 \"%s\"",
> - "( self.width, title )" )
> + "7 2 %d 2 m 3 \"%s%s\"",
> + "( self.width, title,
> self.get_sepstrmscroll(title) )" )
> },
>
> "audio_player":
> @@ -566,8 +567,8 @@
> "1 1 'MUSIC: '",
> None ),
> "music_v" : ( "scroller",
> - "8 1 %d 1 h 2 \"%s\"",
> - "( self.width, title )" ),
> + "8 1 %d 1 m 3 \"%s%s\"",
> + "( self.width, title,
> self.get_sepstrmscroll(title) )" ),
> "time_v1" : ( "string",
> "2 2 '% 2d:%02d/'",
> "( int(player.length / 60),
> int(player.length % 60) )" ),
> @@ -593,8 +594,8 @@
> "2 1 'VIDEO: '",
> None ),
> "video_v" : ( "scroller",
> - "9 1 %d 1 h 2 \"%s\"",
> - "( self.width, title )" ),
> + "9 1 %d 1 m 3 \"%s%s\"",
> + "( self.width, title,
> self.get_sepstrmscroll(title) )" ),
> "time_v1" : ( "string",
> "2 2 '%s/'",
> "( length )" ),
> @@ -624,14 +625,14 @@
> "1 2 'PROG: '",
> None ),
> "chan_v" : ( "scroller",
> - "7 1 %d 1 h 2 \"%s\"",
> - "( self.width, tv.channel_id )" ),
> + "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 h 2 \"%s\"",
> - "( self.width, tv.title )" ),
> + "7 2 %d 2 m 3 \"%s%s\"",
> + "( self.width, tv.title,
> self.get_sepstrmscroll(tv.title) )" ),
> "time_v" : ( "scroller",
> - "%d 1 %d 3 h 2 \"[%s-%s]\"",
> - "( self.width - 13, 13, tv.start,
> tv.stop )" ),
> + "%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
> } # chars per line
> @@ -664,7 +665,6 @@
> return info
>
>
> -
> class PluginInterface( plugin.DaemonPlugin ):
> """
> Display context info in LCD using lcdproc daemon.
> @@ -882,7 +882,7 @@
>
> for w in widgets:
> type, param, val = self.screens[ s ][ w ]
> -
> +
> if val: param = param % eval( val )
> try:
> self.lcd.widget_set( s, w, param.encode(
> 'latin1' ) )
> @@ -953,3 +953,13 @@
> self.playitem = None
>
> 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 ''
> +
>
Yahoo! Mail - o melhor webmail do Brasil
http://mail.yahoo.com.br
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Freevo-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freevo-devel