Ejemplo n.º 1
0
    def __init__(self, source, widgetTabla=None, nomClaseCorrecto=None):

        if not Valida.isImagen(source):
            raise Exception(
                Util.getMnsjIdioma("Imagen", "Error_Ruta_Invalida") % (source))

        self.source = source
        self.tipoRuta = Clasifica.tipoRuta(source)
        self.nomClaseCorrecto = nomClaseCorrecto
        if widgetTabla is not None:  # Para realizar pruebas unitaras
            self.widgetFila = Fila(self, widgetTabla)
Ejemplo n.º 2
0
 def __init__(self, source, widgetTabla=None, nomClaseCorrecto = None):
     
     if not Valida.isImagen(source):
         raise Exception(Util.getMnsjIdioma("Imagen", "Error_Ruta_Invalida")%(source))
     
     self.source = source
     self.tipoRuta = Clasifica.tipoRuta(source);
     self.nomClaseCorrecto = nomClaseCorrecto
     if widgetTabla is not None: # Para realizar pruebas unitaras
         self.widgetFila = Fila(self, widgetTabla)
Ejemplo n.º 3
0
class Imagen(object):
    ''' Objeto que abstrae las caracteristicas y funcionalidades de una rutade imagen local o web '''
    
    #------------------------------------------------------------------------------------
    def __init__(self, source, widgetTabla=None, nomClaseCorrecto = None):
        
        if not Valida.isImagen(source):
            raise Exception(Util.getMnsjIdioma("Imagen", "Error_Ruta_Invalida")%(source))
        
        self.source = source
        self.tipoRuta = Clasifica.tipoRuta(source);
        self.nomClaseCorrecto = nomClaseCorrecto
        if widgetTabla is not None: # Para realizar pruebas unitaras
            self.widgetFila = Fila(self, widgetTabla)
            
    
    #------------------------------------------------------------------------------------
    def getPath(self):
        '''Regresa la ruta sin el arhcivo'''
        if self.tipoRuta == Util.RUTA_WEB:
            return self.source[:self.source.rfind('/')]
        
        elif self.tipoRuta == Util.RUTA_LOCAL:
            return self.source[:self.source.rfind(os.path.sep)]
        
        return None;
    
    #------------------------------------------------------------------------------------
    def getNomArchivo(self):
        '''Regresa el nombre del archvio sin extencion ni ruta'''
        
        if self.tipoRuta == Util.RUTA_WEB:
            return self.source[self.source.rfind('/')+1:self.source.rfind('.')]
        
        elif self.tipoRuta == Util.RUTA_LOCAL:
            return self.source[self.source.rfind(os.path.sep)+1:self.source.rfind('.')]
        
        return None;
    
    #------------------------------------------------------------------------------------
    def getExtArchivo(self):
        '''Regresa la extencion del archivo sin el '.' '''
        return self.source[self.source.rfind('.')+1:]
    
    #------------------------------------------------------------------------------------
    def guardarImagen(self, direccionSalida):
        try:
            if self.widgetFila.widgetPrevisualizacion is not None and self.widgetFila.widgetPrevisualizacion.__class__ == ttk.Label:
                self.widgetFila.widgetPrevisualizacion.save(direccionSalida)
            else:
                self.widgetFila.crearIconoImagen().save(direccionSalida)
            logger.info("Imagen Guardada en "+direccionSalida)
        except IOError as ex:
            logger.error(ex)
            logger.error("No se pudo guardar la imagen "+self.source)
            
    
            
    #------------------------------------------------------------------------------------
    def __eq__(self, imagen):
        '''Regresa la comparacion entre otro objeto del mismo tipo'''
        return self.source == imagen.source and self.nomClaseCorrecto == imagen.nomClaseCorrecto;

    #------------------------------------------------------------------------------------
    def __hash__(self):
        return hash(str(self.nomClaseCorrecto)+self.source)
Ejemplo n.º 4
0
class Imagen(object):
    ''' Objeto que abstrae las caracteristicas y funcionalidades de una rutade imagen local o web '''

    #------------------------------------------------------------------------------------
    def __init__(self, source, widgetTabla=None, nomClaseCorrecto=None):

        if not Valida.isImagen(source):
            raise Exception(
                Util.getMnsjIdioma("Imagen", "Error_Ruta_Invalida") % (source))

        self.source = source
        self.tipoRuta = Clasifica.tipoRuta(source)
        self.nomClaseCorrecto = nomClaseCorrecto
        if widgetTabla is not None:  # Para realizar pruebas unitaras
            self.widgetFila = Fila(self, widgetTabla)

    #------------------------------------------------------------------------------------
    def getPath(self):
        '''Regresa la ruta sin el arhcivo'''
        if self.tipoRuta == Util.RUTA_WEB:
            return self.source[:self.source.rfind('/')]

        elif self.tipoRuta == Util.RUTA_LOCAL:
            return self.source[:self.source.rfind(os.path.sep)]

        return None

    #------------------------------------------------------------------------------------
    def getNomArchivo(self):
        '''Regresa el nombre del archvio sin extencion ni ruta'''

        if self.tipoRuta == Util.RUTA_WEB:
            return self.source[self.source.rfind('/') +
                               1:self.source.rfind('.')]

        elif self.tipoRuta == Util.RUTA_LOCAL:
            return self.source[self.source.rfind(os.path.sep) +
                               1:self.source.rfind('.')]

        return None

    #------------------------------------------------------------------------------------
    def getExtArchivo(self):
        '''Regresa la extencion del archivo sin el '.' '''
        return self.source[self.source.rfind('.') + 1:]

    #------------------------------------------------------------------------------------
    def guardarImagen(self, direccionSalida):
        try:
            if self.widgetFila.widgetPrevisualizacion is not None and self.widgetFila.widgetPrevisualizacion.__class__ == ttk.Label:
                self.widgetFila.widgetPrevisualizacion.save(direccionSalida)
            else:
                self.widgetFila.crearIconoImagen().save(direccionSalida)
            logger.info("Imagen Guardada en " + direccionSalida)
        except IOError as ex:
            logger.error(ex)
            logger.error("No se pudo guardar la imagen " + self.source)

    #------------------------------------------------------------------------------------
    def __eq__(self, imagen):
        '''Regresa la comparacion entre otro objeto del mismo tipo'''
        return self.source == imagen.source and self.nomClaseCorrecto == imagen.nomClaseCorrecto

    #------------------------------------------------------------------------------------
    def __hash__(self):
        return hash(str(self.nomClaseCorrecto) + self.source)