Changed TreeView model, set already downloaded podcasts to a different color

git-svn-id: svn://svn.berlios.de/gpodder@8 b0d088ad-0a06-0410-aad2-9ed5178a7e87
This commit is contained in:
Peter Hoffmann 2005-11-22 13:30:28 +00:00
parent 9c5b2e77bf
commit f0b0e90977
2 changed files with 35 additions and 12 deletions

View File

@ -81,11 +81,24 @@ class Gpodder(SimpleGladeApp):
self.comboAvailable.pack_start( cellrenderer, True)
self.comboAvailable.add_attribute( cellrenderer, 'text', 1)
#See http://www.pygtk.org/pygtk2tutorial/sec-CellRenderers.html
#gtk.TreeViewColumn( "", gtk.CellRendererToggle(), active=3),
namecell = gtk.CellRendererText()
namecell.set_property('cell-background', 'white')
namecolumn = gtk.TreeViewColumn( "Episode", namecell, text=1)
namecolumn.add_attribute(namecell, "cell-background", 4)
sizecell = gtk.CellRendererText()
sizecell.set_property('cell-background', 'white')
sizecolumn = gtk.TreeViewColumn( "Size", sizecell, text=2)
sizecolumn.add_attribute(sizecell, "cell-background", 4)
# set up the rendering of the treeAvailable treeview
itemcolumns = [
#gtk.TreeViewColumn( "", gtk.CellRendererToggle(), active=3),
gtk.TreeViewColumn( "Episode", gtk.CellRendererText(), text=1),
gtk.TreeViewColumn( "Size", gtk.CellRendererText(), text=2)
namecolumn,
sizecolumn
]
for itemcolumn in itemcolumns:

View File

@ -39,18 +39,28 @@ class podcastChannel(object):
print "- Channel: \"" + self.title + "\""
for item in self.items:
print "-- Item: \"" + item.title + "\""
def is_downloaded(self, item):
#TODO ist this the right place for this function? if yes move imports to head
import libgpodder
import os
filename = libgpodder.gPodderLib().getPodcastFilename(self, item.url)
return os.path.exists(filename)
def getItemsModel( self):
new_model = gtk.ListStore( gobject.TYPE_STRING, gobject.TYPE_STRING, gobject.TYPE_STRING, gobject.TYPE_BOOLEAN)
new_model = gtk.ListStore( gobject.TYPE_STRING, gobject.TYPE_STRING, gobject.TYPE_STRING, gobject.TYPE_BOOLEAN, gobject.TYPE_STRING)
for item in self.items:
# Skip items with no download url
if item.url != "":
new_iter = new_model.append()
new_model.set( new_iter, 0, item.url)
new_model.set( new_iter, 1, item.title)
new_model.set( new_iter, 2, item.getSize())
new_model.set( new_iter, 3, True)
# Skip items with no download url
if item.url != "":
if self.is_downloaded(item): background_color = "lightgrey"
else: background_color = "white"
new_iter = new_model.append()
new_model.set( new_iter, 0, item.url)
new_model.set( new_iter, 1, item.title)
new_model.set( new_iter, 2, item.getSize())
new_model.set( new_iter, 3, True)
new_model.set( new_iter, 4, background_color)
return new_model