'Clear all boxes around items.'

def clear_boxed(self):

    def process_tag(tag_index, tag_item):
        if tag_item.boxed:
            tag_item.boxed = False
            self.dataChanged.emit(tag_index, tag_index)
        for (i, c) in enumerate(tag_item.children):
            process_tag(self.index(i, 0, tag_index), c)
    def process_level(category_index):
        for j in xrange(self.rowCount(category_index)):
            tag_index = self.index(j, 0, category_index)
            tag_item = self.get_node(tag_index)
            if tag_item.boxed:
                tag_item.boxed = False
                self.dataChanged.emit(tag_index, tag_index)
            if (tag_item.type == TagTreeItem.CATEGORY):
                process_level(tag_index)
            else:
                process_tag(tag_index, tag_item)
    for i in xrange(self.rowCount(QModelIndex())):
        process_level(self.index(i, 0, QModelIndex()))
