﻿function treeCollapseAllNodes(sender) {
    var treeView = sender;
    var nodes = treeView.get_allNodes();

    for (var i = 0; i < nodes.length; i++) {
        var node = nodes[i];

        if (node.get_nodes() != null) {
            var selected = isSelected(node.get_nodes());

            if (!selected) {
                node.collapse();
            }
        }
    }
}

function isSelected(nodeCollection) {
    for (var j = 0; j < nodeCollection.get_count(); j++) {
        var node = nodeCollection.getNode(j);

        if (node.get_selected()) {
            return true;
        }
    }

    return false;
}