X-Git-Url: http://git.maemo.org/git/?p=jamaendo;a=blobdiff_plain;f=jamaui%2Fradios.py;h=2068b82cbe3d26c34ea77d5589e15686500fbcef;hp=11c6a075dc776a9958353bd8ca85fcc5f05f1df6;hb=facd2a5710fb05ac80d55ed8e1af8184fb496c02;hpb=ef38e67e9c769af43ed190f810daf8c2e164a125 diff --git a/jamaui/radios.py b/jamaui/radios.py index 11c6a07..2068b82 100644 --- a/jamaui/radios.py +++ b/jamaui/radios.py @@ -25,6 +25,7 @@ import gtk import hildon import jamaendo from playerwindow import open_playerwindow +from albumlist import RadioList class RadiosWindow(hildon.StackableWindow): def __init__(self): @@ -33,39 +34,20 @@ class RadiosWindow(hildon.StackableWindow): # Results list self.panarea = hildon.PannableArea() - self.result_store = gtk.ListStore(str, int) - #self.result_store.append(['red']) - self.result_view = gtk.TreeView(self.result_store) - col = gtk.TreeViewColumn('Name') - self.result_view.append_column(col) - cell = gtk.CellRendererText() - col.pack_start(cell, True) - col.add_attribute(cell, 'text', 0) - self.result_view.set_search_column(0) - col.set_sort_column_id(0) - self.result_view.connect('row-activated', self.row_activated) + self.radiolist = RadioList() + self.radiolist.connect('row-activated', self.row_activated) - self.panarea.add(self.result_view) + self.panarea.add(self.radiolist) self.radios = {} hildon.hildon_gtk_window_set_progress_indicator(self, 1) for item in jamaendo.starred_radios(): self.radios[item.ID] = item - self.result_store.append([self.radio_text(item), item.ID]) + self.radiolist.add_radio(item) hildon.hildon_gtk_window_set_progress_indicator(self, 0) self.add(self.panarea) - def radio_text(self, radio): - if radio.name and radio.idstr: - return "%s (%s)" % (radio.name, radio.idstr) - elif radio.name: - return radio.name - elif radio.idstr: - return radio.idstr - else: - return "Radio #%s" % (radio.ID) - def make_button(self, text, subtext, callback): button = hildon.Button(gtk.HILDON_SIZE_FINGER_HEIGHT, hildon.BUTTON_ARRANGEMENT_VERTICAL) @@ -74,17 +56,11 @@ class RadiosWindow(hildon.StackableWindow): if callback: button.connect('clicked', callback) - #image = gtk.image_new_from_stock(gtk.STOCK_INFO, gtk.ICON_SIZE_BUTTON) - #button.set_image(image) - #button.set_image_position(gtk.POS_RIGHT) - return button def row_activated(self, treeview, path, view_column): - treeiter = self.result_store.get_iter(path) - title, _id = self.result_store.get(treeiter, 0, 1) + _id = self.radiolist.get_radio_id(path) item = self.radios[_id] - #print _id, item self.open_item(item) def open_item(self, item):