UNPKG

@7polo/kityminder-core

Version:
63 lines (55 loc) 1.77 kB
/** * @fileOverview * * 只读模式支持 * * @author: techird * @copyright: Baidu FEX, 2014 */ define(function(require, exports, module) { var kity = require('./kity'); var Minder = require('./minder'); var MinderEvent = require('./event'); Minder.registerInitHook(function(options) { if (options.readOnly) { this.setDisabled(); } }); kity.extendClass(Minder, { disable: function() { var me = this; //禁用命令 me.bkqueryCommandState = me.queryCommandState; me.bkqueryCommandValue = me.queryCommandValue; me.queryCommandState = function(type) { var cmd = this._getCommand(type); if (cmd && cmd.enableReadOnly) { return me.bkqueryCommandState.apply(me, arguments); } return -1; }; me.queryCommandValue = function(type) { var cmd = this._getCommand(type); if (cmd && cmd.enableReadOnly) { return me.bkqueryCommandValue.apply(me, arguments); } return null; }; this.setStatus('readonly'); me._interactChange(); }, enable: function() { var me = this; if (me.bkqueryCommandState) { me.queryCommandState = me.bkqueryCommandState; delete me.bkqueryCommandState; } if (me.bkqueryCommandValue) { me.queryCommandValue = me.bkqueryCommandValue; delete me.bkqueryCommandValue; } this.setStatus('normal'); me._interactChange(); } }); });