--- /dev/null
+/*!
+ * Ext JS Library 3.0.0
+ * Copyright(c) 2006-2009 Ext JS, LLC
+ * licensing@extjs.com
+ * http://www.extjs.com/license
+ */
+/**\r
+ * @class Ext.Element\r
+ */\r
+Ext.Element.addMethods({\r
+ /**\r
+ * Convenience method for constructing a KeyMap\r
+ * @param {Number/Array/Object/String} key Either a string with the keys to listen for, the numeric key code, array of key codes or an object with the following options:\r
+ * {key: (number or array), shift: (true/false), ctrl: (true/false), alt: (true/false)}\r
+ * @param {Function} fn The function to call\r
+ * @param {Object} scope (optional) The scope of the function\r
+ * @return {Ext.KeyMap} The KeyMap created\r
+ */\r
+ addKeyListener : function(key, fn, scope){\r
+ var config;\r
+ if(!Ext.isObject(key) || Ext.isArray(key)){\r
+ config = {\r
+ key: key,\r
+ fn: fn,\r
+ scope: scope\r
+ };\r
+ }else{\r
+ config = {\r
+ key : key.key,\r
+ shift : key.shift,\r
+ ctrl : key.ctrl,\r
+ alt : key.alt,\r
+ fn: fn,\r
+ scope: scope\r
+ };\r
+ }\r
+ return new Ext.KeyMap(this, config);\r
+ },\r
+\r
+ /**\r
+ * Creates a KeyMap for this element\r
+ * @param {Object} config The KeyMap config. See {@link Ext.KeyMap} for more details\r
+ * @return {Ext.KeyMap} The KeyMap created\r
+ */\r
+ addKeyMap : function(config){\r
+ return new Ext.KeyMap(this, config);\r
+ }\r
+});
\ No newline at end of file