def append_genre(self, parent, genre): if genre in useless_genres: return None if synonym_genres.has_key(genre): same_genres = synonym_genres[genre] else: same_genres = [genre] title = genre.encode('utf-8') family_item = LazyContainer(parent, title, genre, self.refresh, self.retrieveItemsForGenre, genres=same_genres, per_page=1) # we will use a specific child items sorter # in order to get the sub-genre containers first def childs_sort(x, y): if x.__class__ == y.__class__: return cmp(x.name, y.name) # same class, we compare the names else: # the IRadioItem is deemed the lowest item class, # other classes are compared by name (as usual) if isinstance(x, IRadioItem): return 1 elif isinstance(y, IRadioItem): return -1 else: return cmp(x.name, y.name) family_item.sorting_method = childs_sort parent.add_child(family_item, external_id=genre) return family_item
def append_genre(self, parent, genre): if genre in useless_genres: return None if synonym_genres.has_key(genre): same_genres = synonym_genres[genre] else: same_genres = [genre] title = genre.encode('utf-8') family_item = LazyContainer(parent, title, genre, self.refresh, self.retrieveItemsForGenre, genres=same_genres, per_page=1) # we will use a specific child items sorter # in order to get the sub-genre containers first def childs_sort(x,y): if x.__class__ == y.__class__: return cmp(x.name,y.name) # same class, we compare the names else: # the IRadioItem is deemed the lowest item class, # other classes are compared by name (as usual) if isinstance(x, IRadioItem): return 1 elif isinstance(y, IRadioItem): return -1 else: return cmp(x.name,y.name) family_item.sorting_method = childs_sort parent.add_child(family_item, external_id=genre) return family_item
def append_genre(self, parent, genre): if genre in useless_genres: return None if genre in synonym_genres: same_genres = synonym_genres[genre] else: same_genres = [genre] title = genre family_item = LazyContainer(parent, title, genre, self.refresh, self.retrieveItemsForGenre, genres=same_genres, per_page=1) # TODO: Use a specific get_child items sorter # in order to get the sub-genre containers first family_item.sorting_method = 'name' parent.add_child(family_item, external_id=genre) return family_item