def __realizar_accion(self, widget): """ Ejecuta una accion sobre un archivo o streaming en la lista de reprucción cuando el usuario confirma. """ from Globales import get_my_files_directory from Globales import describe_acceso_uri from Globales import copiar from Globales import borrar from Globales import mover uri = self.lista.get_model().get_value(self.iter, 2) if describe_acceso_uri(uri): if self.accion == "Quitar": self.lista.get_model().remove(self.iter) elif self.accion == "Copiar": if os.path.isfile(uri): copiar(uri, get_my_files_directory()) elif self.accion == "Borrar": if os.path.isfile(uri): if borrar(uri): self.lista.get_model().remove(self.iter) elif self.accion == "Mover": if os.path.isfile(uri): if mover(uri, get_my_files_directory()): self.lista.get_model().remove(self.iter) else: if self.accion == "Quitar": self.lista.get_model().remove(self.iter) elif self.accion == "Borrar": self.emit("accion-stream", "Borrar", uri) self.lista.get_model().remove(self.iter) elif self.accion == "Copiar": self.emit("accion-stream", "Copiar", uri) elif self.accion == "Mover": self.emit("accion-stream", "Mover", uri) self.lista.get_model().remove(self.iter) elif self.accion == "Grabar": self.emit("Grabar", uri) self.label.set_text("") self.lista = None self.accion = None self.iter = None self.hide()
def __grabar(self, widget, uri): self.set_sensitive(False) self.__detener_grabacion() tipo = "video" label = self.base_panel.derecha.lista.toolbar.label.get_text() if label == "JAM-TV" or label == "TVs" or label == "WebCams": tipo = "video" else: tipo = "audio" hora = time.strftime("%H-%M-%S") fecha = str(datetime.date.today()) archivo = "%s-%s" % (fecha, hora) archivo = os.path.join(get_my_files_directory(), archivo) self.grabador = JAMediaGrabador(uri, archivo, tipo) self.grabador.connect('update', self.__update_grabador) self.grabador.connect('endfile', self.__detener_grabacion) self.grabador.start() self.grabador.play() #_thread = threading.Thread(target=self.grabador.play) #_thread.start() self.set_sensitive(True)
def play(self, name): import time import datetime hora = time.strftime("%H-%M-%S") fecha = str(datetime.date.today()) from Globales import get_my_files_directory archivo = "%s-%s-%s.%s" % ( name.replace(" ", "_"), fecha, hora, self.formato) self.patharchivo = os.path.join( get_my_files_directory(), archivo) self.archivo.set_property( "location", self.patharchivo) if not self.estado == gst.STATE_PLAYING: self.estado = gst.STATE_PLAYING self.emit("estado", "playing") self.pipeline.set_state(gst.STATE_PLAYING) self.__new_handle(True)
def __grabar(self, widget, uri): self.set_sensitive(False) self.__detener_grabacion() tipo = "video" label = self.base_panel.derecha.lista.toolbar.label.get_text() if label == "JAM-TV" or label == "TVs" or label == "WebCams": tipo = "video" else: tipo = "audio" hora = time.strftime("%H-%M-%S") fecha = str(datetime.date.today()) archivo = "%s-%s" % (fecha, hora) archivo = os.path.join(get_my_files_directory(), archivo) self.grabador = JAMediaGrabador(uri, archivo, tipo) self.grabador.connect('update', self.__update_grabador) self.grabador.connect('endfile', self.__detener_grabacion) _thread = threading.Thread(target=self.grabador.play) _thread.start() self.set_sensitive(True)
def __realizar_accion(self, widget): """ Ejecuta una accion sobre un archivo o streaming en la lista. """ uri = self.lista.get_model().get_value(self.iter, 2) if self.accion == "Quitar": path = self.lista.get_model().get_path(self.iter) path = (path[0] - 1, ) self.lista.get_model().remove(self.iter) self.__reselect(path) else: if describe_acceso_uri(uri): if self.accion == "Copiar": if os.path.isfile(uri): copiar(uri, get_my_files_directory()) elif self.accion == "Borrar": if os.path.isfile(uri): if borrar(uri): path = self.lista.get_model().get_path(self.iter) path = (path[0] - 1, ) self.lista.get_model().remove(self.iter) self.__reselect(path) elif self.accion == "Mover": if os.path.isfile(uri): if mover(uri, get_my_files_directory()): path = self.lista.get_model().get_path(self.iter) path = (path[0] - 1, ) self.lista.get_model().remove(self.iter) self.__reselect(path) else: if self.accion == "Borrar": self.emit("accion-stream", "Borrar", uri) path = self.lista.get_model().get_path(self.iter) path = (path[0] - 1, ) self.lista.get_model().remove(self.iter) self.__reselect(path) elif self.accion == "Copiar": self.emit("accion-stream", "Copiar", uri) elif self.accion == "Mover": self.emit("accion-stream", "Mover", uri) path = self.lista.get_model().get_path(self.iter) path = (path[0] - 1, ) self.lista.get_model().remove(self.iter) self.__reselect(path) elif self.accion == "Grabar": self.emit("grabar", uri) self.cancelar()
def cargar_lista(self, widget, indice): _dict = { 0: os.path.join(get_data_directory(), 'JAMediaRadio.JAMedia'), 1: os.path.join(get_data_directory(), 'JAMediaTV.JAMedia'), 2: os.path.join(get_data_directory(), 'MisRadios.JAMedia'), 3: os.path.join(get_data_directory(), 'MisTvs.JAMedia'), 4: os.path.join(get_data_directory(), 'JAMediaWebCams.JAMedia'), 5: get_my_files_directory(), 6: get_tube_directory(), 7: get_audio_directory(), 8: get_video_directory(), } ocultar(self.toolbar.boton_agregar) if indice == 0: self.__seleccionar_lista_de_stream(_dict[0], "JAM-Radio") elif indice == 1: self.__seleccionar_lista_de_stream(_dict[1], "JAM-TV") elif indice == 2: self.__seleccionar_lista_de_stream(_dict[2], "Radios") mostrar(self.toolbar.boton_agregar) elif indice == 3: self.__seleccionar_lista_de_stream(_dict[3], "TVs") mostrar(self.toolbar.boton_agregar) elif indice == 4: self.__seleccionar_lista_de_stream(_dict[4], "WebCams") elif indice == 5: self.__seleccionar_lista_de_archivos(_dict[indice], "Archivos") elif indice == 6: self.__seleccionar_lista_de_archivos(_dict[indice], "JAM-Tube") elif indice == 7: self.__seleccionar_lista_de_archivos(_dict[indice], "JAM-Audio") elif indice == 8: self.__seleccionar_lista_de_archivos(_dict[indice], "JAM-Video") elif indice == 9: selector = My_FileChooser(parent=self.get_toplevel(), filter_type=[], action=gtk.FILE_CHOOSER_ACTION_OPEN, mime=self.mime, title="Abrir Archivos", path=self.directorio) selector.connect('load-files', self.__load_files, "Archivos") selector.run() if selector: selector.destroy()
def __init__(self, widget, boton, pos, tiempo, path, modelo): gtk.Menu.__init__(self) _iter = modelo.get_iter(path) uri = modelo.get_value(_iter, 2) quitar = gtk.MenuItem("Quitar de la Lista") self.append(quitar) quitar.connect_object("activate", self.__set_accion, widget, path, "Quitar") my_files_directory = get_my_files_directory() permisos = describe_acceso_uri(uri) if permisos: lectura, escritura, ejecucion = permisos if lectura and os.path.dirname(uri) != my_files_directory: copiar = gtk.MenuItem("Copiar a JAMedia") self.append(copiar) copiar.connect_object("activate", self.__set_accion, widget, path, "Copiar") if escritura and os.path.dirname(uri) != my_files_directory: mover = gtk.MenuItem("Mover a JAMedia") self.append(mover) mover.connect_object("activate", self.__set_accion, widget, path, "Mover") if escritura: borrar = gtk.MenuItem("Borrar el Archivo") self.append(borrar) borrar.connect_object("activate", self.__set_accion, widget, path, "Borrar") #tipo = describe_archivo(uri) #if "audio" in tipo or "video" in tipo or \ # "application/ogg" in tipo or \ # 'application/octet-stream' in tipo: # editar = gtk.MenuItem("Editar o Convertir Archivo") # self.append(editar) # editar.connect_object("activate", self.__set_accion, # widget, path, "Editar") self.show_all() self.attach_to_widget(widget, self.__null)
def __grabar_streaming(self, widget, uri): """ Se ha confirmado grabar desde un streaming en la toolbar_accion. """ if not self.player: return self.get_toplevel().set_sensitive(False) self.__detener_grabacion() tipo = "video" if "TV" in self.toolbar_list.label.get_text() or \ "Tv" in self.toolbar_list.label.get_text(): tipo = "video" else: tipo = "audio" import time import datetime hora = time.strftime("%H-%M-%S") fecha = str(datetime.date.today()) from Globales import get_my_files_directory archivo = "%s-%s" % (fecha, hora) archivo = os.path.join(get_my_files_directory(), archivo) if self.player == self.jamediareproductor: self.grabador = JAMediaGrabador(uri, archivo, tipo) elif self.player == self.mplayerreproductor: self.grabador = MplayerGrabador(uri, archivo, tipo) self.grabador.connect('update', self.__update_grabador) self.grabador.connect('endfile', self.__detener_grabacion) self.get_toplevel().set_sensitive(True)
def cargar_lista(self, widget, indice): data = get_data_directory() _dict = { 0: os.path.join(data, 'JAMediaRadio.JAMedia'), 1: os.path.join(data, 'JAMediaTV.JAMedia'), 2: os.path.join(data, 'MisRadios.JAMedia'), 3: os.path.join(data, 'MisTvs.JAMedia'), 4: os.path.join(data, 'JAMediaWebCams.JAMedia'), 5: get_my_files_directory(), 6: get_tube_directory(), 7: get_audio_directory(), 8: get_video_directory(), } ocultar(self.toolbar.boton_agregar) if indice == 0: self.__seleccionar_lista_de_stream(_dict[0], "JAM-Radio") elif indice == 1: self.__seleccionar_lista_de_stream(_dict[1], "JAM-TV") elif indice == 2: self.__seleccionar_lista_de_stream(_dict[2], "Radios") mostrar(self.toolbar.boton_agregar) elif indice == 3: self.__seleccionar_lista_de_stream(_dict[3], "TVs") mostrar(self.toolbar.boton_agregar) elif indice == 4: self.__seleccionar_lista_de_stream(_dict[4], "WebCams") elif indice == 5: self.__seleccionar_lista_de_archivos(_dict[indice], "Archivos") elif indice == 6: self.__seleccionar_lista_de_archivos(_dict[indice], "JAM-Tube") elif indice == 7: self.__seleccionar_lista_de_archivos(_dict[indice], "JAM-Audio") elif indice == 8: self.__seleccionar_lista_de_archivos(_dict[indice], "JAM-Video") elif indice == 9: selector = My_FileChooser(parent=self.get_toplevel(), filter_type=[], action=gtk.FILE_CHOOSER_ACTION_OPEN, mime=self.mime, title="Abrir Archivos", path=self.directorio) selector.connect('load-files', self.__load_files, "Archivos") selector.run() if selector: selector.destroy()
def __grabar_streaming(self, widget, uri): """ Se ha confirmado grabar desde un streaming en la toolbar_accion. """ self.get_toplevel().set_sensitive(False) self.__detener_grabacion() tipo = "video" label = self.toolbar_list.label.get_text() if label == "JAM-TV" or \ label == "TVs" or \ label == "WebCams": tipo = "video" else: tipo = "audio" import time import datetime hora = time.strftime("%H-%M-%S") fecha = str(datetime.date.today()) from Globales import get_my_files_directory archivo = "%s-%s" % (fecha, hora) archivo = os.path.join(get_my_files_directory(), archivo) self.grabador = JAMediaGrabador(uri, archivo, tipo) self.grabador.connect('update', self.__update_grabador) self.grabador.connect('endfile', self.__detener_grabacion) self.get_toplevel().set_sensitive(True)
def __init__(self, widget, boton, pos, tiempo, path, modelo): gtk.Menu.__init__(self) _iter = modelo.get_iter(path) uri = modelo.get_value(_iter, 2) quitar = gtk.MenuItem("Quitar de la Lista") self.append(quitar) quitar.connect_object("activate", self.__set_accion, widget, path, "Quitar") my_files_directory = get_my_files_directory() if describe_acceso_uri(uri): tipo = describe_archivo(uri) lectura, escritura, ejecucion = describe_acceso_uri(uri) if lectura and os.path.dirname(uri) != my_files_directory: copiar = gtk.MenuItem("Copiar a JAMedia") self.append(copiar) copiar.connect_object("activate", self.__set_accion, widget, path, "Copiar") if escritura and os.path.dirname(uri) != my_files_directory: mover = gtk.MenuItem("Mover a JAMedia") self.append(mover) mover.connect_object("activate", self.__set_accion, widget, path, "Mover") if escritura: borrar = gtk.MenuItem("Borrar el Archivo") self.append(borrar) borrar.connect_object("activate", self.__set_accion, widget, path, "Borrar") if "audio" in tipo or "video" in tipo or "application/ogg" in tipo: editar = gtk.MenuItem("Editar o Convertir Archivo") self.append(editar) editar.connect_object("activate", self.__set_accion, widget, path, "Editar") #else: # borrar = gtk.MenuItem("Borrar Streaming") # self.append(borrar) # borrar.connect_object("activate", self.__set_accion, # widget, path, "Borrar") # data_directory = get_data_directory() # listas = [ # os.path.join(data_directory, "JAMediaTV.JAMedia"), # os.path.join(data_directory, "JAMediaRadio.JAMedia"), # os.path.join(data_directory, "MisRadios.JAMedia"), # os.path.join(data_directory, "MisTvs.JAMedia") # ] # if (stream_en_archivo(uri, listas[0]) and \ # not stream_en_archivo(uri, listas[3])) or \ # (stream_en_archivo(uri, listas[1]) and \ # not stream_en_archivo(uri, listas[2])): # copiar = gtk.MenuItem("Copiar a JAMedia") # self.append(copiar) # copiar.connect_object("activate", self.__set_accion, # widget, path, "Copiar") # mover = gtk.MenuItem("Mover a JAMedia") # self.append(mover) # mover.connect_object("activate", self.__set_accion, # widget, path, "Mover") # grabar = gtk.MenuItem("Grabar") # self.append(grabar) # grabar.connect_object("activate", self.__set_accion, # widget, path, "Grabar") self.show_all() self.attach_to_widget(widget, self.__null)
def __init__(self, widget, boton, pos, tiempo, path, modelo): Gtk.Menu.__init__(self) iter = modelo.get_iter(path) uri = modelo.get_value(iter, 2) quitar = Gtk.MenuItem("Quitar de la Lista") self.append(quitar) quitar.connect_object("activate", self.__set_accion, widget, path, "Quitar") from Globales import describe_acceso_uri from Globales import get_my_files_directory from Globales import get_data_directory from Globales import stream_en_archivo if describe_acceso_uri(uri): lectura, escritura, ejecucion = describe_acceso_uri(uri) if lectura and os.path.dirname(uri) != get_my_files_directory(): copiar = Gtk.MenuItem("Copiar a JAMedia") self.append(copiar) copiar.connect_object("activate", self.__set_accion, widget, path, "Copiar") if escritura and os.path.dirname(uri) != get_my_files_directory(): mover = Gtk.MenuItem("Mover a JAMedia") self.append(mover) mover.connect_object("activate", self.__set_accion, widget, path, "Mover") if escritura: borrar = Gtk.MenuItem("Borrar el Archivo") self.append(borrar) borrar.connect_object("activate", self.__set_accion, widget, path, "Borrar") else: borrar = Gtk.MenuItem("Borrar Streaming") self.append(borrar) borrar.connect_object("activate", self.__set_accion, widget, path, "Borrar") listas = [ os.path.join(get_data_directory(), "JAMediaTV.JAMedia"), os.path.join(get_data_directory(), "JAMediaRadio.JAMedia"), os.path.join(get_data_directory(), "MisRadios.JAMedia"), os.path.join(get_data_directory(), "MisTvs.JAMedia") ] if (stream_en_archivo(uri, listas[0]) and \ not stream_en_archivo(uri, listas[3])) or \ (stream_en_archivo(uri, listas[1]) and \ not stream_en_archivo(uri, listas[2])): copiar = Gtk.MenuItem("Copiar a JAMedia") self.append(copiar) copiar.connect_object("activate", self.__set_accion, widget, path, "Copiar") mover = Gtk.MenuItem("Mover a JAMedia") self.append(mover) mover.connect_object("activate", self.__set_accion, widget, path, "Mover") grabar = Gtk.MenuItem("Grabar") self.append(grabar) grabar.connect_object("activate", self.__set_accion, widget, path, "Grabar") self.show_all() self.attach_to_widget(widget, self.__null)
def __init__(self, widget, boton, pos, tiempo, path, modelo): gtk.Menu.__init__(self) _iter = modelo.get_iter(path) uri = modelo.get_value(_iter, 2) quitar = gtk.MenuItem("Quitar de la Lista") self.append(quitar) quitar.connect_object("activate", self.__set_accion, widget, path, "Quitar") my_files_directory = get_my_files_directory() if describe_acceso_uri(uri): tipo = describe_archivo(uri) lectura, escritura, ejecucion = describe_acceso_uri(uri) if lectura and os.path.dirname(uri) != my_files_directory: copiar = gtk.MenuItem("Copiar a JAMedia") self.append(copiar) copiar.connect_object("activate", self.__set_accion, widget, path, "Copiar") if escritura and os.path.dirname(uri) != my_files_directory: mover = gtk.MenuItem("Mover a JAMedia") self.append(mover) mover.connect_object("activate", self.__set_accion, widget, path, "Mover") if escritura: borrar = gtk.MenuItem("Borrar el Archivo") self.append(borrar) borrar.connect_object("activate", self.__set_accion, widget, path, "Borrar") #if "audio" in tipo or "video" in tipo or "application/ogg" in tipo: # editar = gtk.MenuItem("Editar o Convertir Archivo") # self.append(editar) # editar.connect_object("activate", self.__set_accion, # widget, path, "Editar") #else: # borrar = gtk.MenuItem("Borrar Streaming") # self.append(borrar) # borrar.connect_object("activate", self.__set_accion, # widget, path, "Borrar") # data_directory = get_data_directory() # listas = [ # os.path.join(data_directory, "JAMediaTV.JAMedia"), # os.path.join(data_directory, "JAMediaRadio.JAMedia"), # os.path.join(data_directory, "MisRadios.JAMedia"), # os.path.join(data_directory, "MisTvs.JAMedia") # ] # if (stream_en_archivo(uri, listas[0]) and \ # not stream_en_archivo(uri, listas[3])) or \ # (stream_en_archivo(uri, listas[1]) and \ # not stream_en_archivo(uri, listas[2])): # copiar = gtk.MenuItem("Copiar a JAMedia") # self.append(copiar) # copiar.connect_object("activate", self.__set_accion, # widget, path, "Copiar") # mover = gtk.MenuItem("Mover a JAMedia") # self.append(mover) # mover.connect_object("activate", self.__set_accion, # widget, path, "Mover") # grabar = gtk.MenuItem("Grabar") # self.append(grabar) # grabar.connect_object("activate", self.__set_accion, # widget, path, "Grabar") self.show_all() self.attach_to_widget(widget, self.__null)
def __realizar_accion(self, widget): """ Ejecuta una accion sobre un archivo o streaming en la lista de reprucción cuando el usuario confirma. """ uri = self.lista.get_model().get_value(self.iter, 2) if self.accion == "Quitar": path = self.lista.get_model().get_path(self.iter) path = (path[0] - 1, ) self.lista.get_model().remove(self.iter) self.__reselect(path) else: if describe_acceso_uri(uri): if self.accion == "Copiar": if os.path.isfile(uri): copiar(uri, get_my_files_directory()) elif self.accion == "Borrar": if os.path.isfile(uri): if borrar(uri): path = self.lista.get_model().get_path(self.iter) path = (path[0] - 1, ) self.lista.get_model().remove(self.iter) self.__reselect(path) elif self.accion == "Mover": if os.path.isfile(uri): if mover(uri, get_my_files_directory()): path = self.lista.get_model().get_path(self.iter) path = (path[0] - 1, ) self.lista.get_model().remove(self.iter) self.__reselect(path) #Streaming no se usan en JAMediaVideo #else: # if self.accion == "Quitar": # path = self.lista.get_model().get_path(self.iter) # path = (path[0] - 1, ) # self.lista.get_model().remove(self.iter) # self.__reselect(path) # elif self.accion == "Borrar": # self.emit("accion-stream", "Borrar", uri) # path = self.lista.get_model().get_path(self.iter) # path = (path[0] - 1, ) # self.lista.get_model().remove(self.iter) # self.__reselect(path) # elif self.accion == "Copiar": # self.emit("accion-stream", "Copiar", uri) # elif self.accion == "Mover": # self.emit("accion-stream", "Mover", uri) # path = self.lista.get_model().get_path(self.iter) # path = (path[0] - 1, ) # self.lista.get_model().remove(self.iter) # self.__reselect(path) # elif self.accion == "Grabar": # self.emit("Grabar", uri) self.emit("aviso", self.accion, uri) self.label.set_text("") self.lista = None self.accion = None self.iter = None self.hide()
def __realizar_accion(self, widget): """ Ejecuta una accion sobre un archivo o streaming en la lista de reprucción cuando el usuario confirma. """ uri = self.lista.get_model().get_value(self.iter, 2) if describe_acceso_uri(uri): if self.accion == "Quitar": path = self.lista.get_model().get_path(self.iter) path = (path[0] - 1, ) self.lista.get_model().remove(self.iter) self.__reselect(path) elif self.accion == "Copiar": if os.path.isfile(uri): copiar(uri, get_my_files_directory()) elif self.accion == "Borrar": if os.path.isfile(uri): if borrar(uri): path = self.lista.get_model().get_path(self.iter) path = (path[0] - 1, ) self.lista.get_model().remove(self.iter) self.__reselect(path) elif self.accion == "Mover": if os.path.isfile(uri): if mover(uri, get_my_files_directory()): path = self.lista.get_model().get_path(self.iter) path = (path[0] - 1, ) self.lista.get_model().remove(self.iter) self.__reselect(path) #Streaming no se usan en JAMediaVideo #else: # if self.accion == "Quitar": # path = self.lista.get_model().get_path(self.iter) # path = (path[0] - 1, ) # self.lista.get_model().remove(self.iter) # self.__reselect(path) # elif self.accion == "Borrar": # self.emit("accion-stream", "Borrar", uri) # path = self.lista.get_model().get_path(self.iter) # path = (path[0] - 1, ) # self.lista.get_model().remove(self.iter) # self.__reselect(path) # elif self.accion == "Copiar": # self.emit("accion-stream", "Copiar", uri) # elif self.accion == "Mover": # self.emit("accion-stream", "Mover", uri) # path = self.lista.get_model().get_path(self.iter) # path = (path[0] - 1, ) # self.lista.get_model().remove(self.iter) # self.__reselect(path) # elif self.accion == "Grabar": # self.emit("Grabar", uri) self.emit("aviso", self.accion, uri) self.label.set_text("") self.lista = None self.accion = None self.iter = None self.hide()
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 __init__(self, widget, boton, pos, tiempo, path, modelo): gtk.Menu.__init__(self) _iter = modelo.get_iter(path) uri = modelo.get_value(_iter, 2) quitar = gtk.MenuItem("Quitar de la Lista") self.append(quitar) quitar.connect_object("activate", self.__emit_accion, widget, path, "Quitar") my_files_directory = get_my_files_directory() if describe_acceso_uri(uri): lectura, escritura, ejecucion = describe_acceso_uri(uri) if lectura and os.path.dirname(uri) != my_files_directory: copiar = gtk.MenuItem("Copiar a JAMedia") self.append(copiar) copiar.connect_object("activate", self.__emit_accion, widget, path, "Copiar") if escritura and os.path.dirname(uri) != my_files_directory: mover = gtk.MenuItem("Mover a JAMedia") self.append(mover) mover.connect_object("activate", self.__emit_accion, widget, path, "Mover") if escritura: borrar = gtk.MenuItem("Borrar el Archivo") self.append(borrar) borrar.connect_object("activate", self.__emit_accion, widget, path, "Borrar") #tipo = describe_archivo(uri) #if "audio" in tipo or "video" in tipo or # "application/ogg" in tipo: # editar = gtk.MenuItem("Editar o Convertir Archivo") # self.append(editar) # editar.connect_object("activate", self.__emit_accion, # widget, path, "Editar") else: borrar = gtk.MenuItem("Borrar Streaming") self.append(borrar) borrar.connect_object("activate", self.__emit_accion, widget, path, "Borrar") listas = [ os.path.join(get_data_directory(), "JAMediaTV.JAMedia"), os.path.join(get_data_directory(), "JAMediaRadio.JAMedia"), os.path.join(get_data_directory(), "MisRadios.JAMedia"), os.path.join(get_data_directory(), "MisTvs.JAMedia"), os.path.join(get_data_directory(), "JAMediaWebCams.JAMedia"), ] jtv = stream_en_archivo(uri, listas[0]) jr = stream_en_archivo(uri, listas[1]) r = stream_en_archivo(uri, listas[2]) tv = stream_en_archivo(uri, listas[3]) #webcam = stream_en_archivo(uri, listas[4]) if (jtv and not tv) or (jr and not r): copiar = gtk.MenuItem("Copiar a JAMedia") self.append(copiar) copiar.connect_object("activate", self.__emit_accion, widget, path, "Copiar") mover = gtk.MenuItem("Mover a JAMedia") self.append(mover) mover.connect_object("activate", self.__emit_accion, widget, path, "Mover") grabar = gtk.MenuItem("Grabar") self.append(grabar) grabar.connect_object("activate", self.__emit_accion, widget, path, "Grabar") self.show_all() self.attach_to_widget(widget, self.__null)
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 __init__(self, widget, boton, pos, tiempo, path, modelo): gtk.Menu.__init__(self) _iter = modelo.get_iter(path) uri = modelo.get_value(_iter, 2) quitar = gtk.MenuItem("Quitar de la Lista") self.append(quitar) quitar.connect_object("activate", self.__emit_accion, widget, path, "Quitar") my_files_directory = get_my_files_directory() if describe_acceso_uri(uri): lectura, escritura, ejecucion = describe_acceso_uri(uri) if lectura and os.path.dirname(uri) != my_files_directory: copiar = gtk.MenuItem("Copiar a JAMedia") self.append(copiar) copiar.connect_object("activate", self.__emit_accion, widget, path, "Copiar") if escritura and os.path.dirname(uri) != my_files_directory: mover = gtk.MenuItem("Mover a JAMedia") self.append(mover) mover.connect_object("activate", self.__emit_accion, widget, path, "Mover") if escritura: borrar = gtk.MenuItem("Borrar el Archivo") self.append(borrar) borrar.connect_object("activate", self.__emit_accion, widget, path, "Borrar") #tipo = describe_archivo(uri) #if "audio" in tipo or "video" in tipo or "application/ogg" in tipo: # editar = gtk.MenuItem("Editar o Convertir Archivo") # self.append(editar) # editar.connect_object("activate", self.__emit_accion, # widget, path, "Editar") else: borrar = gtk.MenuItem("Borrar Streaming") self.append(borrar) borrar.connect_object("activate", self.__emit_accion, widget, path, "Borrar") listas = [ os.path.join(get_data_directory(), "JAMediaTV.JAMedia"), os.path.join(get_data_directory(), "JAMediaRadio.JAMedia"), os.path.join(get_data_directory(), "MisRadios.JAMedia"), os.path.join(get_data_directory(), "MisTvs.JAMedia"), os.path.join(get_data_directory(), "JAMediaWebCams.JAMedia"), ] jtv = stream_en_archivo(uri, listas[0]) jr = stream_en_archivo(uri, listas[1]) r = stream_en_archivo(uri, listas[2]) tv = stream_en_archivo(uri, listas[3]) webcam = stream_en_archivo(uri, listas[4]) if (jtv and not tv) or (jr and not r): copiar = gtk.MenuItem("Copiar a JAMedia") self.append(copiar) copiar.connect_object("activate", self.__emit_accion, widget, path, "Copiar") mover = gtk.MenuItem("Mover a JAMedia") self.append(mover) mover.connect_object("activate", self.__emit_accion, widget, path, "Mover") grabar = gtk.MenuItem("Grabar") self.append(grabar) grabar.connect_object("activate", self.__emit_accion, widget, path, "Grabar") self.show_all() self.attach_to_widget(widget, self.__null)