code: function() {
          var yes = false, no = false;
          if (this.enableHighlight) {
              for (var i = 0;i < this.children.length;i++) {
                  switch(this.children[i].highlightState) {
                      case 0:
                          no = true;
                          break;
                      case 1:
                          yes = true;
                          break;
                      case 2:
                          yes = no = true;
                          break;
                  }
              }
              if (yes && no) {
                  this.highlightState = 2;
              } else if (yes) {
                  this.highlightState = 1;
              } else {
                  this.highlightState = 0;
              }
              this._setHighlightClassName();
              if (this.propagateHighlightUp) {
                  if (this.parent) {
                      this.parent._childrenHighlighted();
                  }
              }
          }
      }
docs: Checks whether all or part of the children of a node are highlighted and
  sets the node highlight to full, none or partial highlight.
  If set to propagate it will further call the parent
  @method _childrenHighlighted
  @private