Sets the Model Nodes using given search results.

        :param search_results: Search results.
        :type search_results: list
        :return: Method success.
        :rtype: bool

def set_search_results(self, search_results):
        """
        Sets the Model Nodes using given search results.

        :param search_results: Search results.
        :type search_results: list
        :return: Method success.
        :rtype: bool
        """

        root_node = umbra.ui.nodes.DefaultNode(name="InvisibleRootNode")
        for search_result in search_results:
            search_file_node = SearchFileNode(name=search_result.file,
                                              parent=root_node)
            search_file_node.update(search_result)
            width = \
                max(self.__default_line_number_width,
                    max([len(foundations.strings.to_string(occurence.line)) for occurence in
                         search_result.occurrences]))
            for occurence in search_result.occurrences:
                formatter = "{{0:>{0}}}".format(width)
                name = "{0}:{1}".format(formatter.format(occurence.line + 1).replace(" ", "&nbsp;"),
                                        self.__format_occurence(occurence))
                search_occurence_node = SearchOccurenceNode(name=name,
                                                            parent=search_file_node)
                search_occurence_node.update(occurence)
        self.__model.initialize_model(root_node)
        return True