Throws an error based on the information that the logger reported,
        given the logging level.
        
        :param      record | <logging.LogRecord>

def emit(self, record):
        """ 
        Throws an error based on the information that the logger reported,
        given the logging level.
        
        :param      record | <logging.LogRecord>
        """
        # if we've already processed this record, ignore it
        if record in self._recordQueue:
            return
        
        if self._activeLevels and not record.levelno in self._activeLevels:
            return
        
        name = record.name
        lvl = self.loggerLevel(name)
        
        # don't process this log
        if lvl > record.levelno:
            return
        
        self._recordQueue.insert(0, record)
        self._recordQueue = self._recordQueue[:10]
        
        # emit the change
        super(XLoggerWidgetHandler, self).emit(record)