예제 #1
0
파일: logviewer.py 프로젝트: pacoqueen/ginn
    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,
                             usuario=usuario)    
            # 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, usuario = usuario)
        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'])
        from formularios import pyconsole
        vars_locales = locals()
        for k in locals_adicionales:
            vars_locales[k] = locals_adicionales[k] 
        consola = pyconsole.attach_console(self.wids['contenedor_consola'],  # @UnusedVariable
                                banner = "Consola python de depuración GINN", 
                                script_inicio = """import sys, os, pygtk, gtk, gtk.glade, utils
from framework import pclases
import mx.DateTime
dir()
""", 
                                locales = 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()
예제 #2
0
    def __init__(self, objeto = None, usuario = None, ventana_padre = None, locals_adicionales = {}):
        try:
            Ventana.__init__(self, 'trazabilidad.glade', objeto, usuario = usuario)
        except:     # Tal vez me estén llamando desde otro directorio
            Ventana.__init__(self, os.path.join('..', 'formularios', 'trazabilidad.glade'), objeto, usuario = usuario)
        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.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)
        from formularios import pyconsole
        vars_locales = locals()
        for k in locals_adicionales:
            vars_locales[k] = locals_adicionales[k] 
        consola = pyconsole.attach_console(self.wids['contenedor_consola'],  # @UnusedVariable
                                           banner = "Consola python de depuración GINN", 
                                           script_inicio = """import sys, os, pygtk, gtk, gtk.glade
from formularios import utils
from framework import pclases
from framework.seeker import VentanaGenerica as Ver
dir()
#Ver(self.objeto)
""", 
                                            locales = 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()
예제 #3
0
    def __init__(self, objeto = None, usuario = None, ventana_padre = None, 
                 locals_adicionales = {}):
        self.filtro = [""]
        try:
            Ventana.__init__(self, 'trazabilidad.glade', objeto, usuario = usuario)    
            # 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, usuario)
        connections = {'b_salir/clicked': self._salir, 
                       'b_fechaini/clicked': self.set_fecha, 
                       'b_fechafin/clicked': self.set_fecha, 
                       'e_fechaini/focus-out-event': act_fecha, 
                       'e_fechafin/focus-out-event': act_fecha, 
                       'b_atras/clicked': self.move_fecha, 
                       'b_adelante/clicked': self.move_fecha, 
                       'b_actualizar/clicked': self.rellenar_widgets}
        self.add_connections(connections)
        self.wids['e_fechaini'].set_text(utils.str_fecha(
            # restar_semana(mx.DateTime.today())))
            mx.DateTime.today() - mx.DateTime.oneDay))
        self.wids['hbox1'].set_property("visible", False)
        self.wids['filtro_fecha'].set_visible(True)
        cols = (('Usuario', 'gobject.TYPE_STRING', False, True, False, None),
                ('Ventana', 'gobject.TYPE_STRING', False, True, False, None),
                ('«dbpuid»', 'gobject.TYPE_STRING', False, True, False, None), 
                ('Acción', 'gobject.TYPE_STRING', False, True, False, None), 
                ('IP', 'gobject.TYPE_STRING', False, True, False, None), 
                ('«hostname»', 
                    'gobject.TYPE_STRING', False, True, False, None), 
                ('«fechahora»', 'gobject.TYPE_STRING', False, True, True, None),
                ('Descripción', 
                    'gobject.TYPE_STRING', False, True, False, None), 
                ('PUID', 'gobject.TYPE_STRING', False, False, False, None))
        utils.preparar_listview(self.wids['tv_datos'], cols)
        self.wids['tv_datos'].connect("row-activated", abrir_objeto,
                                      self.usuario)
        from formularios import pyconsole
        vars_locales = locals()
        for k in locals_adicionales:
            vars_locales[k] = locals_adicionales[k] 
        consola = pyconsole.attach_console(self.wids['contenedor_consola'],  # @UnusedVariable
                                banner = "Consola python de depuración GINN", 
                                script_inicio = """import sys, os, pygtk, gtk, gtk.glade, utils
from framework import pclases
import mx.DateTime
dir()
""", 
                                locales = vars_locales)
        self.wids['frame2'].set_property("visible", False)
        self.wids['ventana'].set_title("AuditViewer")
        self.wids['ventana'].set_position(gtk.WIN_POS_CENTER)
        self.rellenar_widgets()
        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)
        self.wids['vbox1'].set_size_request(640, 480)
        self.wids['tv_datos'].set_size_request(-1, 350)
        self.wids['e_search'].grab_focus()
        self.wids['e_search'].set_text("!Alerta:")
        self.filtrar_tvaudit("!Alerta:")
        self.signal_check = gobject.timeout_add(5000, self.check_audit)
        self.wids['ventana'].resize(800, 600)
        self.colorear(self.wids['tv_datos'])
        gtk.main()