Module interface_configuration
|
|
1
2
3
4 import gtk
5 import gobject
6
7 import cte
8 from function import convert_opencv2gtk, load_image_no_webcam
9 from interface_about import Interface_about
10
11
13 """Clase utilizada para las interfaz de configuración. """
15 """Inicializador.
16 @param camera: instancia de Camera para trabajar con las cámaras.
17 @type camera: L{Camera}
18 """
19
20 self.camera = camera
21 self.num_cameras = len(self.camera.check_name_cameras())
22 self.open_window_configuration = True
23 self.configuration_ok = False
24 self.refresh = 0
25
26
27 self.gladefile = "gui/configuration.glade"
28 self.glade = gtk.Builder()
29 self.glade.add_from_file(self.gladefile)
30
31
32 self.window = self.glade.get_object("window_configuration")
33 self.image_camera = self.glade.get_object("image_camera")
34
35
36 self.window.set_title("Configuracion")
37
38
39 self.glade.connect_signals(self)
40
41
42 if self.num_cameras != 0:
43 self.hscale_camera = self.glade.get_object("hscale_camera")
44 self.hscale_camera.set_range(1, self.num_cameras)
45 self.hscale_camera.set_increments(1, 1)
46
47 else:
48 image = load_image_no_webcam()
49 self.load_image(image)
50
51
52 self.window.show()
53
54
55
82
86
88 """Callback que se activa cuando movemos la barra de escala, la cual
89 nos cambia al numero de cámara que seleccionemos. """
90
91
92 if self.num_cameras != 1:
93 self.camera.close_camera()
94 self.num_camera = int(widget.get_value()-1)
95 self.camera.open_camera(self.num_camera)
96 if self.camera.capture != None:
97 self.refresh = gobject.timeout_add(200, self.update)
98 else:
99 image = load_image_no_webcam()
100 self.load_image(image)
101 self.window.reshow_with_initial_size()
102
104 """Callback que es llamado cuando se pulsa el botón del idioma 1 en la
105 barra de menú de la interfaz y que nos cambia al idioma seleccionado.
106 """
107 print "cambiado a lenguaje_1"
108
110 """Callback que es llamado cuando se pulsa el botón del idioma 2 en la
111 barra de menú de la interfaz y que nos cambia al idioma seleccionado.
112 """
113 print "cambiado a lenguaje_2"
114
116 """Callback que es llamado cuando se pulsa el botón del idioma 1 en la
117 barra de menú de la interfaz y que nos cambia al idioma seleccionado.
118 """
119 Interface_about()
120
122 """Callback que es llamado cuando pulsamos la opción de cerrar ventana
123 de la barra menú, la cual cierra la ventana """
124 self.camera.close_camera()
125 self.window.destroy()
126
128 """Callback que es llamado cuando pulsamos la X, pulsamos ALT+F4, o
129 cuando llamamos a window.destroy(), esto no cierra la ventana. """
130 self.open_window_configuration = False
131 self.window.destroy()
132
133
134
136 """Función llamada por un bucle cada cierto tiempo que nos actualiza
137 la cámara y el video mediante frame y los muesta por pantalla.
138 @return: Devuelve True siempre que exista frame de una cámara o
139 un video, y False en caso de no encontrarlo.
140 @rtype: C{bool}
141 """
142 if self.camera.capture == None:
143 return False
144 frame = self.camera.get_frame()
145 self.load_image(frame)
146 return True
147
149 """Nos carga una imagen en la pantalla.
150 @param image: imagen a cargar.
151 @type image: L{IplImage}"""
152 pix_buf = convert_opencv2gtk(image)
153 self.image_camera.set_from_pixbuf(pix_buf)
154