Roo/form/ComboBoxArray.js
[roojs1] / Roo / form / ComboBoxArray.js
index 9534e3e..530279c 100644 (file)
 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
@@ -452,21 +459,24 @@ Roo.extend(Roo.form.ComboBoxArray.Item, Roo.BoxComponent, {
                         String.format('{0}',this.data[this.tipField])
         );
         
-        if(this.cb.disabled){
-            return;
-        }
-
         this.el.child('img').on('click', this.remove, this);
         
     },
    
     remove : function()
     {
-        this.cb.items.remove(this);
-        this.el.child('img').un('click', this.remove, this);
-        this.el.remove();
-        this.cb.updateHiddenEl();
+        if(this.cb.disabled){
+            return;
+        }
+        
+        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);
+        }
         
-        this.cb.fireEvent('remove', this.cb, this);
     }
 });
\ No newline at end of file