def __init__(self, objeto = None, usuario = None, run = True): """ Constructor. objeto puede ser un objeto de pclases con el que comenzar la ventana (en lugar del primero de la tabla, que es el que se muestra por defecto). """ self.nombre_fichero_ventana = os.path.split(__file__)[-1] if pclases.DEBUG: print "objeto", objeto print "usuario", usuario print "run", run self._objetoreciencreado = None if objeto and isinstance(objeto, pclases.Resultado): VentanaGenerica.__init__(self, objeto = objeto, usuario = usuario, run = False) elif objeto: VentanaGenerica.__init__(self, objeto = objeto, usuario = usuario, clase = pclases.Resultado, run = False) else: VentanaGenerica.__init__(self, clase = pclases.Resultado, usuario = usuario, run = False) self._add_widget_grafico() add_boton_adjuntos(self.wids['botonera'], lambda: self.objeto) # Elementos que me interesa deshabilitar: self.wids['botonera_adjuntos'].set_property("visible", False) # Otros pequeños cambios: self.wids['label_relaciones'].set_text("Informes") if run: gtk.main()
def __init__(self, objeto=None, usuario=None, run=True): """ Constructor. objeto puede ser un objeto de pclases con el que comenzar la ventana (en lugar del primero de la tabla, que es el que se muestra por defecto). """ self.nombre_fichero_ventana = os.path.split(__file__)[-1] if pclases.DEBUG: print "objeto", objeto print "usuario", usuario print "run", run self._objetoreciencreado = None if objeto and isinstance(objeto, pclases.Informe): VentanaGenerica.__init__(self, objeto=objeto, usuario=usuario, run=False) elif objeto: VentanaGenerica.__init__(self, objeto=objeto, usuario=usuario, clase=pclases.Informe, run=False) else: VentanaGenerica.__init__(self, clase=pclases.Informe, usuario=usuario, run=False) add_boton_adjuntos(self.wids["botonera"], lambda: self.objeto) # Elementos que me interesa deshabilitar: for nombrecampo in ("lineaDeVentaID",): w = self.widgets_campos[nombrecampo] for c in w.parent.parent.parent.get_children(): c.set_property("visible", False) self.wids["totalizador_resultados"].set_property("visible", False) self.wids["container_adjuntos"].set_property("visible", False) # Widgets no editables de campos calculados: try: self.add_campo_calculado( "get_str_muestras", etiqueta="Códigos de muestra", nombre="muestras", campo="codigo" ) except AttributeError: # No hay objeto todavía. Tabla vacía. Es None. print "WARNING: informes.py: El objeto es None. No se mostrarán" " campos calculados." pass if run: gtk.main()
def __init__(self, objeto = None, usuario = None, run = True): """ Constructor. objeto puede ser un objeto de pclases con el que comenzar la ventana (en lugar del primero de la tabla, que es el que se muestra por defecto). """ self.nombre_fichero_ventana = os.path.split(__file__)[-1] self._objetoreciencreado = None self.__clase = pclases.Empleado meta = self.__clase.sqlmeta campos = meta.columns.keys() + [j.joinMethodName for j in meta.joins] campos_menos_foto = campos campos.remove("fotos") campos.remove("adjuntos") # Adjuntos lleva su propio botón. if objeto and isinstance(objeto, self.__clase): VentanaGenerica.__init__(self, objeto = objeto, usuario = usuario, run = False, campos = campos_menos_foto, ventana_marco = "laborantes.glade") elif objeto: VentanaGenerica.__init__(self, objeto = objeto, usuario = usuario, clase = self.__clase, run = False, campos = campos_menos_foto, ventana_marco = "laborantes.glade") else: VentanaGenerica.__init__(self, clase = self.__clase, usuario = usuario, run = False, campos = campos_menos_foto, ventana_marco = "laborantes.glade") add_boton_adjuntos(self.wids['botonera'], lambda: self.objeto, posicion = 5) bfoto, ifoto = add_boton_fotos(self.wids['hbox_foto'], lambda *a, **kw: self.objeto, posicion = 0) self.wids['b_fotos'], self.wids['i_foto'] = bfoto, ifoto if run: gtk.main()