docs: def close_file(self, file=None, leave_first_editor=True):
          """
          Closes either given file or current **Script_Editor_tabWidget** Widget tab Model editor file.
  
          :param file: File to save.
          :type file: unicode
          :param leave_first_editor: Leave first editor.
          :type leave_first_editor: bool
          :return: Method success.
          :rtype: bool
          """
  
          editor = file and self.get_editor(file) or self.get_current_editor()
          if not editor:
              return False
  
          file = editor.file
          LOGGER.info("{0} | Closing '{1}' file!".format(self.__class__.__name__, file))
          if not editor.close_file():
              return False
  
          if self.__model.delete_authoring_nodes(editor):
              if not self.has_editor_tab() and leave_first_editor:
                  self.new_file()
              self.file_closed.emit(file)
              return True