Документация
Справочник JavaScript API
2.1.56 (текущая версия)
collection
interactivityModel
Интерфейсы

control.Manager

Менеджер элементов управления.

Конструктор | Поля | Методы

Конструктор

control.Manager(map[, controls[, options]])

Параметры:

ПараметрЗначение по умолчаниюОписание
map *
[no-highlight[

* Обязательный параметр/опция.

]no-highlight]

Тип: Map

Экземпляр карты.

controls

Тип: String[]|IControl[]

Элементы управления, которые требуется разместить на карте изначально.

options

Тип: Object

Опции менеджера.

options.margin 10

Тип: Number

Отступ элементов управления друг от друга и от краёв карты. Задаётся в пикселях.

options.pane

Тип: IPane

Контейнер для всех элементов управления.

options.states ['small', 'medium', 'large']

Тип: String[]

Массив размеров, начиная от наименьшего к наибольшему.

* Обязательный параметр/опция.

Поля

ИмяТипОписание
eventsevent.Manager

Менеджер событий.

optionsoption.Manager

Опции менеджера.

statedata.Manager

Состояние менеджера. Имена полей, доступных через метод data.Manager.get:

  • size - состояние в котором находятся элементы управления.

Методы

ИмяВозвращаетОписание
add(control[, options])

control.Manager

Добавляет элемент управления в менеджер.

each(callback, context)

control.Manager

Вызывает функцию-обработчик для всех элементов управления.

get(index)

IControl|null

Возвращает элемент управления или null, если элемент не найден.

getChildElement(control)

vow.Promise

Возвращает объект-обещание, который подтверждается HTML-элементом, в который должен разместиться дочерний элемент.

getContainer()

HTMLElement

Возвращает контейнер, в который будут добавлены элементы контрола.

getMap()

Map

Возвращает ссылку на карту.

indexOf(childToFind)

Integer

Возвращает -1, если элемент управления не найден, либо индекс элемента в менеджере.

remove(control)

control.Manager

Удаление элемента управления из менеджера.

Описание полей

events

{event.Manager} events

Менеджер событий.

options

{option.Manager} options

Опции менеджера.

state

{data.Manager} state

Состояние менеджера. Имена полей, доступных через метод data.Manager.get:

  • size - состояние в котором находятся элементы управления.

Описание методов

add

Добавляет элемент управления в менеджер.

Возвращает cсылку на себя.

Параметры:

ПараметрЗначение по умолчаниюОписание
control*
[no-highlight[

* Обязательный параметр/опция.

]no-highlight]

Тип: IControl|String

Элементы управления, заданные экземплярами классов, реализующих интерфейс IControl либо ключами.

Возможные значения ключей:

  • "fullscreenControl" — кнопка разворачивания карты на весь экран control.FullscreenControl;
  • "geolocationControl" — кнопка определения местоположения пользователя control.GeolocationControl;
  • "routeEditor" — кнопка включения и отключения поведения "редактор маршрута" control.RouteEditor;
  • "rulerControl" — кнопка включения и отключения поведения "линейка" control.RulerControl;
  • "searchControl" — поисковая строка control.SearchControl.
  • "trafficControl" — панель пробок control.TrafficControl;
  • "typeSelector" — панель переключения типа карты control.TypeSelector;
  • "zoomControl" — ползунок масштаба control.ZoomControl;

Кроме того, вы можете задавать один из предустановленных наборов элементов управления с помощью специальных ключей:

  • "smallMapDefaultSet" - базовый набор элементов управления, оптимизированный для карт небольшого размера и экранов телефонов. Состоит из элементов управления "zoomControl", "searchControl", "typeSelector", "geolocationControl" и "fullscreenControl". В этом наборе все элементы управления минимизированы до кнопок с пиктограммами.
  • "mediumMapDefaultSet" - набор элементов управления, оптимизированный для карт среднего размера и экранов планшетов. Помимо базового набора элементов управления (см. выше), добавляет дополнительно элементы управления "rulerControl" и "trafficControl".
  • "largeMapDefaultSet" - набор элементов управления, оптимизированный для карт большого размера и экранов десктопных компьютеров. Отличается от набора "mediumMapDefaultSet" наличием элемента управления "routeEditor" и отсутствием элемента управления "fullScreen";
  • "default" - набор элементов управления по умолчанию; синоним для набора "mediumMapDefaultSet".
options

Тип: Object

Опции элемента управления.

options.float "right"

Тип: String

Сторона, по которой нужно выравнивать элемент управления. Может принимать три значения: "left", "right" или "none". При значении "left" или "right" элементы управления выстраиваются друг за другом, начиная от левого или правого края карты соответственно. При значении "none" элементы управления позиционируется только по значениям опций left, right, bottom, top относительно границ карты.

options.floatIndex 0

Тип: Number

Приоритет расположения элемента управления. Элемент с максимальным приоритетом находится ближе к указанному в свойстве float краю карты. Не работает при float = "none".

options.position

Тип: Object

Объект, описывающий позицию элемента управления. При указании опции position значение опции float автоматически трактуется как "none".

options.position.bottom 'auto'

Тип: Number|String

Положение относительно нижнего края карты. Работает только при float = none.

options.position.left 'auto'

Тип: Number|String

Положение относительно левого края карты. Работает только при float = none.

options.position.right 'auto'

Тип: Number|String

Положение относительно правого края карты. Работает только при float = none.

options.position.top 'auto'

Тип: Number|String

Положение относительно верхнего края карты. Работает только при float = none.

* Обязательный параметр/опция.

Пример:

map.controls
    .add('zoomControl')
    .add('typeSelector');

each

Вызывает функцию-обработчик для всех элементов управления.

Возвращает cсылку на себя.

Параметры:

ПараметрЗначение по умолчаниюОписание
callback*
[no-highlight[

* Обязательный параметр/опция.

]no-highlight]

Тип: Function

Функция-обработчик. На вход получает элемент коллекции. При возвращении функцией значения false перебор останавливается.

context*
[no-highlight[

* Обязательный параметр/опция.

]no-highlight]

Тип: Object

Контекст вызываемой функции.

* Обязательный параметр/опция.

get

{IControl|null} get(index)

Возвращает элемент управления или null, если элемент не найден.

Параметры:

ПараметрЗначение по умолчаниюОписание
index*
[no-highlight[

* Обязательный параметр/опция.

]no-highlight]

Тип: Number|String

Индекс искомого элемента или его ключ.

* Обязательный параметр/опция.

getChildElement

{vow.Promise} getChildElement(control)

Возвращает объект-обещание, который подтверждается HTML-элементом, в который должен разместиться дочерний элемент.

Параметры:

ПараметрЗначение по умолчаниюОписание
control*
[no-highlight[

* Обязательный параметр/опция.

]no-highlight]

Тип: IControl

Элемент управления.

* Обязательный параметр/опция.

getContainer

{HTMLElement} getContainer()

Возвращает контейнер, в который добавляются элементы управления.

getMap

{Map} getMap()

Возвращает ссылку на карту.

indexOf

{Integer} indexOf(childToFind)

Возвращает -1, если элемент управления не найден, либо индекс элемента в менеджере.

Параметры:

ПараметрЗначение по умолчаниюОписание
childToFind*
[no-highlight[

* Обязательный параметр/опция.

]no-highlight]

Тип: String|IControl

Элемент управления или его ключ.

* Обязательный параметр/опция.

remove

Удаление элемента управления из менеджера.

Возвращает cсылку на себя.

Параметры:

ПараметрЗначение по умолчаниюОписание
control*
[no-highlight[

* Обязательный параметр/опция.

]no-highlight]

Тип: IControl|String

Удаляемый элемент управления, либо его ключ.

* Обязательный параметр/опция.