summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuo Jinghua <sunmoon1997@gmail.com>2009-12-25 23:12:15 +0800
committerLuo Jinghua <sunmoon1997@gmail.com>2009-12-25 23:12:15 +0800
commit261fe061ebb41db6c100228ff07cf061237dc51d (patch)
treef317bffb87aa648d7cb28616ade97e01488bb704
parent0975b661acfef71ec6de1fd485c99cf0156068c6 (diff)
totem: show number of movie and pages
-rw-r--r--totem/plugin/ppstream.py50
-rw-r--r--totem/plugin/ppstream.ui2
2 files changed, 30 insertions, 22 deletions
diff --git a/totem/plugin/ppstream.py b/totem/plugin/ppstream.py
index 793eb49..f78ca90 100644
--- a/totem/plugin/ppstream.py
+++ b/totem/plugin/ppstream.py
@@ -972,14 +972,13 @@ class PPStream (totem.Plugin):
if not len (treeview):
return
- iter = treeview.get_iter (CATEGORY_FAVORITES)
- treeview.set (iter, 4, len(self.favorites.getMovies()))
+ self.update_category (self.favorites)
if self.films_ids == ():
return
clsid, subclsid = self.films_ids
- if (clsid, subclsid) != (0, 0):
+ if (clsid, subclsid) != (CATEGORY_ID_FAVORITES, 0):
return
self.films_ids = ()
@@ -1065,9 +1064,7 @@ class PPStream (totem.Plugin):
if not len (liststore):
return
- iter = liststore.get_iter (CATEGORY_RECENT)
- liststore.set (iter, 4, len(self.recent.getMovies()))
- #print 'recent num: ', self.recent.contentnum
+ self.update_category (self.recent)
def refresh_recent (self):
self.refresh_recent_num ()
@@ -1087,32 +1084,52 @@ class PPStream (totem.Plugin):
self.clear_pages (treeview_name)
for cls in self.classes:
iter = treeview.append(None)
- num = len(cls.getPage(self.films_page))
+ s = '%d/%d' % (len(cls.getMovies()), cls.getMaxPage())
treeview.set(iter,
0, cls.id,
1, 0,
2, 0,
3, cls.title,
- 4, num)
+ 4, s)
cls.model_path = treeview.get_path(iter)
def fill_categories (self, clsid):
treeview_name = 'categories'
treeview = self.liststore[treeview_name]
+
+ cls = None
for cls in self.ppslist.getClasses():
if cls.id == clsid:
break
- num = len(cls.getPages())
+ if not cls:
+ return
+
+ s = '%d/%d' % (len(cls.getMovies()), cls.getMaxPage())
iter = treeview.append(None)
treeview.set(iter,
0, cls.id,
1, 0,
2, 0,
3, cls.title,
- 4, num)
+ 4, s)
cls.model_path = treeview.get_path(iter)
#print cls.id, cls.title
+ def update_category (self, cls):
+ treeview_name = 'categories'
+ liststore = self.liststore[treeview_name]
+ iter = liststore.get_iter (cls.model_path)
+ s = '%d/%d' % (len(cls.getMovies()), cls.getMaxPage())
+ liststore.set (iter, 4, s)
+
+ def update_current_category (self):
+ if not self.films_ids:
+ return
+ cls, subcls = self.get_class_pair(*self.films_ids)
+ if not subcls:
+ subcls = cls
+ self.update_category (subcls)
+
def gettipfromfilm (self, film):
tip = film.title
if film.director:
@@ -1238,10 +1255,7 @@ class PPStream (totem.Plugin):
for film in subcls.getPage(self.films_page):
self.storelist_append_film (liststore, film, clsid, subclsid)
- treeview_name = 'categories'
- liststore = self.liststore[treeview_name]
- iter = liststore.get_iter (subcls.model_path)
- liststore.set (iter, 4, len(subcls.getPages()))
+ self.update_category (subcls)
def fill_films (self, films, clsid, subclsid):
if self.films_ids != (clsid, subclsid):
@@ -1251,13 +1265,7 @@ class PPStream (totem.Plugin):
for film in films:
self.storelist_append_film (liststore, film, clsid, subclsid)
- treeview_name = 'categories'
- liststore = self.liststore[treeview_name]
- cls, subcls = self.get_class_pair(clsid, subclsid)
- if not subcls:
- subcls = cls
- iter = liststore.get_iter (subcls.model_path)
- liststore.set (iter, 4, len(subcls.getPages()))
+ self.update_current_category ()
def refetch_films (self, clsid = None, subclsid = None):
if clsid is None and subclsid is None:
diff --git a/totem/plugin/ppstream.ui b/totem/plugin/ppstream.ui
index 82e4738..6942f90 100644
--- a/totem/plugin/ppstream.ui
+++ b/totem/plugin/ppstream.ui
@@ -13,7 +13,7 @@
<!-- column-name Title -->
<column type="gchararray"/>
<!-- column-name Content -->
- <column type="gint"/>
+ <column type="gchararray"/>
</columns>
</object>
<object class="GtkListStore" id="pps_liststore_files">