On Tuesday, May 5, 2009, Greg Ederer <g...@ergonosis.com> wrote: > Is there some way to register a callback to handle mousedown? I really need > this to get my user interface working properly.
Have you tried something like: map.events.on({ "mousedown": function(e) { // do something on mousedown } }); ? > > Cheers, > > Greg > > > On May 5, 2009, at 9:59 AM, Eric Lemoine wrote: > > > On Monday, May 4, 2009, Greg Ederer <g...@ergonosis.com> wrote: > > For reference, here's my code so far: > > OpenLayers.Control.Click = OpenLayers.Class(OpenLayers.Control, { > defaultHandlerOptions: { > 'single': true, > 'double': false, > 'mousedown' : false, > 'pixelTolerance': 0, > 'stopSingle': false, > 'stopDouble': false > }, > > initialize: function(options) > { > this.handlerOptions = OpenLayers.Util.extend( > {}, this.defaultHandlerOptions > ); > OpenLayers.Control.prototype.initialize.apply( > this, arguments > ); > this.handler = new OpenLayers.Handler.Click( > this, { > 'click': this.onClick, > 'dblclick': this.onDblclick, > 'mousedown' : this.onMouseDown > }, this.handlerOptions > ); > }, > > onMouseDown : function(evt) > { > alert('hi'); > }, > > ... > > var controls = { > "single": new OpenLayers.Control.Click({ > hanlerOptions: { > "single": true > } > }), > "mousedown": new OpenLayers.Control.Click({ > hanlerOptions: { > "single": true > } > }), > "double": new OpenLayers.Control.Click({ > handlerOptions: { > "single": false, > "double": true > } > }), > "both": new OpenLayers.Control.Click({ > handlerOptions: { > "single": true, > "double": true > } > }), > "drag": new OpenLayers.Control.Click({ > handlerOptions: { > "single": true, > "pixelTolerance": null > } > }), > "stopsingle": new OpenLayers.Control.Click({ > handlerOptions: { > "single": true, > "stopSingle": true > } > }), > "stopdouble": new OpenLayers.Control.Click({ > handlerOptions: { > "single": false, > "double": true, > "stopDouble": true > } > }) > }; > > var control; > for(var key in controls) { > control = controls[key]; > // only to route output here > control.key = key; > this.map.addControl(control); > //console.log('added control: ' + key); > } > > But, onMouseDown never gets called. > > > This is expected. The Click handler can be passed "click" and > "dblclick" callbacks only. > > Cheers, > > > > > > > Greg > > On May 4, 2009, at 10:16 AM, Greg Ederer wrote: > > > Hi, > > I need to capture mousedown events on a Map. I'm using a custom > OpenLayers.Control.Click for click and dblclick. But, Click does not > appear to handle mousedown events. Any suggestions? > > Thanks! > > Greg > _______________________________________________ > Users mailing list > Users@openlayers.org > http://openlayers.org/mailman/listinfo/users > > > _______________________________________________ > Users mailing list > Users@openlayers.org > http://openlayers.org/mailman/listinfo/users > > > > -- > Eric Lemoine > > Camptocamp France SAS > Savoie Technolac, BP 352 > 73377 Le Bourget du Lac, Cedex > > Tel : 00 33 4 79 44 44 96 > Mail : eric.lemo...@camptocamp.com > http://www.camptocamp.com > > > > -- Eric Lemoine Camptocamp France SAS Savoie Technolac, BP 352 73377 Le Bourget du Lac, Cedex Tel : 00 33 4 79 44 44 96 Mail : eric.lemo...@camptocamp.com http://www.camptocamp.com _______________________________________________ Users mailing list Users@openlayers.org http://openlayers.org/mailman/listinfo/users