Ejemplo n.º 1
0
    def setup_init(self):
        """
        Se crea la interfaz grafica,
        se setea y se empaqueta todo.
        """

        self.get_toplevel().set_sensitive(False)

        #from Globales import get_color

        from Widgets import Visor
        from Widgets import BarraProgreso
        from Widgets import ControlVolumen

        from PlayerList import Lista
        from PlayerControls import PlayerControl
        from GstreamerWidgets.Widgets import WidgetsGstreamerEfectos

        from Toolbars import ToolbarSalir
        from Toolbars import Toolbar
        from Toolbars import ToolbarAccion
        from Toolbars import ToolbarConfig
        from Toolbars import ToolbarGrabar
        from Toolbars import ToolbarInfo
        from Toolbars import ToolbarAddStream

        self.pantalla = Visor()
        self.barradeprogreso = BarraProgreso()
        self.volumen = ControlVolumen()
        self.lista_de_reproduccion = Lista()
        self.controlesrepro = PlayerControl()
        self.toolbar = Toolbar()
        self.toolbar_config = ToolbarConfig()
        self.widget_efectos = WidgetsGstreamerEfectos()
        self.toolbar_accion = ToolbarAccion()
        self.toolbar_grabar = ToolbarGrabar()
        self.toolbar_info = ToolbarInfo()
        self.toolbaraddstream = ToolbarAddStream()
        self.toolbar_salir = ToolbarSalir()

        basebox = Gtk.Box(orientation=Gtk.Orientation.VERTICAL)
        hpanel = Gtk.Paned(orientation=Gtk.Orientation.HORIZONTAL)
        hpanel.modify_bg(0, get_colors("window"))

        eventbox = Gtk.EventBox()  # FIXME: Para poder pintar el fondo
        eventbox.modify_bg(0, get_colors("barradeprogreso"))
        eventbox.add(self.toolbar)

        basebox.pack_start(eventbox, False, False, 3)
        basebox.pack_start(self.toolbar_salir, False, False, 0)
        basebox.pack_start(self.toolbar_accion, False, False, 0)
        basebox.pack_start(self.toolbaraddstream, False, False, 0)

        basebox.pack_start(hpanel, True, True, 0)

        # Area Izquierda del Panel

        # Efectos que se están aplicando.
        eventbox = Gtk.EventBox()  # FIXME: Para poder pintar el fondo
        eventbox.modify_bg(0, get_colors("drawingplayer"))
        self.hbox_efectos_en_pipe = Gtk.Box(
            orientation=Gtk.Orientation.HORIZONTAL)
        self.hbox_efectos_en_pipe.set_size_request(-1, 24)
        eventbox.add(self.hbox_efectos_en_pipe)
        scroll = Gtk.ScrolledWindow()
        scroll.set_policy(
            Gtk.PolicyType.AUTOMATIC,
            Gtk.PolicyType.NEVER)
        scroll.add_with_viewport(eventbox)

        # Barra de Progreso + Volúmen
        ev_box = Gtk.EventBox()  # FIXME: Para poder pintar el fondo
        ev_box.modify_bg(0, get_colors("barradeprogreso"))
        hbox_barra_progreso = Gtk.Box(
            orientation=Gtk.Orientation.HORIZONTAL)
        hbox_barra_progreso.pack_start(
            self.barradeprogreso, True, True, 0)
        hbox_barra_progreso.pack_start(
            self.volumen, False, False, 0)
        ev_box.add(hbox_barra_progreso)

        # Todo
        vbox = Gtk.Box(orientation=Gtk.Orientation.VERTICAL)
        vbox.pack_start(self.toolbar_grabar, False, False, 0)
        vbox.pack_start(self.pantalla, True, True, 0)
        vbox.pack_start(scroll, False, False, 0)

        eventbox = Gtk.EventBox()  # FIXME: Para poder pintar el fondo
        eventbox.modify_bg(0, get_colors("barradeprogreso"))
        eventbox.add(self.toolbar_info)
        vbox.pack_start(eventbox, False, False, 3)
        vbox.pack_start(ev_box, False, True, 0)

        hpanel.pack1(vbox, resize=True, shrink=True)

        # Area Derecha del Panel
        self.derecha_vbox = Gtk.Box(
            orientation=Gtk.Orientation.VERTICAL)

        # Configuración de balanace y efectos
        self.vbox_config = Gtk.Box(
            orientation=Gtk.Orientation.VERTICAL)
        self.scroll_config = Gtk.ScrolledWindow()
        self.scroll_config.set_policy(
            Gtk.PolicyType.NEVER,
            Gtk.PolicyType.AUTOMATIC)
        self.scroll_config.add_with_viewport(self.vbox_config)
        self.scroll_config.get_child().modify_bg(0, get_colors("window"))
        self.vbox_config.pack_start(
            self.toolbar_config, False, False, 0)
        #self.vbox_config.pack_start(self.widget_efectos, False, False, 0)

        # Lista de Reproducción
        # FIXME: Para poder pintar el fondo
        self.evnt_box_lista_reproduccion = Gtk.EventBox()
        self.evnt_box_lista_reproduccion.modify_bg(
            0, get_colors("barradeprogreso"))
        self.vbox_lista_reproduccion = Gtk.Box(
            orientation=Gtk.Orientation.VERTICAL)
        self.scroll_list = Gtk.ScrolledWindow()
        self.scroll_list.set_policy(
            Gtk.PolicyType.AUTOMATIC,
            Gtk.PolicyType.AUTOMATIC)
        self.scroll_list.add(self.lista_de_reproduccion)

        # Lista + Controles de Reproducción
        self.__pack_vbox_lista_reproduccion()
        self.evnt_box_lista_reproduccion.add(
            self.vbox_lista_reproduccion)

        # Configuración + Lista de Reproducción.
        self.derecha_vbox.pack_start(
            self.scroll_config, True, True, 0)
        self.derecha_vbox.pack_start(
            self.evnt_box_lista_reproduccion, True, True, 0)

        hpanel.pack2(self.derecha_vbox, resize=False, shrink=True)

        self.controles_dinamicos = [
            hbox_barra_progreso,
            self.derecha_vbox,
            self.toolbar,
            self.toolbar_info,
            self.hbox_efectos_en_pipe.get_parent().get_parent(
                ).get_parent()]

        basebox.show_all()

        map(self.__ocultar,
            [self.toolbar_salir,
            self.scroll_config,
            self.toolbar_accion,
            self.toolbar_grabar,
            self.toolbaraddstream,
            self.toolbar_info.descarga])

        self.add(basebox)

        from gi.repository import GdkX11

        xid = self.pantalla.get_property('window').get_xid()

        # HACK: La aplicación nunca debe explotar :P
        if get_programa("mplayer"):
            self.mplayerreproductor = MplayerReproductor(xid)

        else:
            self.mplayerreproductor = MplayerReproductor(self.pantalla)

        # HACK: La aplicación nunca debe explotar :P
        if verificar_Gstreamer():
            self.jamediareproductor = JAMediaReproductor(xid)

        else:
            self.jamediareproductor = JAMediaReproductor(self.pantalla)

        self.switch_reproductor(
            None, "JAMediaReproductor")  # default Gst.

        self.mplayerreproductor.connect(
            "endfile", self.__endfile)
        self.mplayerreproductor.connect(
            "estado", self.__cambioestadoreproductor)
        self.mplayerreproductor.connect(
            "newposicion", self.__update_progress)
        self.mplayerreproductor.connect(
            "volumen", self.__get_volumen)
        self.mplayerreproductor.connect(
            "video", self.__set_video)

        self.jamediareproductor.connect(
            "endfile", self.__endfile)
        self.jamediareproductor.connect(
            "estado", self.__cambioestadoreproductor)
        self.jamediareproductor.connect(
            "newposicion", self.__update_progress)
        self.jamediareproductor.connect(
            "volumen", self.__get_volumen)
        self.jamediareproductor.connect(
            "video", self.__set_video)

        self.lista_de_reproduccion.connect(
            "nueva-seleccion",
            self.__cargar_reproducir)
        self.lista_de_reproduccion.connect(
            "button-press-event",
            self.__click_derecho_en_lista)

        self.controlesrepro.connect(
            "activar", self.__activar)
        self.barradeprogreso.connect(
            "user-set-value", self.__user_set_value)
        self.pantalla.connect(
            "ocultar_controles", self.__ocultar_controles)
        self.pantalla.connect(
            "button_press_event", self.__clicks_en_pantalla)

        self.toolbar.connect('salir', self.confirmar_salir)
        #self.toolbar.connect('capturar', self.fotografiar)
        self.toolbar.connect('config', self.__mostrar_config)

        self.toolbar_salir.connect(
            'salir', self.__emit_salir)
        self.toolbar_config.connect(
            'reproductor', self.switch_reproductor)
        self.toolbar_config.connect(
            'valor', self.__set_balance)
        self.toolbar_info.connect(
            'rotar', self.__set_rotacion)
        self.toolbar_info.connect(
            'actualizar_streamings',
            self.__actualizar_streamings)
        self.toolbar_accion.connect(
            "Grabar", self.__grabar_streaming)
        self.toolbar_accion.connect(
            "accion-stream", self.__accion_stream)
        self.toolbar_grabar.connect(
            "stop", self.__detener_grabacion)
        self.volumen.connect(
            "volumen", self.__set_volumen)
        self.toolbaraddstream.connect(
            "add-stream", self.__ejecutar_add_stream)

        self.widget_efectos.connect(
            "click_efecto", self.__click_efecto)
        self.widget_efectos.connect(
            'configurar_efecto', self.__configurar_efecto)

        # Controlador del mouse.
        icono = os.path.join(BASE_PATH,
            "Iconos", "jamedia_cursor.svg")
        pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_size(icono,
            -1, 24)
        self.jamedia_cursor = Gdk.Cursor.new_from_pixbuf(
            Gdk.Display.get_default(), pixbuf, 0, 0)

        self.cursor_root = self.get_parent_window().get_cursor()
        self.get_parent_window().set_cursor(self.jamedia_cursor)

        from Widgets import MouseSpeedDetector

        self.mouse_listener = MouseSpeedDetector(self)
        self.mouse_listener.connect(
            "estado", self.__set_mouse)
        self.mouse_listener.new_handler(True)

        self.get_parent().connect(
            "hide", self.__hide_show_parent)
        self.get_parent().connect(
            "show", self.__hide_show_parent)

        self.hbox_efectos_en_pipe.get_parent().get_parent(
            ).get_parent().hide()

        self.get_toplevel().set_sensitive(True)
Ejemplo n.º 2
0
    def setup_init(self):
        """
        Se crea la interfaz grafica,
        se setea y se empaqueta todo.
        """

        self.get_toplevel().set_sensitive(False)

        #from Globales import get_color

        from Widgets import Visor
        from Widgets import BarraProgreso
        from Widgets import ControlVolumen

        from PlayerList import Lista
        from PlayerControls import PlayerControl
        from GstreamerWidgets.Widgets import WidgetsGstreamerEfectos

        from Toolbars import ToolbarSalir
        from Toolbars import Toolbar
        from Toolbars import ToolbarAccion
        from Toolbars import ToolbarConfig
        from Toolbars import ToolbarGrabar
        from Toolbars import ToolbarInfo
        from Toolbars import ToolbarAddStream

        self.pantalla = Visor()
        self.barradeprogreso = BarraProgreso()
        self.volumen = ControlVolumen()
        self.lista_de_reproduccion = Lista()
        self.controlesrepro = PlayerControl()
        self.toolbar = Toolbar()
        self.toolbar_config = ToolbarConfig()
        self.widget_efectos = WidgetsGstreamerEfectos()
        self.toolbar_accion = ToolbarAccion()
        self.toolbar_grabar = ToolbarGrabar()
        self.toolbar_info = ToolbarInfo()
        self.toolbaraddstream = ToolbarAddStream()
        self.toolbar_salir = ToolbarSalir()

        basebox = Gtk.Box(orientation=Gtk.Orientation.VERTICAL)
        hpanel = Gtk.Paned(orientation=Gtk.Orientation.HORIZONTAL)
        hpanel.modify_bg(0, get_colors("window"))

        eventbox = Gtk.EventBox()  # FIXME: Para poder pintar el fondo
        eventbox.modify_bg(0, get_colors("barradeprogreso"))
        eventbox.add(self.toolbar)

        basebox.pack_start(eventbox, False, False, 3)
        basebox.pack_start(self.toolbar_salir, False, False, 0)
        basebox.pack_start(self.toolbar_accion, False, False, 0)
        basebox.pack_start(self.toolbaraddstream, False, False, 0)

        basebox.pack_start(hpanel, True, True, 0)

        # Area Izquierda del Panel

        # Efectos que se están aplicando.
        eventbox = Gtk.EventBox()  # FIXME: Para poder pintar el fondo
        eventbox.modify_bg(0, get_colors("drawingplayer"))
        self.hbox_efectos_en_pipe = Gtk.Box(
            orientation=Gtk.Orientation.HORIZONTAL)
        self.hbox_efectos_en_pipe.set_size_request(-1, 24)
        eventbox.add(self.hbox_efectos_en_pipe)
        scroll = Gtk.ScrolledWindow()
        scroll.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.NEVER)
        scroll.add_with_viewport(eventbox)

        # Barra de Progreso + Volúmen
        ev_box = Gtk.EventBox()  # FIXME: Para poder pintar el fondo
        ev_box.modify_bg(0, get_colors("barradeprogreso"))
        hbox_barra_progreso = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL)
        hbox_barra_progreso.pack_start(self.barradeprogreso, True, True, 0)
        hbox_barra_progreso.pack_start(self.volumen, False, False, 0)
        ev_box.add(hbox_barra_progreso)

        # Todo
        vbox = Gtk.Box(orientation=Gtk.Orientation.VERTICAL)
        vbox.pack_start(self.toolbar_grabar, False, False, 0)
        vbox.pack_start(self.pantalla, True, True, 0)
        vbox.pack_start(scroll, False, False, 0)

        eventbox = Gtk.EventBox()  # FIXME: Para poder pintar el fondo
        eventbox.modify_bg(0, get_colors("barradeprogreso"))
        eventbox.add(self.toolbar_info)
        vbox.pack_start(eventbox, False, False, 3)
        vbox.pack_start(ev_box, False, True, 0)

        hpanel.pack1(vbox, resize=True, shrink=True)

        # Area Derecha del Panel
        self.derecha_vbox = Gtk.Box(orientation=Gtk.Orientation.VERTICAL)

        # Configuración de balanace y efectos
        self.vbox_config = Gtk.Box(orientation=Gtk.Orientation.VERTICAL)
        self.scroll_config = Gtk.ScrolledWindow()
        self.scroll_config.set_policy(Gtk.PolicyType.NEVER,
                                      Gtk.PolicyType.AUTOMATIC)
        self.scroll_config.add_with_viewport(self.vbox_config)
        self.scroll_config.get_child().modify_bg(0, get_colors("window"))
        self.vbox_config.pack_start(self.toolbar_config, False, False, 0)
        #self.vbox_config.pack_start(self.widget_efectos, False, False, 0)

        # Lista de Reproducción
        # FIXME: Para poder pintar el fondo
        self.evnt_box_lista_reproduccion = Gtk.EventBox()
        self.evnt_box_lista_reproduccion.modify_bg(
            0, get_colors("barradeprogreso"))
        self.vbox_lista_reproduccion = Gtk.Box(
            orientation=Gtk.Orientation.VERTICAL)
        self.scroll_list = Gtk.ScrolledWindow()
        self.scroll_list.set_policy(Gtk.PolicyType.AUTOMATIC,
                                    Gtk.PolicyType.AUTOMATIC)
        self.scroll_list.add(self.lista_de_reproduccion)

        # Lista + Controles de Reproducción
        self.__pack_vbox_lista_reproduccion()
        self.evnt_box_lista_reproduccion.add(self.vbox_lista_reproduccion)

        # Configuración + Lista de Reproducción.
        self.derecha_vbox.pack_start(self.scroll_config, True, True, 0)
        self.derecha_vbox.pack_start(self.evnt_box_lista_reproduccion, True,
                                     True, 0)

        hpanel.pack2(self.derecha_vbox, resize=False, shrink=True)

        self.controles_dinamicos = [
            hbox_barra_progreso, self.derecha_vbox, self.toolbar,
            self.toolbar_info,
            self.hbox_efectos_en_pipe.get_parent().get_parent().get_parent()
        ]

        basebox.show_all()

        map(self.__ocultar, [
            self.toolbar_salir, self.scroll_config, self.toolbar_accion,
            self.toolbar_grabar, self.toolbaraddstream,
            self.toolbar_info.descarga
        ])

        self.add(basebox)

        from gi.repository import GdkX11

        xid = self.pantalla.get_property('window').get_xid()

        # HACK: La aplicación nunca debe explotar :P
        if get_programa("mplayer"):
            self.mplayerreproductor = MplayerReproductor(xid)

        else:
            self.mplayerreproductor = MplayerReproductor(self.pantalla)

        # HACK: La aplicación nunca debe explotar :P
        if verificar_Gstreamer():
            self.jamediareproductor = JAMediaReproductor(xid)

        else:
            self.jamediareproductor = JAMediaReproductor(self.pantalla)

        self.switch_reproductor(None, "JAMediaReproductor")  # default Gst.

        self.mplayerreproductor.connect("endfile", self.__endfile)
        self.mplayerreproductor.connect("estado",
                                        self.__cambioestadoreproductor)
        self.mplayerreproductor.connect("newposicion", self.__update_progress)
        self.mplayerreproductor.connect("volumen", self.__get_volumen)
        self.mplayerreproductor.connect("video", self.__set_video)

        self.jamediareproductor.connect("endfile", self.__endfile)
        self.jamediareproductor.connect("estado",
                                        self.__cambioestadoreproductor)
        self.jamediareproductor.connect("newposicion", self.__update_progress)
        self.jamediareproductor.connect("volumen", self.__get_volumen)
        self.jamediareproductor.connect("video", self.__set_video)

        self.lista_de_reproduccion.connect("nueva-seleccion",
                                           self.__cargar_reproducir)
        self.lista_de_reproduccion.connect("button-press-event",
                                           self.__click_derecho_en_lista)

        self.controlesrepro.connect("activar", self.__activar)
        self.barradeprogreso.connect("user-set-value", self.__user_set_value)
        self.pantalla.connect("ocultar_controles", self.__ocultar_controles)
        self.pantalla.connect("button_press_event", self.__clicks_en_pantalla)

        self.toolbar.connect('salir', self.confirmar_salir)
        #self.toolbar.connect('capturar', self.fotografiar)
        self.toolbar.connect('config', self.__mostrar_config)

        self.toolbar_salir.connect('salir', self.__emit_salir)
        self.toolbar_config.connect('reproductor', self.switch_reproductor)
        self.toolbar_config.connect('valor', self.__set_balance)
        self.toolbar_info.connect('rotar', self.__set_rotacion)
        self.toolbar_info.connect('actualizar_streamings',
                                  self.__actualizar_streamings)
        self.toolbar_accion.connect("Grabar", self.__grabar_streaming)
        self.toolbar_accion.connect("accion-stream", self.__accion_stream)
        self.toolbar_grabar.connect("stop", self.__detener_grabacion)
        self.volumen.connect("volumen", self.__set_volumen)
        self.toolbaraddstream.connect("add-stream", self.__ejecutar_add_stream)

        self.widget_efectos.connect("click_efecto", self.__click_efecto)
        self.widget_efectos.connect('configurar_efecto',
                                    self.__configurar_efecto)

        # Controlador del mouse.
        icono = os.path.join(BASE_PATH, "Iconos", "jamedia_cursor.svg")
        pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_size(icono, -1, 24)
        self.jamedia_cursor = Gdk.Cursor.new_from_pixbuf(
            Gdk.Display.get_default(), pixbuf, 0, 0)

        self.cursor_root = self.get_parent_window().get_cursor()
        self.get_parent_window().set_cursor(self.jamedia_cursor)

        from Widgets import MouseSpeedDetector

        self.mouse_listener = MouseSpeedDetector(self)
        self.mouse_listener.connect("estado", self.__set_mouse)
        self.mouse_listener.new_handler(True)

        self.get_parent().connect("hide", self.__hide_show_parent)
        self.get_parent().connect("show", self.__hide_show_parent)

        self.hbox_efectos_en_pipe.get_parent().get_parent().get_parent().hide()

        self.get_toplevel().set_sensitive(True)
Ejemplo n.º 3
0
from Globales import verificar_Gstreamer
from Globales import get_colors

BASE_PATH = os.path.dirname(__file__)

# HACK: La aplicación nunca debe explotar :P
if get_programa("mplayer"):
    from JAMediaReproductor.MplayerReproductor import MplayerReproductor
    from JAMediaReproductor.MplayerReproductor import MplayerGrabador

else:
    from JAMediaReproductor.PlayerNull import MplayerReproductor
    from JAMediaReproductor.PlayerNull import MplayerGrabador

# HACK: La aplicación nunca debe explotar :P
if verificar_Gstreamer():
    from JAMediaReproductor.JAMediaReproductor import JAMediaReproductor
    from JAMediaReproductor.JAMediaReproductor import JAMediaGrabador

else:
    from JAMediaReproductor.PlayerNull import JAMediaReproductor
    from JAMediaReproductor.PlayerNull import JAMediaGrabador
'''
screen = Gdk.Screen.get_default()
css_provider = Gtk.CssProvider()
style_path = os.path.join(
    os.path.dirname(__file__), "Estilo.css")
css_provider.load_from_path(style_path)
context = Gtk.StyleContext()

context.add_provider_for_screen(
Ejemplo n.º 4
0
from Globales import verificar_Gstreamer
from Globales import get_colors

BASE_PATH = os.path.dirname(__file__)

# HACK: La aplicación nunca debe explotar :P
if get_programa("mplayer"):
    from JAMediaReproductor.MplayerReproductor import MplayerReproductor
    from JAMediaReproductor.MplayerReproductor import MplayerGrabador

else:
    from JAMediaReproductor.PlayerNull import MplayerReproductor
    from JAMediaReproductor.PlayerNull import MplayerGrabador

# HACK: La aplicación nunca debe explotar :P
if verificar_Gstreamer():
    from JAMediaReproductor.JAMediaReproductor import JAMediaReproductor
    from JAMediaReproductor.JAMediaReproductor import JAMediaGrabador

else:
    from JAMediaReproductor.PlayerNull import JAMediaReproductor
    from JAMediaReproductor.PlayerNull import JAMediaGrabador
'''
screen = Gdk.Screen.get_default()
css_provider = Gtk.CssProvider()
style_path = os.path.join(
    os.path.dirname(__file__), "Estilo.css")
css_provider.load_from_path(style_path)
context = Gtk.StyleContext()

context.add_provider_for_screen(