我有一个带有treeviewdragdrop插件的树状面板。在我的控制器中,我需要让用户选择是否要删除节点或复制它。
Ext.define('App.view.admin.LevelTree', {
extend: 'Ext.tree.Panel',
xtype: 'leveltree',
requires: ['Ext.tree.plugin.TreeViewDragDrop'],
viewConfig: {
preserveScrollOnRefresh: true,
plugins: {
ptype: 'treeviewdragdrop'
}
}
这是我的控制器代码:
me.getLevelTree().getView().on('drop', me.doChangeParent, me);
-
doChangeParent: function(node, data, overModel, dropPosition, eOpts) {...}
如何根据用户选择在树状面板(控制器中)中设置 copy:true 属性?
答案 0 :(得分:1)
您可以像这样使用插件和视图配置:
viewConfig: {
plugins: {
ptype: 'treeviewdragdrop'
},
listeners: {
beforedrop: function(node, data, overModel, dropPosition, dropHandlers) {
dropHandlers.wait = true;
Ext.MessageBox.confirm('Copy or move', 'If you want to copy node, press Yes', function(btn) {
data.copy = (btn === 'yes');
dropHandlers.processDrop();
});
}
}
},