Update of /cvsroot/freevo/freevo/src/tv
In directory sc8-pr-cvs1:/tmp/cvs-serv32590/tv
Modified Files:
edit_favorite.py program_display.py record_types.py tvguide.py
tvmenu.py view_favorites.py
Log Message:
Patch from Matthieu Weber to revive add/edit favorites support from the
TV interface.
Index: edit_favorite.py
===================================================================
RCS file: /cvsroot/freevo/freevo/src/tv/edit_favorite.py,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** edit_favorite.py 16 Nov 2003 17:38:48 -0000 1.5
--- edit_favorite.py 9 Jan 2004 02:10:00 -0000 1.6
***************
*** 10,13 ****
--- 10,17 ----
#-----------------------------------------------------------------------
# $Log$
+ # Revision 1.6 2004/01/09 02:10:00 rshortt
+ # Patch from Matthieu Weber to revive add/edit favorites support from the
+ # TV interface.
+ #
# Revision 1.5 2003/11/16 17:38:48 dischi
# i18n patch from David Sagnol
***************
*** 45,49 ****
# ----------------------------------------------------------------------
! import time
import config, tv.epg_xmltv, tv.view_favorites
--- 49,53 ----
# ----------------------------------------------------------------------
! from time import gmtime, strftime
import config, tv.epg_xmltv, tv.view_favorites
***************
*** 54,57 ****
--- 58,62 ----
import tv.record_types
from tv.epg_types import TvProgram
+ from tv.view_favorites import ViewFavorites
from gui.GUIObject import *
***************
*** 61,64 ****
--- 66,70 ----
from gui.OptionBox import *
from gui.LetterBoxGroup import *
+ from gui.ConfirmBox import ConfirmBox
DEBUG = 1
***************
*** 74,86 ****
width Integer
height Integer
"""
def __init__(self, parent=None, subject=None, left=None, top=None, width=500,
! height=350):
self.oldname = None
! print 'DEBUG::subject: %s' % dir(subject)
! print 'DEBUG::subject::__module__ %s' % subject.__module__
#if isinstance(subject, tv.record_types.Favorite):
# print 'DEBUG::subject: FUCK'
--- 80,97 ----
width Integer
height Integer
+ context Context in which the object is instanciated
"""
def __init__(self, parent=None, subject=None, left=None, top=None, width=500,
! height=350, context=None):
self.oldname = None
+ if context:
+ self.context = context
+ else:
+ context = 'guide'
! #print 'DEBUG::subject: %s' % dir(subject)
! #print 'DEBUG::subject::__module__ %s' % subject.__module__
#if isinstance(subject, tv.record_types.Favorite):
# print 'DEBUG::subject: FUCK'
***************
*** 117,121 ****
guide = tv.epg_xmltv.get_guide()
! name = Label(_('Name:\t'), self, Align.LEFT)
self.name_input = LetterBoxGroup(text=self.fav.name)
self.name_input.h_align = Align.NONE
--- 128,132 ----
guide = tv.epg_xmltv.get_guide()
! name = Label(_('Name:'), self, Align.LEFT)
self.name_input = LetterBoxGroup(text=self.fav.name)
self.name_input.h_align = Align.NONE
***************
*** 123,129 ****
! title = Label(_('Title:\t%s') % self.fav.title, self, Align.LEFT)
! chan = Label(_('Channel:\t'), self, Align.LEFT)
self.chan_box = OptionBox('ANY')
--- 134,140 ----
! title = Label(_('Title:%s') % self.fav.title, self, Align.LEFT)
! chan = Label(_('Channel:'), self, Align.LEFT)
self.chan_box = OptionBox('ANY')
***************
*** 131,224 ****
self.chan_box.add_item(text='ANY', value='ANY')
! i = 0
chan_index = 0
for ch in guide.chan_list:
! if ch.id == self.fav.channel_id:
chan_index = i
i += 1
! self.chan_box.add_item(text=ch.id, value=ch.id)
self.chan_box.toggle_selected_index(chan_index)
self.add_child(self.chan_box)
! dow = Label(_('Day of Week:\t'), self, Align.LEFT)
self.dow_box = OptionBox('ANY DAY')
self.dow_box.h_align = Align.NONE
self.dow_box.add_item(text=_('ANY DAY'), value='ANY')
- self.dow_box.add_item(text=_('Mon'), value=0)
- self.dow_box.add_item(text=_('Tues'), value=1)
- self.dow_box.add_item(text=_('Wed'), value=2)
- self.dow_box.add_item(text=_('Thurs'), value=3)
- self.dow_box.add_item(text=_('Fri'), value=4)
- self.dow_box.add_item(text=_('Sat'), value=5)
- self.dow_box.add_item(text=_('Sun'), value=6)
! self.dow_box.toggle_selected_index(0)
self.add_child(self.dow_box)
! tod = Label(_('Time of Day:\t'), self, Align.LEFT)
self.tod_box = OptionBox('ANY')
self.tod_box.h_align = Align.NONE
self.tod_box.add_item(text=_('ANY TIME'), value='ANY')
! self.tod_box.add_item(text='12:00 AM', value=0)
! self.tod_box.add_item(text='11:30 AM', value=30)
! self.tod_box.add_item(text='1:00 AM', value=60)
! self.tod_box.add_item(text='1:30 AM', value=90)
! self.tod_box.add_item(text='2:00 AM', value=120)
! self.tod_box.add_item(text='2:30 AM', value=150)
! self.tod_box.add_item(text='3:00 AM', value=180)
! self.tod_box.add_item(text='3:30 AM', value=210)
! self.tod_box.add_item(text='4:00 AM', value=240)
! self.tod_box.add_item(text='4:30 AM', value=270)
! self.tod_box.add_item(text='5:00 AM', value=300)
! self.tod_box.add_item(text='5:30 AM', value=330)
! self.tod_box.add_item(text='6:00 AM', value=360)
! self.tod_box.add_item(text='6:30 AM', value=390)
! self.tod_box.add_item(text='7:00 AM', value=420)
! self.tod_box.add_item(text='7:30 AM', value=450)
! self.tod_box.add_item(text='8:00 AM', value=480)
! self.tod_box.add_item(text='8:30 AM', value=510)
! self.tod_box.add_item(text='9:00 AM', value=540)
! self.tod_box.add_item(text='9:30 AM', value=570)
! self.tod_box.add_item(text='10:00 AM', value=600)
! self.tod_box.add_item(text='10:30 AM', value=630)
! self.tod_box.add_item(text='11:00 AM', value=660)
! self.tod_box.add_item(text='11:30 AM', value=690)
! self.tod_box.add_item(text='12:00 PM', value=720)
! self.tod_box.add_item(text='12:30 PM', value=750)
! self.tod_box.add_item(text='1:00 PM', value=780)
! self.tod_box.add_item(text='1:30 PM', value=810)
! self.tod_box.add_item(text='2:00 PM', value=840)
! self.tod_box.add_item(text='2:30 PM', value=870)
! self.tod_box.add_item(text='3:00 PM', value=900)
! self.tod_box.add_item(text='3:30 PM', value=930)
! self.tod_box.add_item(text='4:00 PM', value=960)
! self.tod_box.add_item(text='4:30 PM', value=990)
! self.tod_box.add_item(text='5:00 PM', value=1020)
! self.tod_box.add_item(text='5:30 PM', value=1050)
! self.tod_box.add_item(text='6:00 PM', value=1080)
! self.tod_box.add_item(text='6:30 PM', value=1110)
! self.tod_box.add_item(text='7:00 PM', value=1140)
! self.tod_box.add_item(text='7:30 PM', value=1170)
! self.tod_box.add_item(text='8:00 PM', value=1200)
! self.tod_box.add_item(text='8:30 PM', value=1230)
! self.tod_box.add_item(text='9:00 PM', value=1260)
! self.tod_box.add_item(text='9:30 PM', value=1290)
! self.tod_box.add_item(text='10:00 PM', value=1320)
! self.tod_box.add_item(text='10:30 PM', value=1350)
! self.tod_box.add_item(text='11:00 PM', value=1380)
! self.tod_box.add_item(text='11:30 PM', value=1410)
!
! self.tod_box.toggle_selected_index(0)
self.add_child(self.tod_box)
self.save = Button(_('Save'))
self.add_child(self.save)
def eventhandler(self, event, menuw=None):
! print 'SELECTED CHILD: %s' % self.get_selected_child()
if self.get_selected_child() == self.name_input:
if event == em.INPUT_LEFT:
--- 142,239 ----
self.chan_box.add_item(text='ANY', value='ANY')
! i = 1
chan_index = 0
for ch in guide.chan_list:
! #if ch.id == self.fav.channel_id:
! if ch.displayname == self.fav.channel:
chan_index = i
i += 1
! self.chan_box.add_item(text=ch.displayname, value=ch.displayname)
self.chan_box.toggle_selected_index(chan_index)
+ # This is a hack for setting the OptionBox's label to the current
+ # value. It should be done by OptionBox when drawing, but it doesn't
+ # work :(
+ self.chan_box.change_item(None)
self.add_child(self.chan_box)
! dow = Label(_('Day of Week:'), self, Align.LEFT)
self.dow_box = OptionBox('ANY DAY')
self.dow_box.h_align = Align.NONE
self.dow_box.add_item(text=_('ANY DAY'), value='ANY')
! i=1
! dow_index = 0
! for dow in ('Mon', 'Tues', 'Wed', 'Thurs', 'Fri', 'Sat', 'Sun'):
! val = "%d" % (i-1)
! self.dow_box.add_item(text=_(dow), value=val )
! if val == self.fav.dow:
! dow_index = i
! i += 1
! self.dow_box.toggle_selected_index(dow_index)
! # This is a hack for setting the OptionBox's label to the current
! # value. It should be done by OptionBox when drawing, but it doesn't
! # work :(
! self.dow_box.change_item(None)
self.add_child(self.dow_box)
! tod = Label(_('Time of Day:'), self, Align.LEFT)
self.tod_box = OptionBox('ANY')
self.tod_box.h_align = Align.NONE
self.tod_box.add_item(text=_('ANY TIME'), value='ANY')
!
! i = 0
! tod_index = 0
!
! for h in range(0,24):
! for m in (00, 30):
! val = i*30
! # Little hack: we calculate the hours from Jan 1st, 1970 GMT,
! # and then use strftime to get the string representation
! text = strftime(config.TV_TIMEFORMAT, gmtime(h * 3600 + 60 * m))
! self.tod_box.add_item(text=text, value=val)
! if val == self.fav.mod:
! tod_index = i+1
! i += 1
! self.tod_box.toggle_selected_index(tod_index)
! # This is a hack for setting the OptionBox's label to the current
! # value. It should be done by OptionBox when drawing, but it doesn't
! # work :(
! self.tod_box.change_item(None)
self.add_child(self.tod_box)
self.save = Button(_('Save'))
self.add_child(self.save)
+ if self.oldname:
+ self.remove = Button(_('Remove'))
+ self.add_child(self.remove)
+ else:
+ self.remove = None
+ self.cancel = Button(_('CANCEL'))
+ self.add_child(self.cancel)
+ def removeFavorite(self):
+ (result, msg) = record_client.removeFavorite(self.oldname)
+ if result:
+ searcher = None
+ if self.parent and self.context == 'favorites':
+ for child in self.parent.children:
+ if isinstance(child, ViewFavorites):
+ searcher = child
+ break
+ if searcher:
+ searcher.refreshList()
+ self.destroy()
+ if searcher:
+ searcher.draw()
+ self.osd.update()
+ else:
+ AlertBox(parent=self,
+ text=_('Remove Failed: %s') % msg).show()
def eventhandler(self, event, menuw=None):
! #print 'SELECTED CHILD: %s' % self.get_selected_child()
if self.get_selected_child() == self.name_input:
if event == em.INPUT_LEFT:
***************
*** 263,267 ****
elif event == em.INPUT_ENTER:
if self.chan_box.selected or self.chan_box.list.is_visible():
! if DEBUG: print ' Want to toggle_box'
self.chan_box.toggle_box()
self.draw()
--- 278,282 ----
elif event == em.INPUT_ENTER:
if self.chan_box.selected or self.chan_box.list.is_visible():
! #if DEBUG: print ' Want to toggle_box'
self.chan_box.toggle_box()
self.draw()
***************
*** 331,343 ****
self.name_input.get_word(),
self.fav.title,
! self.fav.channel_id,
self.dow_box.list.get_selected_item().value,
self.tod_box.list.get_selected_item().value,
self.fav.priority)
if result:
! tv.view_favorites.ViewFavorites(parent=self.parent,
text='Favorites').show()
self.destroy()
else:
! AlertBox(parent=self, text=_('Failed: %s') % msg)
return
elif event in (em.INPUT_LEFT, em.MENU_PAGEUP):
--- 346,359 ----
self.name_input.get_word(),
self.fav.title,
! self.chan_box.list.get_selected_item().value,
self.dow_box.list.get_selected_item().value,
self.tod_box.list.get_selected_item().value,
self.fav.priority)
if result:
! #tv.view_favorites.ViewFavorites(parent=self.parent,
text='Favorites').show()
self.destroy()
+ AlertBox(parent='osd', text=_('Favorite %s has been saved') %
self.name_input.get_word()).show()
else:
! AlertBox(parent=self, text=_('Failed: %s') % msg).show()
return
elif event in (em.INPUT_LEFT, em.MENU_PAGEUP):
***************
*** 345,352 ****
--- 361,409 ----
self.tod_box.toggle_selected()
self.draw()
+ elif event in (em.INPUT_RIGHT, em.MENU_PAGEDOWN):
+ self.save.toggle_selected()
+ if self.remove:
+ self.remove.toggle_selected()
+ else:
+ self.cancel.toggle_selected()
+ self.draw()
elif event == em.INPUT_EXIT:
self.destroy()
return
+ self.osd.update(self.get_rect())
+ return
+ elif self.get_selected_child() == self.remove:
+ if event == em.INPUT_ENTER:
+ ConfirmBox(text=_('Do you want to remove %s?') %
self.name_input.get_word(),
+ handler=self.removeFavorite).show()
+ return
+ elif event in (em.INPUT_LEFT, em.MENU_PAGEUP):
+ self.save.toggle_selected()
+ self.remove.toggle_selected()
+ self.draw()
+ elif event in (em.INPUT_RIGHT, em.MENU_PAGEDOWN):
+ self.remove.toggle_selected()
+ self.cancel.toggle_selected()
+ self.draw()
+ elif event in (em.INPUT_ENTER, em.INPUT_EXIT):
+ self.destroy()
+ return
+ self.osd.update(self.get_rect())
+ return
+
+ elif self.get_selected_child() == self.cancel:
+ if event in (em.INPUT_LEFT, em.MENU_PAGEUP):
+ if self.remove:
+ self.remove.toggle_selected()
+ else:
+ self.save.toggle_selected()
+ self.cancel.toggle_selected()
+ self.draw()
+ elif event in (em.INPUT_ENTER, em.INPUT_EXIT):
+ self.destroy()
+ return
+ self.osd.update(self.get_rect())
+ return
if event == em.INPUT_EXIT:
self.destroy()
Index: program_display.py
===================================================================
RCS file: /cvsroot/freevo/freevo/src/tv/program_display.py,v
retrieving revision 1.23
retrieving revision 1.24
diff -C2 -d -r1.23 -r1.24
*** program_display.py 28 Nov 2003 20:08:58 -0000 1.23
--- program_display.py 9 Jan 2004 02:10:00 -0000 1.24
***************
*** 10,13 ****
--- 10,17 ----
#-----------------------------------------------------------------------
# $Log$
+ # Revision 1.24 2004/01/09 02:10:00 rshortt
+ # Patch from Matthieu Weber to revive add/edit favorites support from the
+ # TV interface.
+ #
# Revision 1.23 2003/11/28 20:08:58 dischi
# renamed some config variables
***************
*** 178,197 ****
used_height += chan.font.height + start.font.height + stop.font.height + \
(4 *self.v_spacing)
!
if self.context == 'guide':
! self.b0 = Button(_('Record'), width=(width-60)/2)
! # self.options.add_item(text='Search for more of this program', value=2)
! # self.options.add_item(text='Add "%s" to favorites' % prog.title,
value=3)
else:
! self.b0 = Button(_('Remove'), width=(width-60)/2)
! self.b0.set_h_align(Align.CENTER)
! self.add_child(self.b0)
! self.b0.toggle_selected()
- self.b1 = Button(_('CANCEL'), width=(width-60)/2)
- self.b1.set_h_align(Align.CENTER)
- self.add_child(self.b1)
-
if desc:
desc.width = self.width - 30
--- 182,208 ----
used_height += chan.font.height + start.font.height + stop.font.height + \
(4 *self.v_spacing)
!
! self.buttons = []
! all_buttons = { 'record': 'Record',
! 'search': 'Search for more of this program',
! 'favorites': 'Add to favorites',
! 'remove': 'Remove',
! 'cancel': 'CANCEL',
! }
! self.button_config = []
if self.context == 'guide':
! self.button_config = ['record', 'favorites', 'cancel']
else:
! self.button_config = ['remove', 'cancel']
!
! for bname in self.button_config:
! b = Button(_(all_buttons[bname]), width=(width-60)/2)
! b.set_h_align(Align.CENTER)
! self.add_child(b)
! self.buttons.append(b)
! self.buttons[0].toggle_selected()
! self.current_button = 0
if desc:
desc.width = self.width - 30
***************
*** 218,224 ****
! if event in (em.INPUT_UP, em.INPUT_DOWN):
! self.b0.toggle_selected()
! self.b1.toggle_selected()
self.draw()
self.osd.update(self.get_rect())
--- 229,247 ----
! #if event in (em.INPUT_UP, em.INPUT_DOWN):
! if event == em.INPUT_UP:
! if self.current_button > 0:
! self.buttons[self.current_button].toggle_selected()
! self.current_button -= 1
! self.buttons[self.current_button].toggle_selected()
! self.draw()
! self.osd.update(self.get_rect())
! return
!
! elif event == em.INPUT_DOWN:
! if self.current_button < len(self.buttons) - 1:
! self.buttons[self.current_button].toggle_selected()
! self.current_button += 1
! self.buttons[self.current_button].toggle_selected()
self.draw()
self.osd.update(self.get_rect())
***************
*** 236,240 ****
elif event == em.INPUT_ENTER:
! if self.b0.selected and self.context == 'guide':
(result, msg) = record_client.scheduleRecording(self.prog)
if result:
--- 259,263 ----
elif event == em.INPUT_ENTER:
! if self.button_config[self.current_button] == 'record' and self.context
== 'guide':
(result, msg) = record_client.scheduleRecording(self.prog)
if result:
***************
*** 252,261 ****
# XXX: add to favorites - should go to an edit favorites screen
! elif 0:
tv.edit_favorite.EditFavorite(parent=self,
subject=self.prog).show()
# next will only happen if we are not viewing from the guide
! elif self.b0.selected:
(result, msg) = record_client.removeScheduledRecording(self.prog)
if result:
--- 275,285 ----
# XXX: add to favorites - should go to an edit favorites screen
! elif self.button_config[self.current_button] == 'favorites' and
self.context == 'guide':
! self.destroy()
tv.edit_favorite.EditFavorite(parent=self,
subject=self.prog).show()
# next will only happen if we are not viewing from the guide
! elif self.button_config[self.current_button] == 'remove':
(result, msg) = record_client.removeScheduledRecording(self.prog)
if result:
***************
*** 289,293 ****
text=_('Remove Failed: %s') % msg).show()
! elif self.b1.selected:
self.destroy()
--- 313,317 ----
text=_('Remove Failed: %s') % msg).show()
! elif self.button_config[self.current_button] == 'cancel':
self.destroy()
Index: record_types.py
===================================================================
RCS file: /cvsroot/freevo/freevo/src/tv/record_types.py,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** record_types.py 20 Oct 2003 01:41:55 -0000 1.6
--- record_types.py 9 Jan 2004 02:10:00 -0000 1.7
***************
*** 10,13 ****
--- 10,17 ----
# -----------------------------------------------------------------------
# $Log$
+ # Revision 1.7 2004/01/09 02:10:00 rshortt
+ # Patch from Matthieu Weber to revive add/edit favorites support from the
+ # TV interface.
+ #
# Revision 1.6 2003/10/20 01:41:55 rshortt
# Moving tv_util from src/tv/ to src/util/.
***************
*** 143,147 ****
--- 147,171 ----
exacttod=FALSE, priority=0):
self.TYPES_VERSION = TYPES_VERSION
+ translation_table = \
+ ' ' \
+ + ' ' \
+ + ' !"#$%&' + "'" + '()*+,-./' \
+ + '0123456789:;<=>?' \
+ + '@ABCDEFGHIJKLMNO' \
+ + 'PQRSTUVWXYZ[\]^_' \
+ + '`abcdefghijklmno' \
+ + 'pqrstuvwxyz{|}~�' \
+ + ' ' \
+ + ' ' \
+ + ' ' \
+ + ' ' \
+ + 'AAAAAAACEEEEIIII' \
+ + 'DNOOOOOxOUUUUYPS' \
+ + 'aaaaaaaceeeeiiii' \
+ + 'dnooooo/ouuuuypy'
+
self.name = name
+ if name:
+ self.name = name.translate(translation_table)
self.priority = priority
Index: tvguide.py
===================================================================
RCS file: /cvsroot/freevo/freevo/src/tv/tvguide.py,v
retrieving revision 1.21
retrieving revision 1.22
diff -C2 -d -r1.21 -r1.22
*** tvguide.py 4 Dec 2003 21:48:11 -0000 1.21
--- tvguide.py 9 Jan 2004 02:10:00 -0000 1.22
***************
*** 10,13 ****
--- 10,17 ----
# -----------------------------------------------------------------------
# $Log$
+ # Revision 1.22 2004/01/09 02:10:00 rshortt
+ # Patch from Matthieu Weber to revive add/edit favorites support from the
+ # TV interface.
+ #
# Revision 1.21 2003/12/04 21:48:11 dischi
# also add the plugin area
***************
*** 198,202 ****
self.menuw.refresh()
! elif event == em.MENU_SUBMENU or event == em.TV_START_RECORDING:
if self.selected.scheduled:
program_display.ProgramDisplay(parent=self, context='recording',
--- 202,211 ----
self.menuw.refresh()
! #elif event == em.MENU_SUBMENU or event == em.TV_START_RECORDING:
! elif event == em.MENU_SUBMENU:
!
! pass
!
! elif event == em.TV_START_RECORDING:
if self.selected.scheduled:
program_display.ProgramDisplay(parent=self, context='recording',
Index: tvmenu.py
===================================================================
RCS file: /cvsroot/freevo/freevo/src/tv/tvmenu.py,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** tvmenu.py 31 Dec 2003 16:10:30 -0000 1.10
--- tvmenu.py 9 Jan 2004 02:10:00 -0000 1.11
***************
*** 10,13 ****
--- 10,17 ----
# -----------------------------------------------------------------------
# $Log$
+ # Revision 1.11 2004/01/09 02:10:00 rshortt
+ # Patch from Matthieu Weber to revive add/edit favorites support from the
+ # TV interface.
+ #
# Revision 1.10 2003/12/31 16:10:30 rshortt
# Make it possible to have a tv mainmenu plugin.
***************
*** 195,199 ****
action=self.view_schedule))
items.append(menu.MenuItem(_('Search Guide'), action=self.show_search))
! # items.append(menu.MenuItem('View Favorites', action=self.show_favorites))
plugins_list = plugin.get('mainmenu_tv')
--- 199,203 ----
action=self.view_schedule))
items.append(menu.MenuItem(_('Search Guide'), action=self.show_search))
! items.append(menu.MenuItem('View Favorites', action=self.show_favorites))
plugins_list = plugin.get('mainmenu_tv')
Index: view_favorites.py
===================================================================
RCS file: /cvsroot/freevo/freevo/src/tv/view_favorites.py,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** view_favorites.py 16 Nov 2003 17:38:48 -0000 1.5
--- view_favorites.py 9 Jan 2004 02:10:00 -0000 1.6
***************
*** 12,15 ****
--- 12,19 ----
# -----------------------------------------------------------------------
# $Log$
+ # Revision 1.6 2004/01/09 02:10:00 rshortt
+ # Patch from Matthieu Weber to revive add/edit favorites support from the
+ # TV interface.
+ #
# Revision 1.5 2003/11/16 17:38:48 dischi
# i18n patch from David Sagnol
***************
*** 44,48 ****
#endif
! import time
import config, record_client, edit_favorite
--- 48,52 ----
#endif
! from time import gmtime, strftime
import config, record_client, edit_favorite
***************
*** 76,80 ****
def __init__(self, parent='osd', text=None, search=None, handler=None,
! left=None, top=None, width=600, height=520, bg_color=None,
fg_color=None, icon=None, border=None, bd_color=None,
bd_width=None):
--- 80,84 ----
def __init__(self, parent='osd', text=None, search=None, handler=None,
! left=None, top=None, width=600, height=400, bg_color=None,
fg_color=None, icon=None, border=None, bd_color=None,
bd_width=None):
***************
*** 94,101 ****
self.internal_h_align = Align.CENTER
! legend = Label(_('Name\tTitle\tChannel\tDOW\tTOD'), self, Align.CENTER)
! items_height = 40
! self.num_shown_items = 7
self.results = ListBox(width=(self.width-2*self.h_margin),
height=self.num_shown_items*items_height,
--- 98,106 ----
self.internal_h_align = Align.CENTER
! #legend = Label(_('Name Title Channel DOW TOD'), self, Align.CENTER)
! #items_height = 40
! items_height = Button('foo').height + 2
! self.num_shown_items = 8
self.results = ListBox(width=(self.width-2*self.h_margin),
height=self.num_shown_items*items_height,
***************
*** 107,114 ****
self.add_child(self.results)
! (result, favorites) = record_client.getFavorites()
! if result:
i = 0
if len(favorites) > self.num_shown_items:
--- 112,127 ----
self.add_child(self.results)
! self.refreshList()
! def refreshList(self):
! (self.result, favorites) = record_client.getFavorites()
! if not self.result:
! errormsg = Label(_('Get favorites failed: %s') % recordings,
! self, Align.CENTER)
! return
!
! if self.result:
i = 0
+ self.results.items = []
if len(favorites) > self.num_shown_items:
***************
*** 122,131 ****
for fav in favorites:
i += 1
! self.results.add_item(text='%s : %s : %s : %s : %s' % \
(fav.name,
fav.title,
! fav.channel_id,
! fav.dow,
! fav.mod),
value=fav)
--- 135,158 ----
for fav in favorites:
i += 1
! if fav.channel == 'ANY':
! chan = 'any channel'
! else:
! chan = fav.channel
! if fav.dow == 'ANY':
! dow = 'any day'
! else:
! week_days = ('Mon', 'Tues', 'Wed', 'Thurs', 'Fri', 'Sat', 'Sun')
! dow = week_days[int(fav.dow)]
! if fav.mod == 'ANY':
! mod = 'any time'
! else:
! mod = strftime(config.TV_TIMEFORMAT, gmtime(fav.mod * 60))
! self.results.add_item(text='%s: %s (%s, %s, %s)' % \
(fav.name,
fav.title,
! #fav.channel_id,
! chan,
! dow,
! mod),
value=fav)
***************
*** 146,152 ****
return self.results.eventhandler(event)
elif event == em.INPUT_ENTER:
! edit_favorite.EditFavorite(parent=self.parent,
! subject=self.results.get_selected_item().value).show()
! # self.destroy()
return
elif event == em.INPUT_EXIT:
--- 173,181 ----
return self.results.eventhandler(event)
elif event == em.INPUT_ENTER:
! subject = self.results.get_selected_item().value
! if subject == ' ': subject = None
! if subject:
! edit_favorite.EditFavorite(parent=self, subject=subject,
! context='favorites').show()
return
elif event == em.INPUT_EXIT:
-------------------------------------------------------
This SF.net email is sponsored by: Perforce Software.
Perforce is the Fast Software Configuration Management System offering
advanced branching capabilities and atomic changes on 50+ platforms.
Free Eval! http://www.perforce.com/perforce/loadprog.html
_______________________________________________
Freevo-cvslog mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freevo-cvslog