-from GUIComponent import *
+from GUIComponent import GUIComponent
from Tools.FuzzyDate import FuzzyTime
from ServiceReference import ServiceReference
-from Components.MultiContent import MultiContentEntryText, RT_HALIGN_LEFT, RT_HALIGN_RIGHT
+from Components.MultiContent import MultiContentEntryText
-from enigma import eListboxPythonMultiContent, eListbox, gFont, iServiceInformation
-
-from enigma import eServiceReference, eServiceCenter, \
- eServiceCenterPtr, iListableServicePtr, \
- iStaticServiceInformationPtr
+from enigma import eListboxPythonMultiContent, eListbox, gFont, iServiceInformation, \
+ RT_HALIGN_LEFT, RT_HALIGN_RIGHT, eServiceReference, eServiceCenter
class MovieList(GUIComponent):
def __init__(self, root):
self.l.setFont(1, gFont("Regular", 18))
self.l.setFont(2, gFont("Regular", 16))
self.l.setBuildFunc(self.buildMovieListEntry)
+ self.l.setItemHeight(75)
#
# | name of movie |
if serviceref.flags & eServiceReference.mustDescent:
return None
+ if len <= 0: #recalc len when not already done
+ cur_idx = self.l.getCurrentSelectionIndex()
+ x = self.list[cur_idx]
+ len = x[1].getLength(x[0]) #recalc the movie length...
+ self.list[cur_idx] = (x[0], x[1], x[2], len) #update entry in list... so next time we don't need to recalc
+
if len > 0:
len = "%d:%02d" % (len / 60, len % 60)
else:
def postWidgetCreate(self, instance):
instance.setContent(self.l)
- instance.setItemHeight(75)
def reload(self, root = None, filter_tags = None):
if root is not None:
def __len__(self):
return len(self.list)
- def updateLengthOfIndex(self, index):
- if len(self.list) > index:
- x = self.list[index]
- self.list[index] = (x[0], x[1], x[2], x[1].getLength(x[0]))
- self.l.invalidateEntry(index)
-
def load(self, root, filter_tags):
# this lists our root service, then building a
# nice list