OpenLayers.Handler.Click - OpenLayers

# OpenLayers. Handler. Click

A handler for mouse clicks. The intention of this handler is to give controls more flexibility with handling clicks. Browsers trigger click events twice for a double-click. In addition, the mousedown, mousemove, mouseup sequence fires a click event. With this handler, controls can decide whether to ignore clicks associated with a double click. By setting a pixelTolerance, controls can also ignore clicks that include a drag. Create a new instance with the OpenLayers.Handler.Click constructor.

#### Inherits from

- OpenLayers.Handler

Summary

OpenLayers. Handler. Click | A handler for mouse clicks.
Properties |
delay | {Number} Number of milliseconds between clicks before the event is considered a double-click.
single | {Boolean} Handle single clicks.
double | {Boolean} Handle double-clicks.
pixelTolerance | {Number} Maximum number of pixels between mouseup and mousedown for an event to be considered a click.
stopSingle | {Boolean} Stop other listeners from being notified of clicks.
stopDouble | {Boolean} Stop other listeners from being notified of double-clicks.
timerId | {Number} The id of the timeout waiting to clear the delayedCall.
down | {OpenLayers.Pixel} The pixel location of the last mousedown.
rightclickTimerId | {Number} The id of the right mouse timeout waiting to clear the <delayedEvent>.
Constructor |
OpenLayers. Handler. Click | Create a new click handler.
Functions |
mousedown | Handle mousedown.
mouseup | Handle mouseup.
rightclick | Handle rightclick.
delayedRightCall | Sets rightclickTimerId to null.
dblclick | Handle dblclick.
click | Handle click.
passesTolerance | Determine whether the event is within the optional pixel tolerance.
clearTimer | Clear the timer and set timerId to null.
delayedCall | Sets timerId to null.
deactivate | Deactivate the handler.

### Properties

### delay

{Number} Number of milliseconds between clicks before the event is considered a double-click.

### single

{Boolean} Handle single clicks. Default is true. If false, clicks will not be reported. If true, single-clicks will be reported.

### double

{Boolean} Handle double-clicks. Default is false.

### pixelTolerance

{Number} Maximum number of pixels between mouseup and mousedown for an event to be considered a click. Default is 0. If set to an integer value, clicks with a drag greater than the value will be ignored. This property can only be set when the handler is constructed.

### stopSingle

{Boolean} Stop other listeners from being notified of clicks. Default is false. If true, any click listeners registered before this one will not be notified of any click event (associated with double or single clicks).

### stopDouble

{Boolean} Stop other listeners from being notified of double-clicks. Default is false. If true, any click listeners registered before this one will not be notified of any double-click events.

The one caveat with stopDouble is that given a map with two click handlers, one with stopDouble true and the other with stopSingle true, the stopSingle handler should be activated last to get uniform cross-browser performance. Since IE triggers one click with a dblclick and FF triggers two, if a stopSingle handler is activated first, all it gets in IE is a single click when the second handler stops propagation on the dblclick.

### timerId

{Number} The id of the timeout waiting to clear the delayedCall.

### down

{OpenLayers.Pixel} The pixel location of the last mousedown.

### rightclickTimerId

{Number} The id of the right mouse timeout waiting to clear the <delayedEvent>.

### Constructor

### OpenLayers. Handler. Click

Create a new click handler.

#### Parameters

control | {OpenLayers.Control} The control that is making use of this handler. If a handler is being used without a control, the handler’s setMap method must be overridden to deal properly with the map.
callbacks | {Object} An object with keys corresponding to callbacks that will be called by the handler. The callbacks should expect to recieve a single argument, the click event. Callbacks for ‘click’ and ‘dblclick’ are supported.
options | {Object} Optional object whose properties will be set on the handler.

### Functions

### mousedown

Handle mousedown. Only registered as a listener if pixelTolerance is a non-zero value at construction.

#### Returns

{Boolean} Continue propagating this event.

### mouseup

> mouseup: function ( | evt | )

Handle mouseup. Installed to support collection of right mouse events.

#### Returns

{Boolean} Continue propagating this event.

### rightclick

> rightclick: function( | evt | )

Handle rightclick. For a dblrightclick, we get two clicks so we need to always register for dblrightclick to properly handle single clicks.

#### Returns

{Boolean} Continue propagating this event.

### delayedRightCall

> delayedRightCall: function( | evt | )

Sets rightclickTimerId to null. And optionally triggers the rightclick callback if evt is set.

### dblclick

> dblclick: function( | evt | )

Handle dblclick. For a dblclick, we get two clicks in some browsers (FF) and one in others (IE). So we need to always register for dblclick to properly handle single clicks.

#### Returns

{Boolean} Continue propagating this event.

### click

> click: function( | evt | )

Handle click.

#### Returns

{Boolean} Continue propagating this event.

### passesTolerance

> passesTolerance: function( | evt | )

Determine whether the event is within the optional pixel tolerance. Note that the pixel tolerance check only works if mousedown events get to the listeners registered here. If they are stopped by other elements, the pixelTolerance will have no effect here (this method will always return true).

#### Returns

{Boolean} The click is within the pixel tolerance (if specified).

### clearTimer

> clearTimer: function()

Clear the timer and set timerId to null.

### delayedCall

> delayedCall: function( | evt | )

Sets timerId to null. And optionally triggers the click callback if evt is set.

### deactivate

> deactivate: function()

Deactivate the handler.

#### Returns

{Boolean} The handler was successfully deactivated.

> delayedCall: function( | evt | )

Sets timerId to null.
This class represents a screen coordinate, in x and y coordinates

> mouseup: function ( | evt | )

Handle mouseup.

> rightclick: function( | evt | )

Handle rightclick.

> delayedRightCall: function( | evt | )

Sets rightclickTimerId to null.
{Number} The id of the right mouse timeout waiting to clear the delayedEvent.

> dblclick: function( | evt | )

Handle dblclick.

> click: function( | evt | )

Handle click.

> passesTolerance: function( | evt | )

Determine whether the event is within the optional pixel tolerance.

> clearTimer: function()

Clear the timer and set timerId to null.
{Number} The id of the timeout waiting to clear the delayedCall.

> deactivate: function()

Deactivate the handler.
{Number} Maximum number of pixels between mouseup and mousedown for an event to be considered a click.
Create a new click handler.
Base class to construct a higher-level handler for event sequences.
Controls affect the display or behavior of the map.
Close