예제 #1
0
 def inicializar_ventana(self, objeto=None):
     """
     Inicializa los widgets de la ventana.
     """
     pixbuf_logo = gtk.gdk.pixbuf_new_from_file(pathjoin("..", "imagenes", "logo_up.gif"))
     pixbuf_logo = escalar_a(200, 100, pixbuf_logo)
     self.wids["logo"].set_from_pixbuf(pixbuf_logo)
     cols = (
         ("Concepto", "gobject.TYPE_STRING", False, True, True, None),
         ("Importe", "gobject.TYPE_FLOAT", False, False, True, None),
         ("PUID", "gobject.TYPE_STRING", False, False, False, None),
     )
     utils.preparar_treeview(self.wids["tv_datos"], cols)
     self.wids["tv_datos"].connect("row-activated", self.abrir_calendario)
     self.wids["tv_datos"].set_headers_visible(False)
     colores = {}
     for g in pclases.GrupoAlumnos.select():
         color = gtk.gdk.Color(*g.get_gdk_color_params())
         colores[g.nombre] = color.to_string()
     self.grafica = charting.add_grafica_barras_verticales(
         self.wids["a_grafica"], [], [], ver_botones_colores=False, ver_etiquetas_montones=True, colores=colores
     )
     self.grafica_rangos = charting.add_grafica_rangos(self.wids["a_grafica_rangos"], [], [])
     self.grafica_horas = charting.add_grafica_simple(
         self.wids["a_grafica_horas"], map(lambda h: "%02d:00" % h, xrange(24)), [0.0] * 24
     )
     self.wids["ventana"].resize(1024, 600)
예제 #2
0
 def inicializar_ventana(self, objeto = None):
     """
     Inicializa los widgets de la ventana.
     """
     pixbuf_logo = gtk.gdk.pixbuf_new_from_file(
         pathjoin("..", "imagenes", "logo_up.gif"))
     pixbuf_logo = escalar_a(200, 100, pixbuf_logo)
     self.wids['logo'].set_from_pixbuf(pixbuf_logo)
     cols = (('Grupo', 'gobject.TYPE_STRING', False, True, True, None),
             ('Asistencia','gobject.TYPE_BOOLEAN', True, False, True, 
                 self.actualizar_asistencia),
             ('id', 'gobject.TYPE_STRING', False, False, False, None))
     utils.preparar_treeview(self.wids['tv_asistencias'], cols)
     self.wids['tv_asistencias'].set_headers_visible(False)
     self.wids['tv_asistencias'].connect("row-activated", self.abrir_grupo)
     cats = pclases.CategoriaLaboral.selectBy(daClases = True)
     empleados = []
     for c in cats:
         for e in c.empleados:
             if e not in empleados: empleados.append(e)
     empleados.sort(key = lambda e: e.apellidos)
     opciones = ([(0, "Todos")] + 
                 [(e.id, e.get_nombre_completo()) for e in empleados])
     utils.rellenar_lista(self.wids['cb_empleadoID'], opciones)
     self.grafica = charting.add_grafica_rangos(self.wids['vbox2'], [], [])
     if self.lista_empleados and self.lista_empleados[0] != None:
         if len(self.lista_empleados) == 1:
             utils.combo_set_from_db(self.wids['cb_empleadoID'], 
                                     self.lista_empleados[0].id)
         else:
             utils.combo_set_from_db(self.wids['cb_empleadoID'], 0)
     else:
         utils.combo_set_from_db(self.wids['cb_empleadoID'], None)
     if not self.fecha:
         hoy = datetime.datetime.today()
         mes = hoy.month - 1 # gtk.Calendar empieza por 0
         anno = hoy.year
         dia = hoy.day
         self.wids['calendario'].select_month(mes, anno)
         self.wids['calendario'].select_day(dia)
     else:
         self.wids['calendario'].select_month(self.fecha.month - 1, 
                                              self.fecha.year)
         self.wids['calendario'].select_day(self.fecha.day)
     self.wids['ventana'].resize(
         int(self.wids['ventana'].get_size()[0]*2), 
         self.wids['ventana'].get_size()[1]*2)