corrade-nucleus-nucleons
/pack-rat/003_pack_rat/pack-rat/bower_components/jstree/src/jstree.conditionalselect.js |
@@ -0,0 +1,38 @@ |
/** |
* ### Conditionalselect plugin |
* |
* This plugin allows defining a callback to allow or deny node selection by user input (activate node method). |
*/ |
/*globals jQuery, define, exports, require, document */ |
(function (factory) { |
"use strict"; |
if (typeof define === 'function' && define.amd) { |
define('jstree.conditionalselect', ['jquery','jstree'], factory); |
} |
else if(typeof exports === 'object') { |
factory(require('jquery'), require('jstree')); |
} |
else { |
factory(jQuery, jQuery.jstree); |
} |
}(function ($, jstree, undefined) { |
"use strict"; |
|
if($.jstree.plugins.conditionalselect) { return; } |
|
/** |
* a callback (function) which is invoked in the instance's scope and receives two arguments - the node and the event that triggered the `activate_node` call. Returning false prevents working with the node, returning true allows invoking activate_node. Defaults to returning `true`. |
* @name $.jstree.defaults.checkbox.visible |
* @plugin checkbox |
*/ |
$.jstree.defaults.conditionalselect = function () { return true; }; |
$.jstree.plugins.conditionalselect = function (options, parent) { |
// own function |
this.activate_node = function (obj, e) { |
if(this.settings.conditionalselect.call(this, this.get_node(obj), e)) { |
parent.activate_node.call(this, obj, e); |
} |
}; |
}; |
|
})); |