Loads the inputed filename as the current document for this edit.
        
        :param      filename | <str>
                    lineno   | <int>
        
        :return     <bool> | success

def load( self, filename, lineno = 0 ):
        """
        Loads the inputed filename as the current document for this edit.
        
        :param      filename | <str>
                    lineno   | <int>
        
        :return     <bool> | success
        """
        filename = nativestring(filename)
        
        if ( not (filename and os.path.exists(filename)) ):
            return False
        
        # load the file
        docfile = QFile(filename)
        if ( not docfile.open(QFile.ReadOnly) ):
            return False
            
        success = self.read(docfile)
        docfile.close()
        
        if ( not success ):
            return False
        
        self._filename = nativestring(filename)
        ext = os.path.splitext(filename)[1]
        self.setCurrentLine(lineno)
        
        lang = XLanguage.byFileType(ext)
        if ( lang != self.language() ):
            self.setLanguage(lang)
        
        self.setModified(False)
        
        return True