def _update_radio_tree(self): logging.info("in update radio") self.clear_tree() self.radio_folder = RadioFolder() files = self.radio_folder.get_radio_FPLs() def task(): for fpl in files: parent = FModel(fpl.name).add_is_file(False) self.append(parent) for radio, urls in fpl.urls_dict.iteritems(): child = FModel( radio, urls[0]).parent(parent).add_type(FTYPE_RADIO) self.append(child) self.auto_add_user_station() FC().cache_radio_tree_beans = self.get_all_beans() self.is_radio_populated = True gobject.idle_add(task)