---
metadata:
  - name: generator
    content: Diplodoc Platform v5.39.1
alternate:
  - https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/control.RulerControl.md
  - https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/control.RulerControl.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.ru/dev/jsapi-v2-1/doc/en/llms.txt

# control.RulerControl

Extends [control.Button](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/control.Button.md).

The "Ruler" control. The key of the control in the storage. [control.storage](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/control.storage.md) — "rulerControl".

[Constructor](#constructor-summary) | [Fields](#properties-summary) | [Events](#events-summary) | [Methods](#methods-summary)

## Constructor {#constructor-summary}

```javascript
control.RulerControl([parameters])
```

**Parameters:**

#|
|| **Parameter** | **Default value** | **Description**  ||
|| [`parameters`](#param-parameters) | — | Type: Object

Control parameters. ||
|| [`parameters.data`](#param-parameters.data) | — | Type: Object

Object describing the data of a control. ||
|| [`parameters.options`](#param-parameters.options) | — | Type: Object

Control options. ||
|| [`parameters.options.adjustMapMargin`](#param-parameters.options.adjustMapMargin) | false | Type: Boolean

Whether the control registers its size in the map margins manager [map.margin.Manager](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/map.margin.Manager.md). ||
|| [`parameters.options.position`](#param-parameters.options.position) | — | Type: Object

Object describing the position of a control. If the position option is set, the float option value is automatically treated as "none". ||
|| [`parameters.options.position.bottom`](#param-parameters.options.position.bottom) | 30 | Type: Number\|String

Position relative to the bottom edge of the map. ||
|| [`parameters.options.position.left`](#param-parameters.options.position.left) | 'auto' | Type: Number\|String

Position relative to the left edge of the map. ||
|| [`parameters.options.position.right`](#param-parameters.options.position.right) | 10 | Type: Number\|String

Position relative to the right edge of the map. ||
|| [`parameters.options.position.top`](#param-parameters.options.position.top) | 'auto' | Type: Number\|String

Position relative to the top edge of the map. ||
|| [`parameters.options.scaleLine`](#param-parameters.options.scaleLine) | true | Type: Boolean

Flags if the ruler control should be displayed to the right of the ruler button. ||
|| [`parameters.options.visible`](#param-parameters.options.visible) | true | Type: Boolean

Indicates if the control is displayed. ||
|| [`parameters.state`](#param-parameters.state) | — | Type: Object

Object describing the state of a control. ||
|#


## Fields {#properties-summary}

#|
|| **Name** | **Type** | **Description** ||
|| [data](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/control.Button.md#data) | [data.Manager](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/data.Manager.md)| Button data. Names of fields that are available via the data.Manager.get method: 
- image - Button icon, if available.
- content - Button content in HTML format.
- title - Text of the popup hint that appears when the mouse cursor hovers over the button.

Inherited from [control.Button](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/control.Button.md#data). ||
|| [events](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventEmitter.md#events) | [IEventManager](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md)| Event manager.

Inherited from [IEventEmitter](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventEmitter.md#events). ||
|| [options](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IControl.md#options) | [IOptionManager](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IOptionManager.md)| Options manager.

Inherited from [IControl](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IControl.md#options). ||
|| [press](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/control.Button.md#press) | | The event indicating that the button has been pressed. Unlike the click event, it is generated only if the state isEnabled == true. Instance of the Event class.

Inherited from [control.Button](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/control.Button.md#press). ||
|| [state](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/control.Button.md#state) | [data.Manager](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/data.Manager.md)| Button state. Names of fields that are available via the data.Manager.get method: 
- selected - Indicates whether the button is selected.
- enabled - Indicates whether the button is active.
- size - The size that is currently set for the button.

Inherited from [control.Button](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/control.Button.md#state). ||
|#

## Events {#events-summary}

#|
|| **Name** | **Description** ||
|| [click](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/control.Button.md#event-click)| Clicking the button. Instance of the [Event](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md) class.

Inherited from [control.Button](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/control.Button.md#event-click). ||
|| [deselect](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#event-deselect)| The control is not selected.

Inherited from [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#event-deselect). ||
|| [disable](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#event-disable)| The control is unavailable.

Inherited from [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#event-disable). ||
|| [enable](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#event-enable)| The control is available.

Inherited from [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#event-enable). ||
|| [optionschange](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ICustomizable.md#event-optionschange)| Change to the object options.

Inherited from [ICustomizable](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ICustomizable.md#event-optionschange). ||
|| [parentchange](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IChild.md#event-parentchange)| The parent object reference changed.

Data fields:

- oldParent - Old parent.
- newParent - New parent.

Inherited from [IChild](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IChild.md#event-parentchange). ||
|| [select](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#event-select)| The control is selected.

Inherited from [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#event-select). ||
|#

## Methods {#methods-summary}

#|
|| **Name** | **Returns** | **Description** ||
|| [deselect](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#deselect)() | | Cancels selection of the control (turns it off).

Inherited from [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#deselect). ||
|| [disable](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#disable)() | | Makes the control unavailable (user actions are not allowed).

Inherited from [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#disable). ||
|| [enable](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#enable)() | | Makes the control available (user actions are allowed).

Inherited from [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#enable). ||
|| [getMap](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/control.Button.md#getMap)() | [Map](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Map.md)
| Returns reference to the map.

Inherited from [control.Button](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/control.Button.md#getMap). ||
|| [getParent](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IControl.md#getParent)() | [IControlParent](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IControlParent.md)\|null
| Returns link to the parent object, or null if the parent element was not set.

Inherited from [IControl](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IControl.md#getParent). ||
|| [isEnabled](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#isEnabled)() | Boolean
| Returns true if the control is available, or false if it is unavailable.

Inherited from [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#isEnabled). ||
|| [isSelected](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#isSelected)() | Boolean
| Returns true if the control is selected, or false if it is not selected.

Inherited from [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#isSelected). ||
|| [select](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#select)() | | Selects (turns on) the control.

Inherited from [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISelectableControl.md#select). ||
|| [setParent](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IControl.md#setParent)([parent](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IControl.md#setParent-param-parent)) | [IChildOnMap](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IChildOnMap.md)
| Sets the parent object. If the null value is passed, the manager element will only be deleted from the current parent object.

Inherited from [IControl](https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IControl.md#setParent). ||
|#
