whole_func_string: function (obj, callback, skip_animation) {
          obj = this._get_node(obj);
          if(!obj.length) { return false; }
          if(!obj.hasClass("jstree-closed")) { if(callback) { callback.call(); } return false; }
          var s = skip_animation || is_ie6 ? 0 : this._get_settings().core.animation,
            t = this;
          if(!this._is_loaded(obj)) {
            obj.children("a").addClass("jstree-loading");
            this.load_node(obj, function () { t.open_node(obj, callback, skip_animation); }, callback);
          }
          else {
            if(s) { obj.children("ul").css("display","none"); }
            obj.removeClass("jstree-closed").addClass("jstree-open").children("a").removeClass("jstree-loading");
            if(s) { obj.children("ul").stop(true).slideDown(s, function () { this.style.display = ""; }); }
            this.__callback({ "obj" : obj });
            if(callback) { callback.call(); }
          }
        }
func_code_string: function (obj, callback, skip_animation) {
          obj = this._get_node(obj);
          if(!obj.length) { return false; }
          if(!obj.hasClass("jstree-closed")) { if(callback) { callback.call(); } return false; }
          var s = skip_animation || is_ie6 ? 0 : this._get_settings().core.animation,
            t = this;
          if(!this._is_loaded(obj)) {
            obj.children("a").addClass("jstree-loading");
            this.load_node(obj, function () { t.open_node(obj, callback, skip_animation); }, callback);
          }
          else {
            if(s) { obj.children("ul").css("display","none"); }
            obj.removeClass("jstree-closed").addClass("jstree-open").children("a").removeClass("jstree-loading");
            if(s) { obj.children("ul").stop(true).slideDown(s, function () { this.style.display = ""; }); }
            this.__callback({ "obj" : obj });
            if(callback) { callback.call(); }
          }
        }
func_documentation_string: open/close