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

# control.RouteEditor

Расширяет [control.Button](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/control.Button.md).

Элемент управления "Редактор маршрутов". Ключ элемента управления в хранилище [control.storage](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/control.storage.md) — "routeEditor".

[Конструктор](#constructor-summary) | [Поля ](#properties-summary) | [События ](#events-summary) | [Методы ](#methods-summary)

## Конструктор {#constructor-summary}

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

**Параметры:**

#|
|| **Параметр** | **Значение по умолчанию** | **Описание**  ||
|| [`parameters`](#param-parameters) | — | Тип: Object

Параметры элемента управления. ||
|| [`parameters.data`](#param-parameters.data) | — | Тип: Object

Объект, описывающий данные элемента управления. ||
|| [`parameters.data.image`](#param-parameters.data.image) | 'routes' | Тип: String

URL иконки кнопки. ||
|| [`parameters.data.title`](#param-parameters.data.title) | — | Тип: String

Текст всплывающей подсказки, которая появляется при наведении на кнопку курсора мыши. ||
|| [`parameters.options`](#param-parameters.options) | — | Тип: Object

Опции элемента управления. ||
|| [`parameters.options.adjustMapMargin`](#param-parameters.options.adjustMapMargin) | false | Тип: Boolean

Регистрирует ли элемент управления свои размеры в менеджере отступов карты [map.margin.Manager](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/map.margin.Manager.md). ||
|| [`parameters.options.float`](#param-parameters.options.float) | "right" | Тип: String

Сторона, по которой нужно выравнивать элемент управления. Может принимать три значения: "left", "right" или "none". При значении "left" или "right" элементы управления выстраиваются друг за другом, начиная от левого или правого края карты соответственно. При значении "none" элементы управления позиционируется только по значениям опций left, right, bottom, top относительно границ карты. Также смотрите описание опции position. ||
|| [`parameters.options.floatIndex`](#param-parameters.options.floatIndex) | 100 | Тип: Number

Приоритет расположения элемента управления. Элемент с максимальным приоритетом. ||
|| [`parameters.options.layout`](#param-parameters.options.layout) | — | Тип: [ISelectableControlLayout](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControlLayout.md)\|String

Конструктор макета элемента управления, реализующий интерфейс [ISelectableControlLayout](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControlLayout.md) или ключ макета в хранилище [layout.storage](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/layout.storage.md). В конструктор макета передается объект, содержащий поля:
- control - ссылка на элемент управления;
- options — менеджер опций элемента управления control.FullscreenControl.options;
- data — менеджер данных элемента управления control.FullscreenControl.data;
- state - менеджер состояния элемента управления [control.FullscreenControl.state](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/control.FullscreenControl.md#state).
Макет меняет свой внешний вид на основе данных, состояния и опций элемента управления. Элемент управления, в свою очередь, реагирует на интерфейсные события макета ||
|| [`parameters.options.maxWidth`](#param-parameters.options.maxWidth) | 28 | Тип: Number\|Number[]

Максимальная ширина элемента управления в различных состояниях. Если задано число, то считается, что элемент управления имеет одинаковые максимальные размеры во всех состояниях. Если задан массив, то он будет трактоваться как максимальная ширина в различных состояниях - от меньшего к большему. Количество доступных состояний задается в экземпляре класса [control.Manager](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/control.Manager.md) через опцию states. Этот класс обычно является полем [Map.controls](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Map.md#controls). По умолчанию у элементов управления есть три состояния - ['small', 'medium', 'large']. По умолчанию элемент управления не изменяет своего размера, всегда имея вид кнопки с иконкой. ||
|| [`parameters.options.position`](#param-parameters.options.position) | — | Тип: Object

Объект, описывающий позицию элемента управления. При указании опции position значение опции float автоматически трактуется как "none". ||
|| [`parameters.options.position.bottom`](#param-parameters.options.position.bottom) | 'auto' | Тип: Number\|String

Положение относительно нижнего края карты. ||
|| [`parameters.options.position.left`](#param-parameters.options.position.left) | 'auto' | Тип: Number\|String

Положение относительно левого края карты. ||
|| [`parameters.options.position.right`](#param-parameters.options.position.right) | 'auto' | Тип: Number\|String

Положение относительно правого края карты. ||
|| [`parameters.options.position.top`](#param-parameters.options.position.top) | 'auto' | Тип: Number\|String

Положение относительно верхнего края карты. ||
|| [`parameters.options.visible`](#param-parameters.options.visible) | true | Тип: Boolean

Признак того, что элемент управления отображается. ||
|| [`parameters.state`](#param-parameters.state) | — | Тип: Object

Объект, описывающий состояние элемента управления. ||
|#


**Пример:** 

```javascript
// Добавляем контрол на карту.
map.controls.add('routeEditor');
```

## Поля {#properties-summary}

#|
|| **Имя** | **Тип** | **Описание** ||
|| [data](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/control.Button.md#data) | [data.Manager](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/data.Manager.md) | Данные кнопки. Имена полей, доступных через метод data.Manager.get:
- image - иконка кнопки, если есть;
- content - cодержимое кнопки в виде HTML;
- title - текст всплывающей подсказки, которая появляется при наведении на кнопку курсора мыши.

Унаследовано от [control.Button](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/control.Button.md#data). ||
|| [events](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IEventEmitter.md#events) | [IEventManager](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IEventManager.md) | Менеджер событий.

Унаследовано от [IEventEmitter](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IEventEmitter.md#events). ||
|| [options](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IControl.md#options) | [IOptionManager](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IOptionManager.md) | Менеджер опций.

Унаследовано от [IControl](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IControl.md#options). ||
|| [press](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/control.Button.md#press) | | Событие, сигнализирующее о том, что кнопка была нажата. В отличии от click генерируется только если состояние isEnabled == true. Экземпляр класса Event.

Унаследовано от [control.Button](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/control.Button.md#press). ||
|| [state](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/control.Button.md#state) | [data.Manager](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/data.Manager.md) | Состояние кнопки. Имена полей, доступных через метод data.Manager.get:
- selected - признак, нажата ли кнопка;
- enabled - признак, активна ли кнопка.
- size - размер, который в данный момент выставлен кнопке;

Унаследовано от [control.Button](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/control.Button.md#state). ||
|#

## События {#events-summary}

#|
|| **Имя** | **Описание** ||
|| [click](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/control.Button.md#event-click) | Нажатие на кнопку. Экземпляр класса [Event](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md).

Унаследовано от [control.Button](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/control.Button.md#event-click). ||
|| [deselect](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#event-deselect) | Элемент управления не выбран.

Унаследовано от [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#event-deselect). ||
|| [disable](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#event-disable) | Элемент управления стал недоступным.

Унаследовано от [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#event-disable). ||
|| [enable](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#event-enable) | Элемент управления стал доступным.

Унаследовано от [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#event-enable). ||
|| [optionschange](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ICustomizable.md#event-optionschange) | Изменение в опциях объекта.

Унаследовано от [ICustomizable](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ICustomizable.md#event-optionschange). ||
|| [parentchange](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IChild.md#event-parentchange) | Сменился родительский объект.

Поля данных:

- oldParent - старый родитель;
- newParent - новый родитель.

Унаследовано от [IChild](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IChild.md#event-parentchange). ||
|| [select](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#event-select) | Элемент управления выбран.

Унаследовано от [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#event-select). ||
|#

## Методы {#methods-summary}

#|
|| **Имя** | **Возвращает** | **Описание** ||
|| [deselect](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#deselect)() | | Отменяет выбор элемента управления (выключает).

Унаследован от [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#deselect). ||
|| [disable](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#disable)() | | Делает элемент управления недоступным (запрещены пользовательские действия).

Унаследован от [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#disable). ||
|| [enable](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#enable)() | | Делает элемент управления доступным (разрешены пользовательские действия).

Унаследован от [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#enable). ||
|| [getMap](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/control.Button.md#getMap)() | [Map](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Map.md) | Возвращает ссылку на карту.

Унаследован от [control.Button](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/control.Button.md#getMap). ||
|| [getParent](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IControl.md#getParent)() | [IControlParent](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IControlParent.md)\|null | Возвращает ссылку на родительский объект или null, если родительский элемент не был установлен.

Унаследован от [IControl](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IControl.md#getParent). ||
|| [getRoute](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/control.RouteEditor.md#getRoute)() | [router.Route](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/router.Route.md) | Возвращает маршрут. ||
|| [isEnabled](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#isEnabled)() | Boolean | Возвращает true - элемент управления доступен, false - недоступен.

Унаследован от [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#isEnabled). ||
|| [isSelected](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#isSelected)() | Boolean | Возвращает true - элемент управления выбран, false - не выбран.

Унаследован от [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#isSelected). ||
|| [select](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#select)() | | Выбирает (включает) элемент управления.

Унаследован от [ISelectableControl](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISelectableControl.md#select). ||
|| [setParent](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IControl.md#setParent)([parent](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IControl.md#setParent-param-parent)) | [IChildOnMap](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IChildOnMap.md) | Устанавливает родительский объект. Если передать значение null, то элемент управления будет только удален из текущего родительского объекта.

Унаследован от [IControl](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IControl.md#setParent). ||
|#

## Описание методов {#method_detail}

### getRoute {#getRoute}

```javascript
{router.Route} getRoute()
```

**Возвращает** маршрут.


<!-- XLIFF_FARM_MjkyNzc5_CACHING -->