define("dijit/_OnDijitClickMixin", [ "dojo/on", "dojo/_base/array", // array.forEach "dojo/keys", // keys.ENTER keys.SPACE "dojo/_base/declare", // declare "dojo/has", // has("dom-addeventlistener") "dojo/_base/unload", // unload.addOnWindowUnload "dojo/_base/window", // win.doc.addEventListener win.doc.attachEvent win.doc.detachEvent "./a11yclick" ], function(on, array, keys, declare, has, unload, win, a11yclick){ // module: // dijit/_OnDijitClickMixin var ret = declare("dijit._OnDijitClickMixin", null, { connect: function( /*Object|null*/ obj, /*String|Function*/ event, /*String|Function*/ method){ // summary: // Connects specified obj/event to specified method of this object // and registers for disconnect() on widget destroy. // description: // Provide widget-specific analog to connect.connect, except with the // implicit use of this widget as the target object. // This version of connect also provides a special "ondijitclick" // event which triggers on a click or space or enter keyup. // Events connected with `this.connect` are disconnected upon // destruction. // returns: // A handle that can be passed to `disconnect` in order to disconnect before // the widget is destroyed. // example: // | var btn = new Button(); // | // when foo.bar() is called, call the listener we're going to // | // provide in the scope of btn // | btn.connect(foo, "bar", function(){ // | console.debug(this.toString()); // | }); // tags: // protected return this.inherited(arguments, [obj, event == "ondijitclick" ? a11yclick : event, method]); } }); ret.a11yclick = a11yclick; // back compat return ret; });