[OpenLayers-Users] mousedown

Eric Lemoine eric.lemoine at camptocamp.com
Wed May 6 12:32:01 EDT 2009


On Tuesday, May 5, 2009, Greg Ederer <greg at 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 <greg at 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 at openlayers.org
> http://openlayers.org/mailman/listinfo/users
>
>
> _______________________________________________
> Users mailing list
> Users at 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.lemoine at 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.lemoine at camptocamp.com
http://www.camptocamp.com



More information about the Users mailing list