def METHOD_NAME(self, text, jumpIndex = None, highlight = None):
    """
    Calls the editor and thus allows the user to change the text.
    Returns the modified text. Halts the thread's operation until the editor
    is closed.
    Returns None if the user didn't save the text file in his text editor.
    Parameters:
        * text      - a Unicode string
        * jumpIndex - an integer: position at which to put the caret
        * highlight - a substring; each occurence will be highlighted
    """
    text = self.convertLinebreaks(text)
    if config.editor:
        tempFilename = '%s.%s' % (tempfile.mktemp(),
                                  config.editor_filename_extension)
        tempFile = open(tempFilename, 'w')
        tempFile.write(text.encode(config.editor_encoding))
        tempFile.close()
        creationDate = os.stat(tempFilename).st_mtime
        command = self.command(tempFilename, text, jumpIndex)
        os.system(command)
        lastChangeDate = os.stat(tempFilename).st_mtime
        if lastChangeDate == creationDate:
            # Nothing changed
            return None
        else:
            newcontent = open(tempFilename).read().decode(
                                        config.editor_encoding)
            os.unlink(tempFilename)
            return self.restoreLinebreaks(newcontent)
    else:
        return self.restoreLinebreaks(
            pywikibot.ui.editText(text, jumpIndex=jumpIndex,
                                  highlight=highlight))