def __init__(self, imgsAfectadas, claseOrigen, claseDestino):
        self.imgsAfectadas = imgsAfectadas
        self.claseOrigen = claseOrigen
        self.claseDestino = claseDestino
        self.accionRealizada = False

        if not Valida.exitenciaClase(self.claseOrigen, Accion.dicClases):
            self.logger.error("Clase " + claseOrigen + " inexistente")
            raise Exception(
                Util.getMnsjIdioma('Accion', 'Error_Crear_Clase_Existente'))
        if not Valida.exitenciaClase(self.claseDestino, Accion.dicClases):
            self.logger.error("Clase " + claseDestino + " inexistente")
            raise Exception(
                Util.getMnsjIdioma('Accion', 'Error_Crear_Clase_Existente'))
        if not Valida.imagenesExistenteOnClase(self.imgsAfectadas,
                                               Accion.dicClases[claseOrigen]):
            self.logger.error(
                "Error imagenes incosistentes, no todas se encuentran en la clase origen: "
                + claseOrigen)
            raise Exception(
                Util.getMnsjIdioma('Accion', 'Error_Imagenes_Inconsistentes'))

        for img in imgsAfectadas:
            img.nomClaseCorrecto = claseOrigen

        self.removerImgs = EliminarImagen(imgsAfectadas)
        self.agregarImgs = AgregarImagen(imgsAfectadas)
 def efectuarAccion(self, ):
     logger.info("Eliminando la lcase: "+self.nomClase)
     ''' Crea una clase y la agrega a la lista de dicClases evitando que se repita '''
     if not self.accionRealizada:            
         if not Valida.exitenciaClase(self.nomClase, self.dicClases):
             logger.error('No se efectuo accion, La clase: '+self.nomClase+' no existe')
             raise Exception(Util.getMnsjIdioma('Accion', 'Error_Eliminar_Clase_Inex'))
         
         del self.dicClases[self.nomClase]
         
         self.accionRealizada = True
         self.actualizarHistorial()
         logger.info("Clase eliminada :"+self.nomClase+" <ok>")
     else:
         raise Exception(Util.getMnsjIdioma("Accion", "Error_Hacer_Accion"))
 def deshacerAccion(self):
     if self.accionRealizada:
         for img in self.imgsAfectadas:
             self.removerImagen(img)
         self.accionRealizada = False
     else:
         raise Exception(Util.getMnsjIdioma("Accion", "Error_Deshacer_Accion"))
Example #4
0
    def efectuarAccion(self, ):
        logger.info("Eliminando la lcase: " + self.nomClase)
        ''' Crea una clase y la agrega a la lista de dicClases evitando que se repita '''
        if not self.accionRealizada:
            if not Valida.exitenciaClase(self.nomClase, self.dicClases):
                logger.error('No se efectuo accion, La clase: ' +
                             self.nomClase + ' no existe')
                raise Exception(
                    Util.getMnsjIdioma('Accion', 'Error_Eliminar_Clase_Inex'))

            del self.dicClases[self.nomClase]

            self.accionRealizada = True
            self.actualizarHistorial()
            logger.info("Clase eliminada :" + self.nomClase + " <ok>")
        else:
            raise Exception(Util.getMnsjIdioma("Accion", "Error_Hacer_Accion"))
Example #5
0
 def efectuarAccion(self):
     if not self.accionRealizada:
         for img in self.imgsAfectadas:
             self.removerImagen(img)
         self.accionRealizada = True
         self.actualizarHistorial()
     else:
         raise Exception(Util.getMnsjIdioma("Accion", "Error_Hacer_Accion"))
 def efectuarAccion(self):
     if not self.accionRealizada:
         for img in self.imgsAfectadas:
             self.removerImagen(img)
         self.accionRealizada = True
         self.actualizarHistorial() 
     else:
         raise Exception(Util.getMnsjIdioma("Accion", "Error_Hacer_Accion"))
 def deshacerAccion(self):
     if self.accionRealizada:
         for img in self.imgsAfectadas:
             self.removerImagen(img)
         self.accionRealizada = False
     else:
         raise Exception(
             Util.getMnsjIdioma("Accion", "Error_Deshacer_Accion"))
 def deshacerUltimaAccion(self):
     ''' Deshace la ultima accion realizada eliminandola del historial'''
     if self.accionRealizada:
         accion = None
         if len(self.pilaAcciones)>0 :
             accion = self.pilaAcciones.pop()
             accion.deshacerAccion()
         return accion
     else:
         raise Exception(Util.getMnsjIdioma("Accion", "Error_Deshacer_Accion"))
 def deshacerUltimaAccion(self):
     ''' Deshace la ultima accion realizada eliminandola del historial'''
     if self.accionRealizada:
         accion = None
         if len(self.pilaAcciones) > 0:
             accion = self.pilaAcciones.pop()
             accion.deshacerAccion()
         return accion
     else:
         raise Exception(
             Util.getMnsjIdioma("Accion", "Error_Deshacer_Accion"))
 def deshacerAccion(self):
     if self.accionRealizada:
         # Se deshace la accion de agregar imagenes de la clase Destino
         self.deshacerUltimaAccion()
         # Se vuelven a mover las imagenes
         for img in self.imgsAfectadas:
             self.moverImagen(img, self.claseOrigen)
         # Se deshace la accion de eliminar imagenes de la clase Origen
         self.deshacerUltimaAccion()
     else:
         raise Exception(Util.getMnsjIdioma("Accion", "Error_Deshacer_Accion"))
 def buscar(self):
     '''
     Busca utilizando expresiones regulares, todos los objetos Imgen de todos los objetos
     Fila que se encuentran en la lista filas
     '''
     
     if self.expRegBusqueda.get() is None :
         raise Exception(Util.getMnsjIdioma("TablaRutas", "Error_Exp_Reg_None"))
     
     self.limpiarLstImgsSeleccionadas()
     self.limpiarLstImgsFiltradas()
     
     try:
         for img in self.imgs:
             if(re.search(self.expRegBusqueda.get(),img.source) is not None):
                 self.lstImgsFiltradas.append(img)
     except Exception:
         raise Exception(Util.getMnsjIdioma("TablaRutas", "Error_Exp_Reg_Inv"))
             
     self.empaquetarWidgetsTabla()
 def deshacerAccion(self):
     if self.accionRealizada:
         # Se deshace la accion de agregar imagenes de la clase Destino
         self.deshacerUltimaAccion()
         # Se vuelven a mover las imagenes
         for img in self.imgsAfectadas:
             self.moverImagen(img, self.claseOrigen)
         # Se deshace la accion de eliminar imagenes de la clase Origen
         self.deshacerUltimaAccion()
     else:
         raise Exception(
             Util.getMnsjIdioma("Accion", "Error_Deshacer_Accion"))
 def efectuarAccion(self, ):
     ''' Crea una clase y la agrega a la lista de dicClases evitando que se repita '''
     logger.info("Creando la lcase: "+self.nomClase+"...")
     if not self.accionRealizada:
         if not Valida.nomClaseCorrecto(self.nomClase):
             logger.error('No se efectuo accion, Nombre de la clase invalido: '+self.nomClase)
             raise Exception(Util.getMnsjIdioma('Accion', 'Error_Crear_Clase_Nom_None'))
         
         if Valida.exitenciaClase(self.nomClase, self.dicClases):
             logger.error('No se efectuo accion, La clase: '+self.nomClase+' ya esta creada')
             raise Exception(Util.getMnsjIdioma('Accion', 'Error_Crear_Clase_Existente'))
         
         nvaClase = {}
         self.dicClases[self.nomClase] = nvaClase
         
         self.accionRealizada = True
         self.actualizarHistorial()
         logger.info("Clase creada :"+self.nomClase+" <ok>")
     else:
         raise Exception(Util.getMnsjIdioma("Accion", "Error_Hacer_Accion"))
     print Accion.dicClases
 def __init__(self, imgsAfectadas, claseOrigen, claseDestino):
     self.imgsAfectadas = imgsAfectadas
     self.claseOrigen = claseOrigen
     self.claseDestino = claseDestino
     self.accionRealizada = False
     
     if not Valida.exitenciaClase(self.claseOrigen, Accion.dicClases):
         self.logger.error("Clase "+claseOrigen+" inexistente")
         raise Exception(Util.getMnsjIdioma('Accion', 'Error_Crear_Clase_Existente'))
     if not Valida.exitenciaClase(self.claseDestino, Accion.dicClases):
         self.logger.error("Clase "+claseDestino+" inexistente")
         raise Exception(Util.getMnsjIdioma('Accion', 'Error_Crear_Clase_Existente'))
     if not Valida.imagenesExistenteOnClase(self.imgsAfectadas, Accion.dicClases[claseOrigen]):
         self.logger.error("Error imagenes incosistentes, no todas se encuentran en la clase origen: "+claseOrigen)
         raise Exception(Util.getMnsjIdioma('Accion', 'Error_Imagenes_Inconsistentes'))
     
     for img in imgsAfectadas:
         img.nomClaseCorrecto = claseOrigen
     
     self.removerImgs = EliminarImagen(imgsAfectadas)
     self.agregarImgs = AgregarImagen(imgsAfectadas)
 def deshacerAccion(self):
     ''' 
     Deshace la accion del propio objeto sin eliminarla del historial,
     es por eso que esta accion debe de ser llamada desde la funcion
     deshacerUtilmaAccion(self)
     '''
     logger.info("Deshaciendo accion...")
     if self.accionRealizada:
         del self.dicClases[self.nomClase]
         
         self.accionRealizada = False
         logger.info("Deshaciendo accion <ok> Clase "+self.nomClase+" Eliminada")
     else:
         raise Exception(Util.getMnsjIdioma("Accion", "Error_Deshacer_Accion"))
 def removerImagen(self, imagen):
     '''Remueve una imagen de la nomClaseCorrecto en la que se encuentra '''
     
     if imagen.nomClaseCorrecto is None:
         raise Exception(Util.getMnsjIdioma("Accion", "Error_Remover_None"))
     
     try:
         del self.dicClases[imagen.nomClaseCorrecto][imagen.__hash__()]
         logger.info("Imagen "+imagen.source+" removida de la clase "+imagen.nomClaseCorrecto)
     except KeyError:
         logger.error("Clase "+imagen.nomClaseCorrecto+" inexistente")
         raise Exception(Util.getMnsjConf('Accion', 'Error_Clase_Inexistente'))
     except Exception as e:
         raise e
    def removerImagen(self, imagen):
        '''Remueve una imagen de la nomClaseCorrecto en la que se encuentra '''

        if imagen.nomClaseCorrecto is None:
            raise Exception(Util.getMnsjIdioma("Accion", "Error_Remover_None"))

        try:
            del self.dicClases[imagen.nomClaseCorrecto][imagen.__hash__()]
            logger.info("Imagen " + imagen.source + " removida de la clase " +
                        imagen.nomClaseCorrecto)
        except KeyError:
            logger.error("Clase " + imagen.nomClaseCorrecto + " inexistente")
            raise Exception(
                Util.getMnsjConf('Accion', 'Error_Clase_Inexistente'))
        except Exception as e:
            raise e
 def moverImagen(self, imagen, claseDestino):
     if imagen is not None:
         imagen.nomClaseCorrecto = claseDestino
     else:
         logger.error("Error la imagen es None no se puede mover")
         raise Exception(Util.getMnsjIdioma('Accion', 'Error_Imagen_None'))
 def moverImagen(self, imagen, claseDestino):
     if imagen is not None:
         imagen.nomClaseCorrecto = claseDestino
     else:
         logger.error("Error la imagen es None no se puede mover")
         raise Exception(Util.getMnsjIdioma('Accion', 'Error_Imagen_None'))