X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=Roo%2Fform%2FComboBoxArray.js;h=530279c2942e25a3e1b1cda5d3b4d03e0a26d908;hb=23efba8e006290e73e13578aa736fb8cccc2df6e;hp=76c4892c69ceaca1897f97cd0384dc2e321e27da;hpb=a87f7a0edb0d345efa9332112546a65937f7bb5b;p=roojs1 diff --git a/Roo/form/ComboBoxArray.js b/Roo/form/ComboBoxArray.js index 76c4892c69..530279c294 100644 --- a/Roo/form/ComboBoxArray.js +++ b/Roo/form/ComboBoxArray.js @@ -37,6 +37,13 @@ Roo.form.ComboBoxArray = function(config) { this.addEvents({ + /** + * @event beforeremove + * Fires before remove the value from the list + * @param {Roo.form.ComboBoxArray} _self This combo box array + * @param {Roo.form.ComboBoxArray.Item} item removed item + */ + 'beforeremove' : true, /** * @event remove * Fires when remove the value from the list @@ -230,7 +237,7 @@ Roo.extend(Roo.form.ComboBoxArray, Roo.form.TextField, var valueField = this.combo.valueField; var displayField = this.combo.displayField; if (this.items.indexOfKey(rec[valueField]) > -1) { - console.log("GOT " + rec.data.id); + //console.log("GOT " + rec.data.id); return; } @@ -461,11 +468,15 @@ Roo.extend(Roo.form.ComboBoxArray.Item, Roo.BoxComponent, { if(this.cb.disabled){ return; } - this.cb.items.remove(this); - this.el.child('img').un('click', this.remove, this); - this.el.remove(); - this.cb.updateHiddenEl(); - this.cb.fireEvent('remove', this.cb, this); + if(false !== this.cb.fireEvent('beforeremove', this.cb, this)){ + this.cb.items.remove(this); + this.el.child('img').un('click', this.remove, this); + this.el.remove(); + this.cb.updateHiddenEl(); + + this.cb.fireEvent('remove', this.cb, this); + } + } }); \ No newline at end of file