def update_treeview(self, datos=()): """ Metodo auxiliar para actualizar la tabla TreeView """ self.listStore.clear() if not datos: # Crear un objeto vacio "sin ID" (para usar el metodo read_all) pelicula = Pelicula() datos = pelicula.read_all() if datos: for dato in datos: self.listStore.append(dato) self.treeView.set_cursor(0)
def on_button_clicked(self, *arg): """ Buton Ejecutar """ print "ejecutando orden." # obtenemos los nuevos atributos de los distintos campos nombre = (self.builder.get_object("entry1")).get_text() director = (self.builder.get_object("entry2")).get_text() genero = (self.builder.get_object("entry3")).get_text() anio = (self.builder.get_object("entry4")).get_text() descripcion = ( (self.builder.get_object("textview1")) .get_buffer() .get_text( (self.builder.get_object("textview1")).get_buffer().get_start_iter(), (self.builder.get_object("textview1")).get_buffer().get_end_iter(), True, ) ) # obtener la fila seleccionada: ID del objeto seleccionado select = self.treeView.get_selection() if select is not None: tree_model, tree_iter = select.get_selected() if tree_iter is not None: ID = tree_model.get(tree_iter, 0)[0] label_ejecutar = self.builder.get_object("label6") accion = label_ejecutar.get_label() if accion == "Crear pelicula:" or accion == "Consultar pelicula:": # creamos el objeto sin ID peli = Pelicula(None, nombre, director, genero, anio, descripcion) if accion == "Crear pelicula:": self.status.push(self.status_context_id, "Creando pelicula ...") resultado = peli.create() self.update_treeview() self.status.push(self.status_context_id, "Pelicula creada con exito!") elif accion == "Consultar pelicula:": self.status.push(self.status_context_id, "Consultando pelicula ...") resultado = peli.read() self.update_treeview(resultado) self.status.push(self.status_context_id, "Pelicula consultada con exito!") if accion == "Actualizar pelicula:" or accion == "Borrar pelicula:": # creamos el objeto con ID peli = Pelicula(ID, nombre, director, genero, anio, descripcion) if accion == "Actualizar pelicula:": self.status.push(self.status_context_id, "Actualizando pelicula ...") resultado = peli.update() self.update_treeview() self.status.push(self.status_context_id, "Pelicula actualizada con exito!") elif accion == "Borrar pelicula:": self.status.push(self.status_context_id, "Borrando pelicula ...") resultado = peli.delete() self.update_treeview() self.status.push(self.status_context_id, "Pelicula borrada con exito!")