control.TypeSelector
Расширяет control.ListBox.
Элемент управления "Типы карты". В данный элемент управления можно добавлять элементы списка, которые описывают типы карты, а также дополнительные элементы. Элементы, описывающие типы карты, объединены в группу control.Group. Группа по умолчанию добавлена первым элементом. Доступ к этой группе можно получить через метод getMapTypeItemsGroup.
Конструктор | Поля | События | Методы
Конструктор
Параметры:
Параметр | Значение по умолчанию | Описание |
---|---|---|
params | — | Тип: String[]|MapType[]|Object Объект с описаниями параметров элемента управления. Если передан массив, то он трактуется как массив типов карты. |
params.data.title | — | Тип: String Заголовок списка. |
params.mapTypes | — | Тип: String[]|MapType[] Массив конструкторов типов карты или ключей.
Список доступных типов карты:
|
param.data | — | Тип: Object Данные списка. |
options | — | Тип: Object Опции элемента управления. |
options.position | { top: 5, right: 5 } | Тип: Object Положение элемента управления над картой.
Задается в виде объекта со следующими полями:
|
options.visible | true | Тип: Boolean Признак того, что элемент управления отображается. |
fixTitle | false | Тип: Boolean Флаг, отвечающий за поведение заголовка элемента управления.
|
Параметр | Значение по умолчанию | Описание |
---|---|---|
params | — | Тип: String[]|MapType[]|Object Объект с описаниями параметров элемента управления. Если передан массив, то он трактуется как массив типов карты. |
params.data.title | — | Тип: String Заголовок списка. |
params.mapTypes | — | Тип: String[]|MapType[] Массив конструкторов типов карты или ключей.
Список доступных типов карты:
|
param.data | — | Тип: Object Данные списка. |
options | — | Тип: Object Опции элемента управления. |
options.position | { top: 5, right: 5 } | Тип: Object Положение элемента управления над картой.
Задается в виде объекта со следующими полями:
|
options.visible | true | Тип: Boolean Признак того, что элемент управления отображается. |
fixTitle | false | Тип: Boolean Флаг, отвечающий за поведение заголовка элемента управления.
|
Пример:
map.controls.add(new ymaps.control.TypeSelector(['yandex#map', 'yandex#hybrid']));
Поля
Имя | Тип | Описание |
---|---|---|
data | data.Manager | Данные элемента управления.
Имена полей, доступных через метод data.Manager.get:
|
events | IEventManager | Менеджер событий. Унаследовано от IEventEmitter. |
options | IOptionManager | Менеджер опций. Унаследовано от ICustomizable. |
state | data.Manager | Состояние выпадающего списка.
Имена полей, доступных через метод data.Manager.get:
Унаследовано от control.ListBox. |
Имя | Тип | Описание |
---|---|---|
data | data.Manager | Данные элемента управления.
Имена полей, доступных через метод data.Manager.get:
|
events | IEventManager | Менеджер событий. Унаследовано от IEventEmitter. |
options | IOptionManager | Менеджер опций. Унаследовано от ICustomizable. |
state | data.Manager | Состояние выпадающего списка.
Имена полей, доступных через метод data.Manager.get:
Унаследовано от control.ListBox. |
События
Имя | Описание |
---|---|
add | Произошло добавление дочернего объекта. Унаследовано от ICollection. |
childcontainerchange | Изменение дом-элемента, в который добавляются дочерние элементы группы.
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
Унаследовано от control.Group. |
click | Щелчок по заголовку списка. Экземпляр класса Event. Унаследовано от control.ListBox. |
collapse | Список закрыт. Экземпляр класса Event. Унаследовано от control.ListBox. |
expand | Список открыт. Экземпляр класса Event. Унаследовано от control.ListBox. |
mapchange | Сменилась карта.
Поля данных:
Унаследовано от IParentOnMap. |
optionschange | Изменение в опциях объекта. Унаследовано от ICustomizable. |
parentchange | Сменился родительский объект. Поля данных:
Унаследовано от IChild. |
remove | Произошло удаление дочернего объекта. Унаследовано от ICollection. |
Имя | Описание |
---|---|
add | Произошло добавление дочернего объекта. Унаследовано от ICollection. |
childcontainerchange | Изменение дом-элемента, в который добавляются дочерние элементы группы.
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
Унаследовано от control.Group. |
click | Щелчок по заголовку списка. Экземпляр класса Event. Унаследовано от control.ListBox. |
collapse | Список закрыт. Экземпляр класса Event. Унаследовано от control.ListBox. |
expand | Список открыт. Экземпляр класса Event. Унаследовано от control.ListBox. |
mapchange | Сменилась карта.
Поля данных:
Унаследовано от IParentOnMap. |
optionschange | Изменение в опциях объекта. Унаследовано от ICustomizable. |
parentchange | Сменился родительский объект. Поля данных:
Унаследовано от IChild. |
remove | Произошло удаление дочернего объекта. Унаследовано от ICollection. |
Методы
Имя | Возвращает | Описание |
---|---|---|
add(item[, positionIndex]) | Добавляет элемент управления в группу. Элемент можно добавлять, передав экземпляр класса, реализующего интерфейс IControl, или по ключу.
Возожные значения ключей:
Унаследован от control.Group. | |
addMapType(mapType[, position]) | TypeSelector | Добавляет тип карты в список. |
collapse() | Сворачивает список. Унаследован от control.ListBox. | |
each(callback[, context]) | Перебирает все элементы коллекции, вызывая для каждого функцию-обработчик. Унаследован от control.Group. | |
expand() | Раскрывает список. Унаследован от control.ListBox. | |
filter(callback) | Функция для выборки дочерних элементов по условию. Унаследован от control.Group. | |
get() | Returns ссылку на объект контрола, добавленного по ключу или по индексу. Унаследован от control.Group. | |
getAll() | Returns массив дочерних элементов контрола. Унаследован от control.Group. | |
getChildElement(child) | HTMLElement | Возвращает для своего дочернего объекта HTML-элемент, в котором он должен размещаться. Унаследован от IControlParent. |
getContainer() | HTMLElement | Returns контейнер, в который добавляются дочерние элементы контрола. Унаследован от control.Group. |
getIterator() | Returns итератор по коллекции. Унаследован от ICollection. | |
getLength() | Number | Returns количество дочерних элементов. Унаследован от control.Group. |
getMap() | Returns ссылку на карту. Унаследован от IParentOnMap. | |
getMapTypeItemsGroup() | Returns группу, которая содержит элементы списка, описывающие типы карты. | |
getParent() | Returns ссылку на родительский объект. Унаследован от IControl. | |
indexOf(childToFind) | Integer | Returns индекс дочернего элемента в группе. Унаследован от control.Group. |
isExpanded() | Boolean | Returns признак того, находится ли контрол в развернутом состоянии. Унаследован от control.ListBox. |
remove(item) | Удаляет элемент управления из группы. Унаследован от control.Group. | |
removeAll() | Удаляет все дочерние элементы из группы. Унаследован от control.Group. | |
removeAllMapTypes() | TypeSelector | Удаляет все типы карты из элемента управления. |
removeMapType() | TypeSelector | Удаляет тип карты. |
setMinWidth(width) | Устанавливает ширину списка. Унаследован от control.ListBox. | |
setParent(parent) | Устанавливает родительский объект. Унаследован от IControl. | |
setTitle(html) | Задает новый заголовок раскрывающегося списка. Унаследован от control.ListBox. |
Имя | Возвращает | Описание |
---|---|---|
add(item[, positionIndex]) | Добавляет элемент управления в группу. Элемент можно добавлять, передав экземпляр класса, реализующего интерфейс IControl, или по ключу.
Возожные значения ключей:
Унаследован от control.Group. | |
addMapType(mapType[, position]) | TypeSelector | Добавляет тип карты в список. |
collapse() | Сворачивает список. Унаследован от control.ListBox. | |
each(callback[, context]) | Перебирает все элементы коллекции, вызывая для каждого функцию-обработчик. Унаследован от control.Group. | |
expand() | Раскрывает список. Унаследован от control.ListBox. | |
filter(callback) | Функция для выборки дочерних элементов по условию. Унаследован от control.Group. | |
get() | Returns ссылку на объект контрола, добавленного по ключу или по индексу. Унаследован от control.Group. | |
getAll() | Returns массив дочерних элементов контрола. Унаследован от control.Group. | |
getChildElement(child) | HTMLElement | Возвращает для своего дочернего объекта HTML-элемент, в котором он должен размещаться. Унаследован от IControlParent. |
getContainer() | HTMLElement | Returns контейнер, в который добавляются дочерние элементы контрола. Унаследован от control.Group. |
getIterator() | Returns итератор по коллекции. Унаследован от ICollection. | |
getLength() | Number | Returns количество дочерних элементов. Унаследован от control.Group. |
getMap() | Returns ссылку на карту. Унаследован от IParentOnMap. | |
getMapTypeItemsGroup() | Returns группу, которая содержит элементы списка, описывающие типы карты. | |
getParent() | Returns ссылку на родительский объект. Унаследован от IControl. | |
indexOf(childToFind) | Integer | Returns индекс дочернего элемента в группе. Унаследован от control.Group. |
isExpanded() | Boolean | Returns признак того, находится ли контрол в развернутом состоянии. Унаследован от control.ListBox. |
remove(item) | Удаляет элемент управления из группы. Унаследован от control.Group. | |
removeAll() | Удаляет все дочерние элементы из группы. Унаследован от control.Group. | |
removeAllMapTypes() | TypeSelector | Удаляет все типы карты из элемента управления. |
removeMapType() | TypeSelector | Удаляет тип карты. |
setMinWidth(width) | Устанавливает ширину списка. Унаследован от control.ListBox. | |
setParent(parent) | Устанавливает родительский объект. Унаследован от IControl. | |
setTitle(html) | Задает новый заголовок раскрывающегося списка. Унаследован от control.ListBox. |
Описание полей
data
{data.Manager} data
- title - заголовок выпадающего списка.
Пример:
// Добавим на карту выпадающий список и будем менять его заголовок
// в зависимости от того, свернут список или развернут.
var typeSelector = new ymaps.control.TypeSelector();
// Зададим опцию, запрещающую менять заголовок списка.
typeSelector.options.set('fixTitle', true);
// Создадим группу слушателей событий.
var typeSelectorListener = typeSelector.events.group()
.add('expand', function () {
typeSelector.data.set('title', 'Список развернут');
})
.add('collapse', function () {
typeSelector.data.set('title', 'Список свернут');
});
map.controls.add(typeSelector, {top: 10, left: 10});
// ...
map.controls.remove(typeSelector);
// После удаления элемента с карты удалим слушателей.
typeSelectorListener.removeAll();
Описание методов
addMapType
Добавляет тип карты в список.
Returns ссылку на себя.
Параметры:
Параметр | Значение по умолчанию | Описание |
---|---|---|
mapType * | — | Тип: String|MapType Тип карты. |
position | — | Тип: Integer Позиция в списке (если не указана, новый тип карты добавляется в конец списка). |
* Обязательный параметр/опция.
Пример:
var typeSelector = new ymaps.control.TypeSelector();
typeSelector.addMapType('yandex#map', 1);
typeSelector.addMapType('yandex#hybrid', 0);
getMapTypeItemsGroup
{control.Group} getMapTypeItemsGroup()
Returns группу, которая содержит элементы списка, описывающие типы карты.
removeAllMapTypes
{TypeSelector} removeAllMapTypes()
Удаляет все типы карты из элемента управления.
Returns ссылку на себя.
removeMapType
{TypeSelector} removeMapType()
Удаляет тип карты.
Returns ссылку на себя.
Параметры:
* Обязательный параметр/опция.