예제 #1
0
    def __init__(self, objeto = None, usuario = None, ventana_padre = None, locals_adicionales = {}):
        try:
            Ventana.__init__(self, 'trazabilidad.glade', objeto)
        except:     # Tal vez me estén llamando desde otro directorio
            Ventana.__init__(self, os.path.join('..', 'formularios', 'trazabilidad.glade'), objeto)
        connections = {'b_salir/clicked': self.salir,
                       'b_buscar/clicked': self.buscar}
        self.add_connections(connections)
        cols = (('ID', 'gobject.TYPE_STRING', False, False, False, None),
                ('campo', 'gobject.TYPE_STRING', False, False, False, None),
                ('valor', 'gobject.TYPE_STRING', True, False, True, self.cambiar_valor),
                ('clase', 'gobject.TYPE_STRING', False, False, False, None))
        utils.ui.preparar_treeview(self.wids['tv_datos'], cols)
        self.wids['e_num'].connect("key_press_event", self.pasar_foco)
        self.wids['tv_datos'].connect("row-expanded", self.expandir)
        self.wids['tv_datos'].connect("row-collapsed", self.cerrar)
        self.wids['e_search'].set_property("visible", False)
        import pyconsole
        vars_locales = locals()
        for k in locals_adicionales:
            vars_locales[k] = locals_adicionales[k] 
        pyconsole.attach_console(self.wids['contenedor_consola'], 
                                 banner = "Consola python de depuración GINN", 
                                 script_inicio = """import sys, os, pygtk, gtk, gtk.glade, utils
from framework import pclases
import datetime
if os.path.realpath(os.path.curdir).split(os.path.sep)[-1] == "formularios":
    os.chdir("..")
sys.path.append(".")
from formularios.ventana_generica import VentanaGenerica as Ver
dir()
#Ver(self.objeto)
""", 
                                            locals = vars_locales)
        if objeto != None:
            self.rellenar_datos(objeto)
        cmd_gtk = cmdgtk.CmdGTK()
        cmd_gtk.attach_to(self.wids['boxcmd'])
        #-----------------------------------------------------------------------------------------------#
        def comprobar_que_no_me_hace_el_gato(paned, scrolltype_or_allocation_or_requisition = None):    #
            width = self.wids['ventana'].get_size()[0]                                                  #
            MIN =  width / 2                                                                            #
            MAX = width - 100                                                                           #
            posactual = paned.get_position()                                                            #
            if posactual < MIN:                                                                         #
                paned.set_position(MIN)                                                                 #
            elif posactual > MAX:                                                                       #
                paned.set_position(MAX)                                                                 #
        #-----------------------------------------------------------------------------------------------#
        self.wids['hpaned1'].connect("size_request", comprobar_que_no_me_hace_el_gato)
        self.wids['ventana'].resize(800, 600)
        self.wids['hpaned1'].set_position(self.wids['ventana'].get_size()[0] / 2)
        self.wids['ventana'].set_position(gtk.WIN_POS_CENTER)
        gtk.main()
예제 #2
0
    def __init__(self, objeto = None, usuario = None, ventana_padre = None, locals_adicionales = {}, fichero_log = "ginn.log"):
        self.fichero_log = fichero_log
        self.filtro = [""]
        try:
            Ventana.__init__(self, 'trazabilidad.glade', objeto)    
            # Me vale el mismo glade. Modificaré dinámicamente lo que me 
            # estorbe.
        except:     # Tal vez me estén llamando desde otro directorio
            Ventana.__init__(self, os.path.join('..', 'formularios', 'trazabilidad.glade'), objeto)
        connections = {'b_salir/clicked': self._salir}
        self.add_connections(connections)
        self.wids['hbox1'].set_property("visible", False)
        cols = (('Fecha', 'gobject.TYPE_STRING', False, True, True, None),
                ('Hora', 'gobject.TYPE_STRING', False, True, False, None),
                ('Tipo', 'gobject.TYPE_STRING', False, True, False, None),
                ('Usuario', 'gobject.TYPE_STRING', False, True, False, None), 
                ('Texto', 'gobject.TYPE_STRING', False, True, False, None), 
                ('Línea', 'gobject.TYPE_INT64', False, False, False, None))
        utils.preparar_listview(self.wids['tv_datos'], cols)
        self.colorear(self.wids['tv_datos'])
        import pyconsole
        vars_locales = locals()
        for k in locals_adicionales:
            vars_locales[k] = locals_adicionales[k] 
        consola = pyconsole.attach_console(self.wids['contenedor_consola'], 
                                banner = "Consola python de depuración GINN", 
                                script_inicio = """import sys, os, pygtk, gtk, gtk.glade, utils
sys.path.append(os.path.join("..", "framework"))
import pclases, mx, mx.DateTime
dir()
""", 
                                locals = vars_locales)
        self.wids['frame2'].set_property("visible", False)
        self.wids['ventana'].set_title("LogViewer")
        self.wids['ventana'].resize(800, 600)
        self.wids['ventana'].set_position(gtk.WIN_POS_CENTER)
        self.wids['vpaned1'].set_position(500)
        self.tamanno_log = self.rellenar_widgets()
        gobject.timeout_add(1000, self.check_log)
        try:
            self.wids['e_search'].set_property("primary-icon-stock", 
                gtk.STOCK_FIND)
            self.wids['e_search'].set_property("secondary-icon-stock", 
                gtk.STOCK_CLEAR)
            self.wids['e_search'].connect("icon-press", self.both_buttons)
        except TypeError:
            self.wids['e_search'].connect("changed", 
                                          self.mancatrlt2)
        gtk.main()
예제 #3
0
    def __init__(self, objeto = None, usuario = None, ventana_padre = None, 
                 locals_adicionales = {}, fichero_log = None):
        if fichero_log == None:
            fichero_log = buscar_fichero_log()
        self.fichero_log = fichero_log
        self.filtro = [""]
        Ventana.__init__(self, 'trazabilidad.glade', objeto) 
            # Me vale el mismo glade. Modificaré dinámicamente lo que me 
            # estorbe.
        connections = {'b_salir/clicked': self._salir}
        self.add_connections(connections)
        self.wids['hbox1'].set_property("visible", False)
        cols = (('Fecha', 'gobject.TYPE_STRING', False, True, True, None),
                ('Hora', 'gobject.TYPE_STRING', False, True, False, None),
                ('Tipo', 'gobject.TYPE_STRING', False, True, False, None),
                ('Usuario', 'gobject.TYPE_STRING', False, True, False, None), 
                ('Texto', 'gobject.TYPE_STRING', False, True, False, None), 
                ('Línea', 'gobject.TYPE_INT64', False, False, False, None))
        utils.ui.preparar_listview(self.wids['tv_datos'], cols)
        self.colorear(self.wids['tv_datos'])
        import pyconsole
        vars_locales = locals()
        for k in locals_adicionales:
            vars_locales[k] = locals_adicionales[k] 
        consola = pyconsole.attach_console(self.wids['contenedor_consola'], 
                                banner = "Consola python de depuración GINN", 
                                script_inicio = """import sys, os, pygtk, gtk, gtk.glade, utils, datetime
from framework import pclases
dir()
""", 
                                locals = vars_locales)
        self.wids['frame2'].set_property("visible", False)
        self.wids['ventana'].set_title("LogViewer")
        self.wids['ventana'].resize(800, 600)
        self.wids['ventana'].set_position(gtk.WIN_POS_CENTER)
        self.wids['vpaned1'].set_position(500)
        self.tamanno_log = self.rellenar_widgets()
        gobject.timeout_add(1000, self.check_log)
        self.wids['e_search'].set_property("primary-icon-stock", 
            gtk.STOCK_FIND)
        self.wids['e_search'].set_property("secondary-icon-stock", 
            gtk.STOCK_CLEAR)
        self.wids['e_search'].connect("icon-press", self.both_buttons)
        gtk.main()