aboutsummaryrefslogtreecommitdiff
path: root/lib/python/Components/MovieList.py
diff options
context:
space:
mode:
authorStefan Pluecken <stefan.pluecken@multimedia-labs.de>2006-04-03 08:12:07 +0000
committerStefan Pluecken <stefan.pluecken@multimedia-labs.de>2006-04-03 08:12:07 +0000
commit2cacfb04d1bff4047534b63618c3744346f65fd5 (patch)
tree5d5057dc47f9daaa50a17dee1838322cc4afac50 /lib/python/Components/MovieList.py
parentaf5dfb0ec911f152f909530cf29c9e2ba74e2c1f (diff)
downloadenigma2-2cacfb04d1bff4047534b63618c3744346f65fd5.tar.gz
enigma2-2cacfb04d1bff4047534b63618c3744346f65fd5.zip
faster loading of movie list (done by initially not loading the file length and updating the file lengths after displaying the list in the background
(timer driven))
Diffstat (limited to 'lib/python/Components/MovieList.py')
-rw-r--r--lib/python/Components/MovieList.py15
1 files changed, 13 insertions, 2 deletions
diff --git a/lib/python/Components/MovieList.py b/lib/python/Components/MovieList.py
index a921b8df..681dec2b 100644
--- a/lib/python/Components/MovieList.py
+++ b/lib/python/Components/MovieList.py
@@ -13,7 +13,7 @@ from enigma import eServiceReference, eServiceCenter, \
#
# | name of movie |
#
-def MovieListEntry(serviceref, serviceHandler):
+def MovieListEntry(serviceref, serviceHandler, withLength = False):
if serviceref.flags & eServiceReference.mustDescent:
return None
@@ -23,7 +23,10 @@ def MovieListEntry(serviceref, serviceHandler):
# ignore service which refuse to info
return None
- len = info.getLength(serviceref)
+ if withLength:
+ len = info.getLength(serviceref)
+ else:
+ len = 0
if len > 0:
len = "%d:%02d" % (len / 60, len % 60)
else:
@@ -91,6 +94,14 @@ class MovieList(HTMLComponent, GUIComponent):
self.list.remove(l)
self.l.setList(self.list)
+ def __len__(self):
+ return len(self.list)
+
+ def updateLengthOfIndex(self, index):
+ serviceHandler = eServiceCenter.getInstance()
+ self.list[index] = MovieListEntry(self.list[index][0][0], serviceHandler, True)
+ self.l.invalidateEntry(index)
+
def load(self, root):
# this lists our root service, then building a
# nice list