whole_func_string: function(binding){
          var me = this,
              bindings = me.bindings,
              len = bindings.length,
              i, item, keys;
              
          if (me.processing) {
              me.bindings = bindings.slice(0);
          }
          
          keys = me.processKeys(binding.key);
          for (i = 0; i < len; ++i) {
              item = bindings[i];
              if (item.fn === binding.fn && item.scope === binding.scope) {
                  if (binding.alt == item.alt && binding.crtl == item.crtl && binding.shift == item.shift) {
                      if (Ext.Array.equals(item.keyCode, keys)) {
                          Ext.Array.erase(me.bindings, i, 1);
                          return;
                      }
                  }
              }
          }
      }
func_code_string: function(binding){
          var me = this,
              bindings = me.bindings,
              len = bindings.length,
              i, item, keys;
              
          if (me.processing) {
              me.bindings = bindings.slice(0);
          }
          
          keys = me.processKeys(binding.key);
          for (i = 0; i < len; ++i) {
              item = bindings[i];
              if (item.fn === binding.fn && item.scope === binding.scope) {
                  if (binding.alt == item.alt && binding.crtl == item.crtl && binding.shift == item.shift) {
                      if (Ext.Array.equals(item.keyCode, keys)) {
                          Ext.Array.erase(me.bindings, i, 1);
                          return;
                      }
                  }
              }
          }
      }
func_documentation_string: Remove a binding from this KeyMap.
  @param {Object} binding See {@link #addBinding for options}