- Справочник
- Списки
API iRidium. IR.ITEM_LISTBOX (List)
Методы, используемые при работе с динамическими списками: графическими элементами типа List.
List
Методы работы с листом.
IR.CreateItem()
создать графический элемент List на текущей странице проекта. Страница может быть определена с помощью метода IR.CurrentPage. Чтобы создать элемент на произвольной странице, нужно применить метод CreateItem() к ссылке на объект Page или Popup, полученной с помощью метода IR.GetItem().
Синтаксис
IR.CreateItem(IR.ITEM_LISTBOX, name, X, Y, width, height);
| на входе | значение | описание |
|---|---|---|
| name | "Button 1" | type: String название элемента, уникальное для страницы. |
| X | 30 | type: Number координата по оси X. |
| Y | 40 | type: Number координата по оси Y. |
| width | 200 | type: Number ширина элемента. |
| height | 500 | type: Number высота элемента. |
| на выходе | ||
|---|---|---|
| Object | [Object ListItemPrototype] | type: Object экземпляр графического объекта. |
Пример
IR.AddListener(IR.EVENT_START,0, function()
{
var src = IR.CreateItem(IR.ITEM_LISTBOX,"List 1",30,40,200,500);
IR.Log(src); // [Object ListItemPrototype]
});
- Чтобы создать диалоговый элемент на конкретной странице, примените .CreateItem() к ссылке на страницу или попап:
var list_1 = IR.GetItem("Page 1").CreateItem(IR.ITEM_LISTBOX,"List 1",30,40,200,500);
IR.Log(list_1) // [Object ListItemPrototype] // create list and get the link in one action
- В конструкторе приведены только базовые свойства элемента, без которых элемент вообще нельзя создать. Все элементы имеют также общий набор дополнительных свойств и набор свойств, характерных для типа элемента. См. в подразделе Свойства.
.AddItem()
Создать элемент списка (ListItem).
Синтаксис:
List.AddItem([template], [options], [customID], [position], [name]);
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа |
| template | List.AddItem("template", {}, cities[i]) | type: Object имя попапа как шаблона |
| options | itemName: "Button1", PropertyName: Value, States: [{ PropertyName: Value }] | type: Object объект с настройками элемента листа: * itemName — имя графического элемента (String)* PropertyName: Value — свойство графического элемента: значение* States — массив состояний, где PropertyName: Value — свойство состояния: значение |
| customID | "London" | type: String идентификатор элемента листа |
| position | 2 | type: Number позиция в списке |
| name | "Template 1" | type: String имя клонированного попапа от шаблона template |
| На выходе | ||
| ListItem | [Object ListItemPrototype] | type: Object элемент списка ListItem |
Пример
var cities = ["Moscow", "London", "New York"];
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
for(var i = 0; i < cities.length; i++)
{
var ListItem = List.AddItem("template", { "Name" : { Text : cities[i] }}, cities[i]);
}
}
- Если использовать метод AddItem() без параметров, то при активации функции в лист добавится новый элемент списка, который будет являться точной копией родительского элемента (попапа):
var List;
List = IR.GetPage("Page 1").GetItem("Item 1");
List.Template = "Popup 1";
function AddItem() {
List.AddItem();
};
.SetDataFilter()
Добавить фильтр по данным формата ключ-значение.
Синтаксис:
List.SetDataFilter(key, value);
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа |
| key | "city" | type: String ключ |
| value | "London" | type: String значение |
| На выходе | ||
| - |
Пример
// search
function search(in_key, in_value)
{
if(in_key)
{
// if value is exist then set filter
if(in_value)
List.SetDataFilter(in_key, in_value);
else
// else delete filter
List.DeleteDataFilter(in_key);
// apply filter
List.ApplyDataFilter();
}
}
.ClearDataFilter()
Очистить фильтр по данным.
Синтаксис:
List.ClearDataFilter()
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| На выходе | - | - |
| - | - | - |
Пример
// clear filter
List.ClearDataFilter();
.ApplyDataFilter()
Применить фильтр по данным.
Синтаксис:
List.ApplyDataFilter()
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| На выходе | - | - |
| - | - | - |
Пример
// apply filter
List.ApplyDataFilter();
.DeleteDataFilter()
Удалить ключ из фильтра.
Синтаксис:
List.DeleteDataFilter(key)
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| key | "city" | String ключ. |
| На выходе | - | - |
| - | - | - |
Пример
List.DeleteDataFilter("city");
.GetItemByName()
Получить ListItem по имени попапа, указанного при использовании AddItem.
Синтаксис:
List.GetItemByName(name);
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| name | "Template 1" | String имя клонированного попапа от шаблона template. |
| На выходе | - | - |
| ListItem | [Object ListItemPrototype] | type: Object элемент списка ListItem. |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
var ListItem = List.GetItemByName("Template 1");
}
.GetItemByIndex()
Получить ListItem по порядковому номеру.
Синтаксис:
List.GetItemByIndex(index)
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| index | 2 | Number порядковый номер элемента листа. |
| На выходе | - | - |
| ListItem | [Object ListItemPrototype] | type: Object элемент списка ListItem. |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
var ListItem = List.GetItemByIndex(10);
}
.GetItemPositionByName()
Получить позицию ListItem по имени попапа, указанного при использовании AddItem
Синтаксис:
List.GetItemPositionByName(name)
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| name | "Template 1" | String имя клонированного попапа от шаблона template. |
| На выходе | - | - |
| Position | 2 | Number позиция ListItem (number ≥ 0 или -1 если элемент не найден). |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
var position = List.GetItemPositionByName("Template 1");
}
.GetItemPositionByCustomID()
Получить позицию ListItem по указанному идентификатору.
Синтаксис:
List.GetItemPositionByCustomID(customId)
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| customId | "Moscow" | String идентификатор элемента листа. |
| На выходе | - | - |
| Position | 2 | Number позиция ListItem (number ≥ 0 или -1 если элемент не найден). |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
var position = List.GetItemPositionByCustomID("Moscow");
}
.GetSelected()
Получить выбранные элементы или элемент.
Синтаксис:
List.GetSelected()
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| На выходе | - | - |
| ListItem | [Object ListItemPrototype] | type: Object массив элементов или элемент в зависимости от SelectMode листа. |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
var selected = List.GetSelected();
}
.ClearSelected()
Сбросить выбранные элементы.
Синтаксис:
List.ClearSelected()
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| На выходе | - | - |
| - | - | - |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
List.ClearSelected();
}
.DeleteItemByName()
Удаление элемента по имени попапа, указанного при использовании AddItem.
Синтаксис:
List.DeleteItemByName(name)
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| name | "Template 1" | String имя клонированного попапа от шаблона template. |
| На выходе | - | - |
| - | - | - |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
List.DeleteItemByName("Template 1");
}
.DeleteItemByCustomID()
Удаление элемента по указанному идентификатору.
Синтаксис:
List.DeleteItemByCustomID(customId)
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| customId | "Moscow" | String идентификатор элемента листа. |
| На выходе | - | - |
| - | - | - |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
List.DeleteItemByCustomID("Moscow");
}
.DeleteItemByIndex()
Удаление элемента по порядковому номеру.
Синтаксис:
List.DeleteItemByIndex(index)
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| index | 10 | Number порядковый номер элемента листа. |
| На выходе | - | - |
| - | - | - |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
List.DeleteItemByIndex(10);
}
.DeleteItemsByName()
Удаление элементов по имени попапа, указанного при использовании AddItem.
Синтаксис:
List.DeleteItemsByName(name)
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| name | "Template 1" | String имя клонированного попапа от шаблона template. |
| На выходе | - | - |
| - | - | - |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
List.DeleteItemsByName("Template 1");
}
.DeleteItemsByCustomID()
Удаление элементов по указанному идентификатору.
Синтаксис:
List.DeleteItemsByCustomID(customID)
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| customId | "Moscow" | String идентификатор элемента листа. |
| На выходе | - | - |
| - | - | - |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
List.DeleteItemsByCustomID("Moscow");
}
.GetItemsByName()
Получить массив ListItem по имени попапа, указанного при использовании AddItem.
Синтаксис:
List.GetItemsByName(name)
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| name | "Template 1" | String имя клонированного попапа от шаблона template. |
| На выходе | - | - |
| - | - | - |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
var ListItems = List.GetItemsByName("Template 1");
}
.GetItemsByCustomID()
Получить массив ListItem по указанному идентификатору.
Синтаксис:
List.GetItemsByCustomID(customID)
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| customId | "Moscow" | String идентификатор элемента листа. |
| На выходе | - | - |
| - | - | - |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
var ListItems = List.GetItemsByCustomID("Moscow");
}
.SelectByIndex()
Выбрать элемент по порядковому номеру.
Синтаксис:
List.SelectByIndex(index, bool)
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| index | 10 | Number порядковый номер. |
| bool | true | Boolean признак выбранного элемента. |
| На выходе | - | - |
| - | - | - |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
List.SelectByIndex(10, true);
}
.StartReleaseActionByIndex()
Выполнить действие от элемента по порядковому номеру из ListItem.SetReleaseAction.
Синтаксис:
List.StartReleaseActionByIndex(index)
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| index | 10 | Number порядковый номер. |
| На выходе | - | - |
| - | - | - |
Пример
var testFunction = function(in_listItem)
{
IR.Log(in_listItem.CustomID);
}
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
var cities = ["Moscow", "London", "New York"];
if(List)
{
for(var i = 0; i < cities.length; i++)
{
var ListItem = List.AddItem("template", {}, cities[i]);
if(ListItem)
{
ListItem.SetReleaseAction(testFunction);
}
}
}
ListItem.StartReleaseActionByIndex(1); // London
}
.ScrollByName()
Перемотать список к элементу, указанного при использовании AddItem.
Синтаксис:
List.ScrollByName(name)
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| name | "Template 1" | String имя клонированного попапа от шаблона template. |
| На выходе | - | - |
| - | - | - |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
List.ScrollByName("Template 1");
}
.ScrollByCustomID()
Перемотать список к элементу с указанным идентификатором.
Синтаксис:
List.ScrollByCustomID(customID)
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| customID | "London" | String идентификатор элемента листа. |
| На выходе | - | - |
| - | - | - |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
List.ScrollByCustomID("London");
}
.ScrollByIndex()
Перемотать список к элементу с указанным порядковым номером.
Синтаксис:
List.ScrollByIndex(index)
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| index | 1 | Number порядковый номер. |
| На выходе | - | - |
| - | - | - |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
List.ScrollByIndex(1);
}
.ScrollToStart()
Перемотать список на начало.
Синтаксис:
List.ScrollToStart()
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| На выходе | - | - |
| - | - | - |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
List.ScrollToStart();
}
.ScrollToEnd()
Перемотать список в конец.
Синтаксис:
List.ScrollToEnd()
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| На выходе | - | - |
| - | - | - |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
List.ScrollToEnd();
}
.SetSelectFunction()
Установить функцию обработчик отметки элемента списка.
Синтаксис:
List.SetSelectFunction(function)
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| function | List.SetSelectFunction(testFunction) | type: Object функция, выполняемая при выборе ListItem. |
| На выходе | - | - |
| - | - | - |
Пример
var testFunction = function(in_listItem)
{
IR.Log(in_listItem.CustomID); // London
}
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
var cities = ["Moscow", "London", "New York"];
if(List)
{
for(var i = 0; i < cities.length; i++)
{
var ListItem = List.AddItem("template", {}, cities[i]);
}
}
List.SetSelectFunction(testFunction);
List.SelectByIndex(1, true); // London
}
.MoveItem()
Изменение позиции элемента списка.
Синтаксис:
List.MoveItem(currentPostition, newPosition)
| На входе | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: Object ссылка на объект листа. |
| currentPostition | 0 | Number текущий порядковый номер. |
| newPosition | 2 | Number новый порядковый номер. |
| На выходе | - | - |
| - | - | - |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
List.MoveItem(0, 2); // change listItem from index 0 to index 2
}
.SetPosition()
пролистать список до указанной позиции. Для этого нужно получить ссылку на объект List с помощью метода IR.GetItem().
Синтаксис
list.SetPosition(item);
| на входе | значение | описание |
|---|---|---|
| list | IR.GetItem("Page 1").GetItem("Item 1") | type: Object ссылка на список. |
| item | 0 | type: Number номер элемента (пункта) списка, начиная с 0. |
| на выходе | ||
|---|---|---|
| - |
Пример
IR.AddListener(IR.EVENT_START, 0, function()
{
var List = IR.GetItem("Page 1").GetItem("List 1");
List.SetPosition(12); // go to point
});
для перелистывания списка к указанному пункту:
- пункт должен существовать;
- в момент выполнения команды, список должен быть виден, это значит, что страница или попап содержащая список, должна быть открыта;
- после создания нового элемента списка, должно пройти не менее 100 мс, команда перелистывания идущая сразу же после команды создания нового элемента списка - выполнена не будет.
.Clear()
удалить все пункты элемента List. Для этого нужно получить ссылку на объект List с помощью метода IR.GetItem().
Синтаксис
list.Clear();
| на входе | значение | описание |
|---|---|---|
| list | IR.GetItem("Page 1").GetItem("Item 1") | type: Object ссылка на список. |
| на выходе | ||
|---|---|---|
| - |
Пример
IR.AddListener(IR.EVENT_START, 0, function()
{
var List = IR.GetItem("Page 1").GetItem("List 1");
List.Clear(); // clear list
});
Свойства элемента List
Свойства списков - графических элементов типа List:
IR.GetItem(page/popup).GetItem(list).property
property
Get / Put:
| Свойство | Значение | Описание |
|---|---|---|
| Template | "Popup 1" | type: string Позволяет установить или запросить шаблон для пунктов списка, которым является один из попапов проекта. |
| Direction | 0 | type: number Позволяет установить или запросить направление прокрутки списка: • 0 — вертикальный список • 1 — горизонтальный список |
| Filter | "A" | type: string Позволяет отфильтровать пункты списка по их имени (части имени). |
| ScrollEnabled | true | type: boolean Позволяет отключить возможность перелистывания списка вручную из интерфейса. При этом метод .SetPosition продолжит работать. |
| DragDropEnable | true | type: boolean Позволяет включить/выключить перетягивание элементов списка (элементы меняют свою позицию в списке). |
| Resistance | 50 | type: number Позволяет установить или запросить значение сопротивления при прокрутке листа. |
| ScrollBar | true | type: boolean Позволяет включить/выключить полосу прокрутки (ScrollBar). |
| SelectMode | IR.LIST_SELECT_SINGLE | type: object Позволяет выбрать или запросить выбранные элементы списка: • IR.LIST_SELECT_SINGLE — получение одного элемента • IR.LIST_SELECT_MULTIPLE — получение массива элементов |
Get:
| Свойство | Значение | Описание |
|---|---|---|
| ItemsCount | 24 | type: number позволяет запросить количество пунктов списка. |
var list = IR.GetItem("Page 1").GetItem("List 1");
//* * Template **//
IR.Log(list.Template); // "Popup 1"
list.Template = "Popup 2"; // change template if exist
//* * Direction **//
IR.Log(list.Direction); // 1
list.Direction = 0; // change direction
//* * ItemsCount **//
IR.Log(list.ItemsCount); // 24
//* * Filter **//
list.Filter = "C";
IR.Log(list.Filter); // "C"
//* * ScrollEnabled **//
list.ScrollEnabled = true; // list can be flipped manually
list.ScrollEnabled = false; // list cannot be flipped manually
//* * DragDropEnable **//
list.DragDropEnable = true; //activate dragging list items
list.DragDropEnable = false; //deactivate dragging list items
//* * Resistance **//
list.Resistance = 50; //set the scroll resistance to 50
//* * ScrollBar **//
list.ScrollBar = true; //turn on the scroll bar
list.ScrollBar = false; //turn off the scroll bar
//* * SelectMode **//
list.SelectMode = IR.LIST_SELECT_SINGLE; //getting one element
list.SelectMode = IR.LIST_SELECT_MULTIPLE. //getting an array of elements
ListItem
Методы работы с элементами листа (ListItem).
.SetData()
Установка пользовательских данных элементу списка (данные не используются для фильтрации).
Синтаксис:
ListItem.SetData(Data)
| На входе | Значение | Описание |
|---|---|---|
| ListItem | List.GetItemByName(name) | type: Object ссылка на элемент листа. |
| Data | {CountryName: "Russia", CityName: "Moscow"} | type: Object пользовательские данные как объект. |
| На выходе | - | - |
| - | - | - |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
var ListItem = List.GetItemByName(name);
if(ListItem)
{
var data = {
CountryName: "Russia",
CityName: "Moscow"
}
ListItem.SetData(data);
}
}
.SetFilterKey()
Установить метку формата ключ-значение элементу листа для дальнейшей возможности работы с фильтром по этим меткам.
Синтаксис:
ListItem.SetFilterKey(Data)
| На входе | Значение | Описание |
|---|---|---|
| ListItem | List.GetItemByName(name) | type: Object ссылка на элемент листа. |
| Data | {"Name": cities[i]} | type: Object пользовательские данные как объект. |
| На выходе | - | - |
| - | - | - |
Пример
// search
function search(in_key, in_value)
{
if(in_key)
{
// if value is exist then set filter
if(in_value)
List.SetDataFilter(in_key, in_value);
else
// else delete filter
List.DeleteDataFilter(in_key);
// apply filter
List.ApplyDataFilter();
}
}
var cities = ["Moscow", "London", "New York"];
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
for(var i = 0; i < cities.length; i++)
{
var ListItem = List.AddItem("template", {}, cities[i]);
if(ListItem)
{
ListItem.SetFilterKey({"Name": cities[i]});
}
}
}
search("Name", "Mosc");
search("Name", "Lon");
// clear filter
List.ClearDataFilter();
.SetOptions()
Установка настроек элемента листа.
Синтаксис:
ListItem.SetOptions(Data)
| На входе | Значение | Описание |
|---|---|---|
| ListItem | List.GetItemByName(name) | type: Object ссылка на элемент листа. |
| Data | // имя графического элементаitemName:{// свойство графического элемента: значениеPropertyName: Value,...// массив состоянийStates: [// свойство состояния: значениеPropertyName: Value,...]},... | type: Object объект с настройками элемента листа. |
| На выходе | - | - |
| - | - | - |
Пример
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
var ListItem = List.GetItemByName(name);
if(ListItem)
{
ListItem.SetOptions({
"Item 1": {
Text: "SomeText",
Visible: false,
States: [{
Image: "Image 1"
}]
},
});
}
}
.SetReleaseAction()
Установка функции выполнения при Release.
Синтаксис:
ListItem.SetReleaseAction(action, [space])
| На входе | Значение | Описание |
|---|---|---|
| ListItem | List.GetItemByName(name) | type: Object ссылка на элемент листа. |
| action | function(in_listItem, in_item){IR.Log(in_listItem.Popup.Name);IR.Log(in_item.Name);IR.Log(this.city);} | Object функция, отрабатываемая по Release от элемента листа. ListItem — элемент листа, на который нажали. Item — диалоговый элемент внутри элемента листа, на который нажали типа (IR.GetItem("Item")). |
| [space] | {city: "Moscow"} | type: Object контекст ( {}). |
| На выходе | - | - |
| - | - | - |
Пример
var testFunction = function(in_listItem, in_item)
{
IR.Log(in_listItem.Popup.Name);
IR.Log(in_item.Name);
IR.Log(this.city);
}
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
var ListItem = List.GetItemByName(name);
if(ListItem)
{
ListItem.SetReleaseAction(testFunction, {city: "Moscow"})
}
}
Свойства элемента ListItem
Свойства элементов списка:
List.GetItemByName(name).property
| Свойство | Значение | Описание |
|---|---|---|
| List | IR.GetItem("Page 1").GetItem("List") | type: object ссылка на объект листа. |
| name | "Template 1" | type: string имя клонированного попапа от шаблона template. |
Get
| Свойство | Значение | Описание |
|---|---|---|
| Popup | [Object ListItemPrototype] | type: object получить объект попапа, элемента списка. |
| Parent | [Object ListItemPrototype] | type: object получить объект List, на котором находится ListItem. |
| Data | {CountryName: "Russia", CityName: "Moscow"} | type: object получение пользовательских данных, введённых методом SetData(). |
| FilterKey | {"Name": cities[i]} | type: object получить метку формата ключ-значение элемента листа, введённую методом SetFilterKey(). |
| Index | 1 | type: number получить порядковый номер элемента листа. |
Get / Put
| Свойство | Значение | Описание |
|---|---|---|
| Selected | true | type: boolean признак того, что элемент выбран: true — элемент выбран, false — элемент не выбран. |
| Context | {city: "Moscow"} | type: object контекст выполняемой функции в SetReleaseAction(). |
| CustomID | "Moscow" | type: string идентификатор элемента листа. |
| Visible | true | type: boolean видимость элемента листа: true — элемент виден, false — элемент не отображается в списке. |
| Locked | boolean | type: boolean блокировка элемента листа на текущей позиции (ограничение свойства DragDropEnable): true — элемент заблокирован, false — элемент не заблокирован. |
var List = `IR.GetItem("Page 1").GetItem("List")`;
if(List)
{
var ListItem = List.GetItemByName(name);
if(ListItem)
{
var popup = ListItem.Popup;
var list = ListItem.Parent;
var data = ListItem.Data;
var filter = ListItem.FilterKey;
var index = ListItem.Index;
var selected = ListItem.Selected;
ListItem.Selected = !selected;
var customID = ListItem.CustomID;
ListItem.CustomID = "NewCustomID";
var context = ListItem.Context;
ListItem.Context = {city: "London"};
var visible = ListItem.Visible;
ListItem.Visible = !visible;
var locked = ListItem.Locked;
ListItem.Locked = !locked;
}
}