def __ejecutar_agregar_elemento(self, elementos): """ Agrega los items a la lista, uno a uno, actualizando. """ if not elementos: self.permitir_select = True self.seleccionar_primero() self.get_toplevel().set_sensitive(True) return False texto, path = elementos[0] descripcion = describe_uri(path) pixbuf = "" icono = None if descripcion: if descripcion[2]: # Es un Archivo tipo = describe_archivo(path) if 'video' in tipo or 'application/ogg' in tipo: icono = os.path.join(BASE_PATH, "Iconos", "video.svg") pixbuf = gdk.pixbuf_new_from_file_at_size( icono, 24, -1) elif 'audio' in tipo or \ 'application/octet-stream' in tipo: icono = os.path.join(BASE_PATH, "Iconos", "sonido.svg") pixbuf = gdk.pixbuf_new_from_file_at_size( icono, 24, -1) else: icono = path if "image" in tipo: pixbuf = gdk.pixbuf_new_from_file_at_size( icono, 50, -1) else: try: pixbuf = gdk.pixbuf_new_from_file_at_size( icono, 24, -1) except: icono = os.path.join(BASE_PATH, "Iconos", "sonido.svg") pixbuf = gdk.pixbuf_new_from_file_at_size( icono, 24, -1) else: icono = os.path.join(BASE_PATH, "Iconos", "sonido.svg") pixbuf = gdk.pixbuf_new_from_file_at_size( icono, 24, -1) self.get_model().append([pixbuf, texto, path]) elementos.remove(elementos[0]) gobject.idle_add(self.__ejecutar_agregar_elemento, elementos) return False
def __ejecutar_agregar_elemento(self, elementos): """ Agrega los items a la lista, uno a uno, actualizando. """ if not elementos: self.permitir_select = True self.seleccionar_primero() self.get_toplevel().set_sensitive(True) return False texto, path = elementos[0] descripcion = describe_uri(path) pixbuf = "" icono = None if descripcion: if descripcion[2]: # Es un Archivo tipo = describe_archivo(path) if 'video' in tipo or 'application/ogg' in tipo: icono = os.path.join(BASE_PATH, "Iconos", "video.svg") pixbuf = gtk.gdk.pixbuf_new_from_file_at_size( icono, 24, -1) elif 'audio' in tipo or 'application/octet-stream' in tipo: icono = os.path.join(BASE_PATH, "Iconos", "sonido.svg") pixbuf = gtk.gdk.pixbuf_new_from_file_at_size( icono, 24, -1) else: icono = path if "image" in tipo: pixbuf = gtk.gdk.pixbuf_new_from_file_at_size( icono, 50, -1) else: try: pixbuf = gtk.gdk.pixbuf_new_from_file_at_size( icono, 24, -1) except: icono = os.path.join(BASE_PATH, "Iconos", "sonido.svg") pixbuf = gtk.gdk.pixbuf_new_from_file_at_size( icono, 24, -1) else: icono = os.path.join(BASE_PATH, "Iconos", "sonido.svg") pixbuf = gtk.gdk.pixbuf_new_from_file_at_size(icono, 24, -1) else: icono = os.path.join(BASE_PATH, "Iconos", "sonido.svg") pixbuf = gtk.gdk.pixbuf_new_from_file_at_size(icono, 24, -1) self.get_model().append([pixbuf, texto, path]) elementos.remove(elementos[0]) gobject.idle_add(self.__ejecutar_agregar_elemento, elementos) return False
def __cargar_lista(self, widget, indice): """ Recibe el indice seleccionado en el menu de toolbarlist y carga la lista correspondiente. Esto es solo para JAMedia no embebido ya que cuando JAMedia esta embebida, no posee la toolbarlist. """ model, iter = self.lista_de_reproduccion.get_selection().get_selected() ultimopath = False if model and iter: valor = model.get_value(iter, 2) if valor: from Globales import describe_uri descripcion = describe_uri(valor) if descripcion: if descripcion[2]: ultimopath = valor map(self.__ocultar, [ self.toolbar_accion, self.toolbaraddstream]) self.toolbar_list.boton_agregar.hide() from Globales import get_data_directory from Globales import get_my_files_directory from Globales import get_tube_directory from Globales import get_audio_directory from Globales import get_video_directory if indice == 0: archivo = os.path.join( get_data_directory(), 'JAMediaRadio.JAMedia') self.__seleccionar_lista_de_stream(archivo, "JAM-Radio") elif indice == 1: # HACK: Tv no funciona con JAMediaReproductor. #if self.player == self.jamediareproductor: # self.switch_reproductor(None, "MplayerReproductor") archivo = os.path.join( get_data_directory(), 'JAMediaTV.JAMedia') self.__seleccionar_lista_de_stream(archivo, "JAM-TV") elif indice == 2: archivo = os.path.join( get_data_directory(), 'MisRadios.JAMedia') self.__seleccionar_lista_de_stream(archivo, "Radios") self.toolbar_list.boton_agregar.show() elif indice == 3: # HACK: Tv no funciona con JAMediaReproductor. #if self.player == self.jamediareproductor: # self.switch_reproductor(None, "MplayerReproductor") archivo = os.path.join( get_data_directory(), 'MisTvs.JAMedia') self.__seleccionar_lista_de_stream(archivo, "TVs") self.toolbar_list.boton_agregar.show() elif indice == 4: # HACK: Tv no funciona con JAMediaReproductor. #if self.player == self.jamediareproductor: # self.switch_reproductor(None, "MplayerReproductor") archivo = os.path.join( get_data_directory(), 'JAMediaWebCams.JAMedia') self.__seleccionar_lista_de_stream(archivo, "WebCams") #self.toolbar_list.boton_agregar.show() elif indice == 5: self.__seleccionar_lista_de_archivos( get_my_files_directory(), "Archivos") elif indice == 6: self.__seleccionar_lista_de_archivos( get_tube_directory(), "JAM-Tube") elif indice == 7: self.__seleccionar_lista_de_archivos( get_audio_directory(), "JAM-Audio") elif indice == 8: self.__seleccionar_lista_de_archivos( get_video_directory(), "JAM-Video") elif indice == 9: from Widgets import My_FileChooser directorio = None if ultimopath: directorio = "file://%s" % os.path.dirname(ultimopath) selector = My_FileChooser( parent=self.get_toplevel(), action=Gtk.FileChooserAction.OPEN, mime=["audio/*", "video/*"], title="Abrir Archivos.", path=directorio, filter=[]) selector.connect( 'archivos-seleccionados', self.__cargar_directorio) selector.run() if selector: selector.destroy()
def __cargar_lista(self, widget, indice): """ Recibe el indice seleccionado en el menu de toolbarlist y carga la lista correspondiente. Esto es solo para JAMedia no embebido ya que cuando JAMedia esta embebida, no posee la toolbarlist. """ model, iter = self.lista_de_reproduccion.get_selection().get_selected() ultimopath = False if model and iter: valor = model.get_value(iter, 2) if valor: from Globales import describe_uri descripcion = describe_uri(valor) if descripcion: if descripcion[2]: ultimopath = valor map(self.__ocultar, [self.toolbar_accion, self.toolbaraddstream]) self.toolbar_list.boton_agregar.hide() from Globales import get_data_directory from Globales import get_my_files_directory from Globales import get_tube_directory from Globales import get_audio_directory from Globales import get_video_directory if indice == 0: archivo = os.path.join(get_data_directory(), 'JAMediaRadio.JAMedia') self.__seleccionar_lista_de_stream(archivo, "JAM-Radio") elif indice == 1: # HACK: Tv no funciona con JAMediaReproductor. #if self.player == self.jamediareproductor: # self.switch_reproductor(None, "MplayerReproductor") archivo = os.path.join(get_data_directory(), 'JAMediaTV.JAMedia') self.__seleccionar_lista_de_stream(archivo, "JAM-TV") elif indice == 2: archivo = os.path.join(get_data_directory(), 'MisRadios.JAMedia') self.__seleccionar_lista_de_stream(archivo, "Radios") self.toolbar_list.boton_agregar.show() elif indice == 3: # HACK: Tv no funciona con JAMediaReproductor. #if self.player == self.jamediareproductor: # self.switch_reproductor(None, "MplayerReproductor") archivo = os.path.join(get_data_directory(), 'MisTvs.JAMedia') self.__seleccionar_lista_de_stream(archivo, "TVs") self.toolbar_list.boton_agregar.show() elif indice == 4: # HACK: Tv no funciona con JAMediaReproductor. #if self.player == self.jamediareproductor: # self.switch_reproductor(None, "MplayerReproductor") archivo = os.path.join(get_data_directory(), 'JAMediaWebCams.JAMedia') self.__seleccionar_lista_de_stream(archivo, "WebCams") #self.toolbar_list.boton_agregar.show() elif indice == 5: self.__seleccionar_lista_de_archivos(get_my_files_directory(), "Archivos") elif indice == 6: self.__seleccionar_lista_de_archivos(get_tube_directory(), "JAM-Tube") elif indice == 7: self.__seleccionar_lista_de_archivos(get_audio_directory(), "JAM-Audio") elif indice == 8: self.__seleccionar_lista_de_archivos(get_video_directory(), "JAM-Video") elif indice == 9: from Widgets import My_FileChooser directorio = None if ultimopath: directorio = "file://%s" % os.path.dirname(ultimopath) selector = My_FileChooser(parent=self.get_toplevel(), action=Gtk.FileChooserAction.OPEN, mime=["audio/*", "video/*"], title="Abrir Archivos.", path=directorio, filter=[]) selector.connect('archivos-seleccionados', self.__cargar_directorio) selector.run() if selector: selector.destroy()