code: def __rename_file(self, source, target):
          
  
          for file_node in self.__script_editor.model.get_file_nodes(source, self.__script_editor.model.root_node):
              self.__script_editor.unregister_node_path(file_node)
              self.__rename_path(source, target)
              self.__script_editor.register_node_path(file_node)
              if self.__script_editor.model.is_authoring_node(file_node):
                  self.__set_authoring_nodes(source, target)
              else:
                  self.__script_editor.model.update_project_nodes(file_node.parent)
docs: Renames a file using given source and target names.
  
          :param source: Source file.
          :type source: unicode
          :param target: Target file.
          :type target: unicode