Перейти к основному содержимому

API iRidium. Страницы и элементы

функции, методы, свойства объектов, используемых для управления графическими элементами, страницами, попапами в проекте iRidium

Методы

Объект IR - глобальный объект, содержащий в себе все функции и константы API iRidium. Методы объекта IR для графического интерфейса позволяют обратиться к страницам и попапам интерфейса визуализации, а также выполнить команды, связанные с работой операционной системы.

Цепочка команд, примененных к объекту IR, позволяет получить доступ к любому объекту интерфейса, использовать его методы и обращаться к свойствам. Иерархия объектов: IR > Page / Popup > Item > State.

IR.CreateItem()

создать графический элемент на текущей странице проекта.Страница может быть определена при обращении к свойству CurrentPage объекта IR. Чтобы создать элемент на произвольной странице, нужно применить метод CreateItem к ссылке на объект Page или Popup, полученной с помощью метода IR.GetItem().

Синтаксис

IR.CreateItem(item_type, name, X, Y, width, height);

на входезначениеописание
item_typeIR.ITEM_BUTTONtype: Object
тип графического элемента
name"Button 1"type: String
название элемента, уникальное для страницы
X30type: Number
координата по оси X
Y40type: Number
координата по оси Y
width800type: Number
ширина элемента
height150type: Number
высота элемента
на выходе
Object[Object DialogItemPrototype]type: Object
экземпляр графического объекта

Пример

IR.AddListener(IR.EVENT_START,0, function()
{
var src = IR.CreateItem(IR.ITEM_BUTTON,"Button 1",30,40,800,150);
IR.Log(src) // [Object DialogItemPrototype]
});

Примечания

Подсказка
  • Типы диалоговых элементов:

  • IR.ITEM_PAGE - страница (Page)

  • IR.ITEM_POPUP - попап (Popup)

  • IR.ITEM_BUTTON - кнопка (Button)

  • IR.ITEM_TRIGGER_BUTTON - кнопка триггер (Trigger Button)

  • IR.ITEM_MUTI_STATE_BUTTON - анимированная кнопка (Multistate Button)

  • IR.ITEM_UPDOWN_BUTTON - кнопка инкремент/декремент (Up/Down Button)

  • IR.ITEM_LEVEL - уровень (Level)

  • IR.ITEM_MUTI_STATE_LEVEL - анимирванный уровень (Multistate Level)

  • IR.ITEM_EDIT_BOX - поле ввода (EditBox)

  • IR.ITEM_VIRTUAL_KEY_BUTTON - виртуальная клавиша (Virtual Key)

  • IR.ITEM_JOYSTICK - джойстик (Joystick)

  • IR.ITEM_LISTBOX - динамический список (List)

  • IR.ITEM_STATIC_LISTBOX - список попапов (Static List)

  • Чтобы создать диалоговый элемент на конкретной странице, примените .CreateItem() к ссылке на страницу или попап:

var src = IR.GetItem("Page 1").CreateItem(IR.ITEM_BUTTON,"Button 1",30,40,800,150);
IR.Log(src) // [Object DialogItemPrototype]
  • В конструкторе приведены только базовые свойства элемента, без которых элемент вообще нельзя создать. Все элементы имеют также общий набор дополнительных свойств и набор свойств, характерных для типа элемента. См. в подразделе Свойства.
  • Элементы, созданные через IR.CreateItem() имеют фиксированный шрифт cour.ttf, размер 20. Как изменить шрифт?

IR.DeleteItem()

удалить Popup или диалоговый элемент. Страницу удалить нельзя.

Синтаксис

IR.DeleteItem(popup)

на входезначениеописание
page"Popup 1"type: String
имя страницы или попапа
на выходе
-

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
IR.DeleteItem(IR.GetItem("Page 1").GetItem("Popup 1"));
});

Примечания

Подсказка

Вы можете удалить элемент на странице, записав ссылку на него в переменную и использовав IR.DeleteItem() для полученной ссылки

var item = IR.GetItem("Page 1").GetItem("Item 1");
IR.DeleteItem(item);

IR.GetPage()

получить доступ к странице проекта (Page). Имея доступ к странице, вы можете обратиться к элементам на этой странице с помощью метода .GetItem().

Синтаксис

IR.GetPage(page)

на входезначениеописание
page"Page 1"type: String
имя страницы
на выходе
Object[Object DialogItemPrototype]type: Object
ссылка на экземпляр страницы

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
IR.GetPage("Page 1");
});

Примечания

Подсказка
  • Имея доступ к странице, вы можете обратиться к элементам на ней с помощью метода .GetItem():
var Item = IR.GetPage("Page 1").GetItem("Item 1");
IR.Log(Item); // [object DialogItemPrototype]

IR.GetPopup()

получить доступ к попапу проекта (Popup). Имея доступ к попапу, вы можете обратиться к элементам на этом попапе с помощью метода .GetItem().

Синтаксис

IR.GetPopup(popup)

на входезначениеописание
popup"Popup 1"type: String
имя попапа
на выходе
Object[Object DialogItemPrototype]type: Object
ссылка на экземпляр попапа

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
IR.GetPopup("Popup 1");
});

Примечания

Подсказка
  • Имея доступ к попапу, вы можете обратиться к элементам на нем с помощью метода .GetItem():
var Item = IR.GetItem("Popup 1").GetItem("Item 1");
IR.Log(Item); // [object DialogItemPrototype]

IR.ShowPage()

показать страницу по имени (Page)

Синтаксис

IR.ShowPage(page)

на входезначениеописание
page"Page 1"type: String
имя страницы
на выходе
-

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
IR.ShowPage("Page 1");
});

Примечания

Подсказка
  • объект не имеет методов и свойств

IR.ShowPopup()

показать попап по имени (Popup)

Синтаксис

IR.ShowPopup(popup, <effect_group>)

на входезначениеописание
popup"Popup 1"type: String
имя попапа
effect_group1type: Number
номер группы эффектов, созданной через [
---------
-

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
IR.ShowPopup("Popup 1");
});

Примечания

Подсказка
  • объект не имеет методов и свойств

IR.HidePopup()

скрыть попап по имени (Popup)

Синтаксис

IR.HidePopup(popup, <effect_group>)

на входезначениеописание
popup"Popup 1"type: String
имя попапа
effect_group1type: Number
номер группы эффектов, созданной через [
---------
-

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
IR.HidePopup("Popup 1");
});

Примечания

Подсказка
  • объект не имеет методов и свойств

IR.HideGroup()

скрыть группу попапов по имени группы. Из группы может быть открыт только один попап - именно он закроется при вызове метода. Имена групп см. в меню "Manage Popup Groups".

Синтаксис

IR.HideGroup(group)

на входезначениеописание
popup"Popup Group 1"type: String
имя группы
на выходе
-

Пример

function hide_1 ()
{
IR.HideGroup("Popup Group 1");
}

Примечания

Подсказка

IR.TogglePopup()

показать Popup, если он скрыт, и скрыть, если показан

Синтаксис

IR.TogglePopup(popup, <effect_group>)

на входезначениеописание
popup"Popup 1"type: String
имя попапа
effect_group1type: Number
номер группы эффектов, созданной через [IR.CreateEffect()][(#ircreateeffect)
на выходе
---------
-

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
IR.TogglePopup("Popup 1");
});

Примечания

Подсказка
  • объект не имеет методов и свойств

IR.HideAllPopups()

скрыть все попапы (Popup) на указанной странице

Синтаксис

IR.HideAllPopups(page, <effect_group>)

на входезначениеописание
page"Page 1"type: String
имя страницы
effect_group1type: Number
номер группы эффектов, созданной через IR.CreateEffect()
на выходе
-

Пример

IR.AddListener(IR.EVENT_ITEM_PRESS,IR.GetPage("Page 1").GetItem("Item 2"), function()
{
IR.HideAllPopups("Page 1", <1>);
});

Примечания

Подсказка
  • объект не имеет методов и свойств

IR.CreateEffect()

создать эффект анимации во время работы приложения и использовать его при показе и скрытии попапа.

Синтаксис

IR.CreateEffect(effect);

на входезначениеописание
effectIR.EFFECT_FADEtype: object
тип эффекта
на выходе
object[object EffectPrototype]type: object
объект группы эффектов анимации

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
var Fade = IR.CreateEffect(IR.EFFECT_FADE); // создаем группу, сохраняем в переменную
Fade.Group = 1000; // присваиваем номер группы
Fade.Delay = 0; // задержка выполнения эффектов
Fade.Duration = 400; // продолжительность эффекта
Fade.Tween = 0; // формула вычисления эффекта (твинер)
IR.ShowPopup("Popup 1", 1000); // покажем попап с эффектами группы 1000
});

Примечания

Подсказка

Эффекты:

  • IR.EFFECT_FADE - плавное появление / исчезновение;
  • IR.EFFECT_ROTATE - вращение вокруг своей оси, цент поворота середина всплывающего окна;
  • IR.EFFECT_SCALE - увеличение / уменьшение;
  • IR.EFFECT_SLIDE - движение в / из стороны;
  • IR.EFFECT_TVSCAN - сжатие по горизонтали;

Свойства Эффектов:

СвойствоЗначениеТип данныхОписание
Group1000numberНомер группы эффектов, в которой будет находиться эффект. Рекомендуется использовать номера групп эффектов, начиная с 1000, это убережет вас от пересечения с группами эффектов, которые создает редактор. В случае, если требуется дополнить группы эффектов, созданные в редакторе, на эффекты созданные динамически, то используйте это осознанно.
Delay2000numberзадержка перед выполнением эффекта в миллисекундах
Duration5000numberпродолжительность эффекта в миллисекундах
Tween0numberформула вычисления, см. IR.Tween
SlideType4numberтип движения:
0 - влево до края экрана (Left Out),
1 - вправо до края экрана (Right Out),
2 - вверх до края экрана (Top Out),
3 - вниз до края экрана (Bottom Out),
4 - влево в пределах попапа (Left),
5 - вправо в пределах попапа (Right),
6 - вверх в пределах попапа (Top),
7 - вниз в пределах попапа (Bottom).
Только для эффекта Slide.

IR.ShowKeyboard()

показать системную клавиатуру iOS или Android устройства

Синтаксис

IR.ShowKeyboard(type)

на входезначениеописание
type1type: Number
тип клавиатуры: 1 - алфавит, 2 - числа
на выходе
-

Пример

IR.AddListener(IR.EVENT_ITEM_PRESS, IR.GetItem("Page 1").GetItem("Item 1"), function()
{
IR.ShowKeyboard(2);
});

Примечания

Подсказка
  • На iOS для скрытия клавиатуры можно использовать команду IR.ShowKeyboard(0);, на Android это не сработает.
  • Для открытия клавиатуры, все другие клавиатуры должны быть скрыты. Если клавиатура уже открыта, например числовая, то команда открыть клавиатуру с алфавитом будет не удачной.
  • Для открытия клавиатуры на Windows, используйте команду IR.Execute("osk");.

IR.PasteFromClipboard()

Вставить текст из буфера обмена в активный Editbox. Текст будет вставлен только если в буфере действительно находится Текст (а не изображение или др. контент). Курсор позиционируется после вставленного текста

Синтаксис

IR.PasteFromClipboard()

на входезначениеописание
-
на выходе
-

Пример

IR.AddListener(IR.EVENT_ITEM_PRESS, IR.GetItem("Page 1").GetItem("Paste Button"),function()
{
IR.PasteFromClipboard();
});

Примечания

Подсказка
  • применение - клавиша вставки текста (можно расположить ее рядом с полем ввода)

IR.GetClipboard()

Получить текст из буфера обмена

Синтаксис

IR.GetClipboard()

на входезначениеописание
-
на выходе
-

Пример

`var clipboard = IR.GetClipboard();`

Примечания

Подсказка
  • применение - передать текст из буфера в скрипт

IR.ShowPasteHelper()

над курсором в активном EditBox этот метод отобразит нативное, масштабируемое в соответствии с разрешением проекта всплывающее окно: "PasteHelper" c надписью Paste, аналогично инструменту вставки на iOS и Android устройствах. По нажатию на это всплывающее окно, выполяется команда IR.PasteFromClipboard();. Нажатие на окно вставки, повторное нажатие на поле ввода или смена фокуса сразу закрывают PasteHelper

Синтаксис

IR.ShowPasteHelper()

на входезначениеописание
-
на выходе
-

Пример

IR.AddListener(IR.EVENT_ITEM_HOLD, IR.GetItem("Page 1").GetItem("EditBox"),function()
{
IR.ShowPasteHelper();
});

Примечания

Подсказка

Поведение инструмента вставки (элемент EditBox):

  • Windows:
    • при нажатии Ctrl+V, автоматически срабатывает IR.PasteFromClipboard();, если буфер не пустой и в нем находится текст
    • по нажатию правой кнопкой мыши на поле ввода, отображается стандартный диалог "Вставить"
    • курсор перемещается в конец строки
  • iOS, Android:
    • при удержании пальца на поле ввода в течение 1 секунды, автоматически срабатывает IR.ShowPasteHelper();, диалог Paste будет скрыт при нажатии на любой элемент
    • курсор перемещается в конец строки

IR.SelectNextEditBox()

сместить фокус с текущего поля ввода на следующее по списку. Для определения порядка полей ввода используется Z-позиция элементов, посмотреть которую можно, включив отображение элементов в дереве проекта (Tools > Options > Show > Show Items In Tree). По нажатию Tab (на Windows) фокус смещается на следующее поле ввода автоматически, в пределах страницы или окна

Синтаксис

IR.SelectNextEditBox();

на входезначениеописание
-
на выходе
-

Пример

IR.AddListener(IR.EVENT_ITEM_CHANGE, IR.GetItem("Page 1").GetItem("Item 1"), function (action, key)
{
if (action == 2) // press Enter
{
IR.SelectNextEditBox();
}
});

IR.SetLifeTime()

установить время (в миллисекундах), в течение которого будет отображаться попап. Если необходимо сделать так, чтобы попап появлялся на определенное время, можно обратиться к его свойству LifeTime, с помощью метода .SetLifeTime().

Синтаксис

IR.SetLifeTime(popup, lt)

на входезначениеописание
popup"Popup 1"type: String
имя попапа
lt5000type: number
время отображения попапа (мс)
на выходе
успешность-type: boolean
успешность

Пример

function set_lt()
{
IR.SetLifeTime("Popup 1", 5000);
IR.ShowPopup("Popup 1");
}

IR.GetItem()

получить доступ к странице или попапу. Имея доступ к странице или попапу, вы можете обратиться к элементам на них с помощью метода .GetItem().

Синтаксис

IR.GetItem(item)

на входезначениеописание
item"Page 1"type: String
имя страницы или попапа
на выходе
Object[object DialogItemPrototype]type: Object
ссылка на объект интерфейса

Пример

IR.AddListener(IR.EVENT_START,0, function()
{
var DialogItem = IR.GetItem("Popup 1");
IR.Log(DialogItem); // [object DialogItemPrototype]
});

Примечания

Подсказка

При использовании метода IR.GetItem() вы получаете ссылку на диалоговый элемент (DialogItem) - объект интерфейса iRidium: страницу, попап или графический элемент. Ссылку на диалоговый элемент можно получить с использованием методов IR.GetItem(), IR.GetPage(), IR.GetPopup(). Например, имея доступ к странице или попапу, вы можете обратиться к элементам на них с помощью метода .GetItem():

var Item = IR.GetItem("Popup 1").GetItem("Item 1");
IR.Log(Item); // [object DialogItemPrototype]

Доступные методы приведены далее:

.GetItem()

получить доступ к графическому элементу на странице или попапе.

Синтаксис

IR.GetItem(page).GetItem(item)

на входезначениеописание
page"Page 2"type: String
имя страницы или попапа
item"Item 2"type: String
имя графического элемента на странице или попапе
на выходе
Object[Object DialogItemPrototype]type: Object
ссылка на объект

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
var DialogItem = IR.GetItem("Page 2").GetItem("Item 2");
IR.Log(DialogItem) // [Object DialogItemPrototype]
});

Примечания

Подсказка
  • Доступны свойства объектов Item

.CreateItem()

создает графический элемент на странице или попапе

Синтаксис

IR.GetItem(page).CreateItem(item_type, name, X, Y, width, height);

на входезначениеописание
page"Page 1"type: String
имя страницы или попапа
item_typeIR.ITEM_BUTTONtype: Object
тип графического элемента
name"Button 1"type: String
название элемента, уникальное для страницы
X30type: Number
координата по оси X
Y40type: Number
координата по оси Y
width800type: Number
ширина элемента
height150type: Number
высота элемента
на выходе
Object[Object DialogItemPrototype]type: Object
экземпляр графического объекта

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
IR.GetItem("Page 2").CreateItem(IR.ITEM_BUTTON, "Button 1", 30, 40, 800, 150);
});

Примечания

Подсказка

Типы диалоговых элементов:

  • IR.ITEM_PAGE - страница (Page)
  • IR.ITEM_POPUP - попап (Popup)
  • IR.ITEM_BUTTON - кнопка (Button)
  • IR.ITEM_TRIGGER_BUTTON - кнопка триггер (Trigger Button)
  • IR.ITEM_MUTI_STATE_BUTTON - анимированная кнопка (Multistate Button)
  • IR.ITEM_UPDOWN_BUTTON - кнопка инкремент/декремент (Up/Down Button)
  • IR.ITEM_LEVEL - уровень (Level)
  • IR.ITEM_MUTI_STATE_LEVEL - анимирванный уровень (Multistate Level)
  • IR.ITEM_EDIT_BOX - поле ввода (EditBox)
  • IR.ITEM_VIRTUAL_KEY_BUTTON - виртуальная клавиша (Virtual Key)
  • IR.ITEM_JOYSTICK - джойстик (Joystick)
  • IR.ITEM_LISTBOX - динамический список (List)
  • IR.ITEM_STATIC_LISTBOX - список попапов (Static List)

Доступны свойства объектов Item

.Clone()

клонирует страницу, попап, графический элемент на странице или попапе

Синтаксис

IR.GetItem(page).Clone(new_page_name);
IR.GetItem(page).GetItem(item).Clone(new_item_name);
на входезначениеописание
page"Page 1"type: String
имя страницы или попапа
new_page_name"Page 2"type: String
имя новой страницы или попапа (клона)
item"Item 1"type: String
имя графического элемента
new_item_name"Item 2"type: String
имя нового графического элемента (клона)
на выходе
Object[Object DialogItemPrototype]type: Object
ссылка на объект

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
IR.GetItem("Page 1").Clone("Page 2");
IR.GetItem("Page 1").GetItem("Item 1").Clone("Item 2");
// result:
IR.Log(IR.GetItem("Page 2")) // [object DialogItemPrototype]
IR.Log(IR.GetItem("Page 1").GetItem("Item 2")) // [object DialogItemPrototype]
});

.GetPopup()

получает по индексу попап, показанный на странице. Индекс - номер показанного попапа от 0 до n, возвращает null, если нет попапа с таким индексом.

Синтаксис

IR.GetItem(page).GetPopup(index);

на входезначениеописание
page"Page 1"type: String
имя страницы
index0type: Number
порядковый номер попапа в списке показанных на странице попапов, отсчет с нуля
на выходе
Object[Object DialogItemPrototype]type: Object
экземпляр попапа

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
var DialogItem = IR.GetItem("Page 1").GetPopup(0);
IR.Log(DialogItem) // [Object DialogItemPrototype]
});

Примечания

Подсказка
  • доступны свойства Popup

.StartActions()

выполнить действия, привязанные к событию графического элемента

Синтаксис

IR.GetItem(page).GetItem(item).StartActions(event);

на входезначениеописание
page"Page 1"type: String
имя страницы
item"Item 1"type: String
имя графического элемента
eventIR.EVENT_ITEM_PRESStype: object
событие графического элемента, действия которого нужно выполнить
на выходе
-

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
IR.GetItem("Page 1").GetItem("Item 1").StartActions(IR.EVENT_ITEM_PRESS);
});

Примечания

Подсказка
  • все события интерфейса см. в подразделе События
  • действия элемента выполнятся, но сам он не будет визуально участвовать в процессе
  • при выполнении учитываются только макросы, настроенные в редакторе. Действия объявленные через скрипт выполнены не будут

.GetState()

получить состояние графического элемента как объект

Синтаксис

IR.GetItem(page).GetItem(item).GetState(state_index);

на входезначениеописание
page"Page 1"type: String
имя страницы
item"Item 1"type: String
имя графического элемента
state_index0type: Number
порядковый номер состояния, отсчет с нуля
на выходе
Object[object StatePrototype]type: Object
ссылка на состояние элемента

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
var DialogItem = IR.GetItem("Page 1").GetItem("Item 1").GetState(0);
IR.Log(DialogItem); // [object StatePrototype]
});

Примечания

Подсказка
  • доступны свойства объекта State

.CreateState()

добавить состояние графическому элементу

Синтаксис

IR.GetItem(page).GetItem(item).CreateState();

на входезначениеописание
page"Page 1"type: String
имя страницы
item"Item 1"type: String
имя графического элемента
на выходе
Object[Object DialogItemPrototype]type: Object
ссылка на объект

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
IR.GetItem("Page 1").GetItem("Item 1").CreateState();
});

Примечания

Подсказка
  • учитывайте допустимое число состояний для выбранного элемента!

.ShowPopup()

показать попап на странице

Синтаксис

IR.GetItem(page).ShowPopup(popup, <effect_group>);

на входезначениеописание
page"Page 1"type: String
имя страницы
popup"Popup 1"type: String
имя попапа
effect_group1type: Number
номер группы эффектов, созданной через [
---------
-

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
IR.GetItem("Page 1").ShowPopup("Popup 1");
});

.HidePopup()

скрыть попап на странице

Синтаксис

IR.GetItem(page).HidePopup(popup, <effect_group>);

на входезначениеописание
page"Page 1"type: String
имя страницы
popup"Popup 1"type: String
имя попапа
effect_group1type: Number
номер группы эффектов, созданной через [
---------
-

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
IR.GetItem("Page 1").HidePopup("Popup 1");
});

.TogglePopup()

скрыть попап, если он показан, показать, если скрыт

Синтаксис

IR.GetItem(page).TogglePopup(popup, <effect_group>);

на входезначениеописание
page"Page 1"type: String
имя страницы
popup"Popup 1"type: String
имя попапа
effect_group1type: Number
номер группы эффектов, созданной через [
---------
-

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
IR.GetItem("Page 1").TogglePopup("Popup 1");
});

.Show()

показать графический элемент или попап на странице (универсальный метод)

Синтаксис

IR.GetItem(popup).Show();

на входезначениеописание
page"Popup 1"type: String
имя попапа
на выходе
-

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
IR.GetItem("Popup 1").Show();
});

.Hide()

скрыть графический элемент или попап на странице (универсальный метод)

Синтаксис

IR.GetItem(page).Hide();

на входезначениеописание
page"Page 1"type: String
имя страницы
на выходе
-

Пример

IR.AddListener(IR.EVENT_START, 0, function()
{
IR.GetItem("Page 1").Hide();
});

События

Событие - процесс, проброшенный в скрипты и имеющий идентификатор для отслеживания.

Слушатель - это функция, которая выполняется в случае срабатывания указанного ей события

Добавьте слушатель с помощью метода IR.AddListener

IR.AddListener(event, input, action);

  • event - идентификатор события, за которым следит слушатель
  • input - входной параметр, необходимый для создания слушателя. Если параметра нет, укажите 0
  • action - не именованная функция или ссылка на объявленную функцию, внутри которой выполняются действия
  • pointer - указатель на контекст вызова слушателя (не обязательный). Обратиться к контексту можно с помощью оператора this. Контекст может меняться во время работы программы

Пример:

IR.AddListener(IR.EVENT_ITEM_PRESS, IR.GetItem("Page 1").GetItem("Item 1"), function ()
{
IR.Log("pressed!");
});

IR.EVENT_ITEM_PRESS

идентификатор события, которое срабатывает при нажатии на графический элемент

Синтаксис

IR.AddListener(IR.EVENT_ITEM_PRESS, item, function, [pointer]);

на входезначениеописание
itemIR.GetItem("Page 1").GetItem("Item 1")type: object
ссылка на объект интерфейса
functionfunction() {}type: function
не именованная функция или обращение к функции
pointer-type: object
указатель на объект, который обслуживает функцию (опционально)
на выходе
-

Пример

IR.AddListener(IR.EVENT_ITEM_PRESS, IR.GetItem("Page 1").GetItem("Item 1"), function ()
{
IR.Log("action"); // action
});

IR.EVENT_ITEM_RELEASE

идентификатор события, которое срабатывает при отпускании графического элемента

Синтаксис

IR.AddListener(IR.EVENT_ITEM_RELEASE, item, function, [pointer]);

на входезначениеописание
itemIR.GetItem("Page 1").GetItem("Item 1")type: object
ссылка на объект интерфейса
functionfunction() {}type: function
не именованная функция или обращение к функции
pointer-type: object
указатель на объект, который обслуживает функцию (опционально)
на выходе
-

Пример

IR.AddListener(IR.EVENT_ITEM_RELEASE, IR.GetItem("Page 1").GetItem("Item 1"), function ()
{
IR.Log("action"); // action
});

IR.EVENT_ITEM_HOLD

идентификатор события, которое срабатывает при удержании графического элемента

Синтаксис

IR.AddListener(IR.EVENT_ITEM_HOLD, item, function, [pointer]);

на входезначениеописание
itemIR.GetItem("Page 1").GetItem("Item 1")type: object
ссылка на объект интерфейса
functionfunction() {}type: function
не именованная функция или обращение к функции
pointer-type: object
указатель на объект, который обслуживает функцию (опционально)
на выходе
-

Пример

IR.AddListener(IR.EVENT_ITEM_HOLD, IR.GetItem("Page 1").GetItem("Item 1"), function ()
{
IR.Log("action"); // action
});

IR.EVENT_ITEM_END_HOLD

идентификатор события, которое срабатывает в конце удержания графического элемента (при отпускании, после события HOLD)

Синтаксис

IR.AddListener(IR.EVENT_ITEM_END_HOLD, item, function, [pointer]);

на входезначениеописание
itemIR.GetItem("Page 1").GetItem("Item 1")type: object
ссылка на объект интерфейса
functionfunction() {}type: function
не именованная функция или обращение к функции
pointer-type: object
указатель на объект, который обслуживает функцию (опционально)
на выходе
-

Пример

IR.AddListener(IR.EVENT_ITEM_END_HOLD, IR.GetItem("Page 1").GetItem("Item 1"), function ()
{
IR.Log("action"); // action
});

IR.EVENT_ITEM_LOST_FOCUS

идентификатор события, которое срабатывает при отпускании любого объекта интерфейса (вместе с Release или End Of Hold). Событие указывает на потерю элементом фокуса

Синтаксис

IR.AddListener(IR.EVENT_ITEM_LOST_FOCUS, item, function, [pointer]);

на входезначениеописание
itemIR.GetItem("Page 1").GetItem("Item 1")type: object
ссылка на объект интерфейса
functionfunction() {}type: function
не именованная функция или обращение к функции
pointer-type: object
указатель на объект, который обслуживает функцию (опционально)
на выходе
-

Пример

IR.AddListener(IR.EVENT_ITEM_LOST_FOCUS, IR.GetItem("Page 1").GetItem("Item 1"), function ()
{
IR.Log("action"); // action
});

IR.EVENT_ITEM_CHANGE

идентификатор события, которое срабатывает при вводе текста в EditBox. С его помощью можно различать ввод символа и отправку команды, такой как Del или Enter. Событие возвращает: action - идентификатор действия:

КодЗначениеКодЗначениеКодЗначение
0NONE11NEXT22BANK_2_MOMENTARY_SELECT
1INSERT_TEXT12PREVIOUS23BANK_3_MOMENTARY_SELECT
2ENTER13HOME24BANK_4_MOMENTARY_SELECT
3UP14END25BANK_5_MOMENTARY_SELECT
4DOWN15INSERT26PAGE_UP
5LEFT16BANK_1_LOCKING_SELECT27PAGE_DOWN
6RIGHT17BANK_2_LOCKING_SELECT28FUNCTION
7DELETE18BANK_3_LOCKING_SELECT29CTRL
8CLEAR19BANK_4_LOCKING_SELECT30ALT
9ABORT20BANK_5_LOCKING_SELECT31SCANCODE
10EXIT21BANK_1_MOMENTARY_SELECT

key - идентификатор клавиши, дающий наиболее точное представление о действии.

Например: action : 30 (ALT), key : 56 (LEFT ALT), 90 (RIGHT ALT)

КодЗначениеКодЗначениеКодЗначениеКодЗначение
0NONE26BRACKET_LEFT52PERIOD78KEYPAD_ADD
1ESCAPE27BRACKET_RIGHT53SLASH79KEYPAD_1
2128RETURN54SHIFT_RIGHT80KEYPAD_2
3229CONTROL_LEFT55KEYPAD_MULTIPLY81KEYPAD_3
4330A56ALT_LEFT82KEYPAD_0
5431S57SPACE83KEYPAD_PERIOD
6532D58CAPS_LOCK84F11
7633F59F185F12
8734G60F286KEYPAD_ENTER
9835H61F387CONTROL_RIGHT
10936J62F488KEYPAD_DIVIDE
11037K63F589PRINT_SCREEN
12MINUS38L64F690ALT_RIGHT
13EQUAL39SEMICOLON65F791HOME
14BACKSPACE40APOSTROPHE66F892UP
15TAB41GRAVE67F993PAGE_UP
16Q42SHIFT_LEFT68F1094LEFT
17W43BACKSLASH69KEYPAD_NUM_LOCK95RIGHT
18E44Z70SCOLL_LOCK96END
19R45X71KEYPAD_797DOWN
20T46C72KEYPAD_898PAGE_DOWN
21Y47V73KEYPAD_999INSERT
22U48B74KEYPAD_SUBTRACT100DELETE
23I49N75KEYPAD_4101PAUSE
24O50M76KEYPAD_5102WINDOWS_LEFT
25P51COMMA77KEYPAD_6103WINDOWS_RIGHT

Синтаксис

IR.AddListener(IR.EVENT_ITEM_CHANGE, item, function (action, key) {}, [pointer]);

на входезначениеописание
itemIR.GetItem("Page 1").GetItem("Item 1")type: object
ссылка на объект интерфейса EditBox
functionfunction (action, key) {}type: function
функция, получающая от события входные параметры: * action - идентификатор действия: ввод символа или нажатие командной клавиши* key - идентификатор клавиши, дающий наиболее точное представление о действии. Например: action : 30 (ALT), key : 56 (LEFT ALT), 90 (RIGHT ALT)
pointer-type: object
указатель на объект, который обслуживает функцию (опционально)
на выходе
action1type: number
идентификатор действия: ввод символа или нажатие командной клавиши
key0type: number
идентификатор клавиши, дающий наиболее точное представление о действии. Например: action : 30 (ALT), key : 56 (LEFT ALT), 90 (RIGHT ALT)

Пример

IR.AddListener(IR.EVENT_ITEM_CHANGE, IR.GetItem("Page 1").GetItem("Item 1"), function (action, key)
{
if (action == 1) // insert text
{
IR.Log("new string: " + IR.GetItem("Page 1").GetItem("Item 1").Text)
}
});

IR.EVENT_MOUSE_DOWN

идентификатор события, которое срабатывает при нажатии кнопки мыши (Windows)

Синтаксис

IR.AddListener(IR.EVENT_MOUSE_DOWN, item, function, [pointer]);

на входезначениеописание
itemIR.GetItem("Page 1").GetItem("Item 1")type: object
ссылка на объект интерфейса
functionfunction() {}type: function
не именованная функция или обращение к функции
pointer-type: object
указатель на объект, который обслуживает функцию (опционально)
на выходе
-

Пример

IR.AddListener(IR.EVENT_MOUSE_DOWN, IR.GetItem("Page 1").GetItem("Item 1"), function ()
{
IR.Log("action"); // action
});

IR.EVENT_MOUSE_UP

идентификатор события, которое срабатывает при отжатии кнопки мыши (Windows)

Синтаксис

IR.AddListener(IR.EVENT_MOUSE_UP, item, function, [pointer]);

на входезначениеописание
itemIR.GetItem("Page 1").GetItem("Item 1")type: object
ссылка на объект интерфейса
functionfunction() {}type: function
не именованная функция или обращение к функции
pointer-type: object
указатель на объект, который обслуживает функцию (опционально)
на выходе
-

Пример

IR.AddListener(IR.EVENT_MOUSE_UP, IR.GetItem("Page 1").GetItem("Item 1"), function ()
{
IR.Log("action"); // action
});

IR.EVENT_MOUSE_MOVE

идентификатор события, которое срабатывает при перетягивании курсора мыши с зажатой левой кнопкой (Windows). Отдает каждое изменение координат курсора до момента, пока левая кнопка не будет отпущена.

Синтаксис

IR.AddListener(IR.EVENT_MOUSE_MOVE, item, function, [pointer]);

на входезначениеописание
itemIR.GetItem("Page 1").GetItem("Item 1")type: object
ссылка на объект интерфейса
functionfunction(x, y) {}type: function
не именованная функция или обращение к функции. Получает параметры:* х - координата курсора по горизонтали* y - координата курсора по вертикали
pointer-type: object
указатель на объект, который обслуживает функцию (опционально)
на выходе
x120type: number
координата курсора по горизонтали
y240type: number
координата курсора по вертикали

Пример

IR.AddListener(IR.EVENT_MOUSE_MOVE, IR.GetItem("Page 1").GetItem("Item 1"), function (x, y)
{
IR.Log(x + ":" + y); // new coordinates on move
});

IR.EVENT_TOUCH_DOWN

идентификатор события, которое срабатывает при нажатии на элемент (iOS, Android)

Синтаксис

IR.AddListener(IR.EVENT_TOUCH_DOWN, item, function (x, y, id), [pointer]);

на входезначениеописание
itemIR.GetItem("Page 1").GetItem("Item 1")type: object
ссылка на объект интерфейса
functionfunction() {}type: function
не именованная функция или обращение к функции
pointer-type: object
указатель на объект, который обслуживает функцию (опционально)
на выходе
x120type: number
координата нажатия на экран по горизонтали
y240type: number
координата нажатия на экран по вертикали
id1type: number
id нажатия

Пример

IR.AddListener(IR.EVENT_TOUCH_DOWN, IR.GetItem("Page 1").GetItem("Item 1"), function (x, y, id)
{
IR.Log(x + " " + y + " " + id);
});

IR.EVENT_TOUCH_UP

идентификатор события, которое срабатывает при отпускании элемента (iOS, Android)

Синтаксис

IR.AddListener(IR.EVENT_TOUCH_UP, item, function (x, y, id), [pointer]);

на входезначениеописание
itemIR.GetItem("Page 1").GetItem("Item 1")type: object
ссылка на объект интерфейса
functionfunction() {}type: function
не именованная функция или обращение к функции
pointer-type: object
указатель на объект, который обслуживает функцию (опционально)
на выходе
x120type: number
координата нажатия на экран по горизонтали
y240type: number
координата нажатия на экран по вертикали
id1type: number
id нажатия

Пример

IR.AddListener(IR.EVENT_TOUCH_UP, IR.GetItem("Page 1").GetItem("Item 1"), function (x, y, id)
{
IR.Log(x + " " + y + " " + id);
});

IR.EVENT_TOUCH_MOVE

идентификатор события, которое срабатывает при перемещении пальца по элементу (iOS, Android)

Синтаксис

IR.AddListener(IR.EVENT_TOUCH_MOVE, item, function, [pointer]);

на входезначениеописание
itemIR.GetItem("Page 1").GetItem("Item 1")type: object
ссылка на объект интерфейса
functionfunction() {}type: function
не именованная функция или обращение к функции. Получает параметры:* х - координата касания экрана по горизонтали* y - координата касания экрана по вертикали
pointer-type: object
указатель на объект, который обслуживает функцию (опционально)
на выходе
x120type: number
координата касания экрана по горизонтали
y240type: number
координата касания экрана по вертикали

Пример

IR.AddListener(IR.EVENT_TOUCH_MOVE, IR.GetItem("Page 1").GetItem("Item 1"), function ()
{
IR.Log(x + ":" + y); // new coordinates on move
});

IR.EVENT_ITEM_SHOW

идентификатор события, которое срабатывает при показе страницы или попапа

Синтаксис

IR.AddListener(IR.EVENT_ITEM_SHOW, item, function, [pointer]);

на входезначениеописание
itemIR.GetItem("Page 1")type: object
ссылка на страницу или попап
functionfunction() {}type: function
не именованная функция или обращение к функции
pointer-type: object
указатель на объект, который обслуживает функцию (опционально)
на выходе
-

Пример

IR.AddListener(IR.EVENT_ITEM_SHOW, IR.GetItem("Page 1"), function ()
{
IR.Log("action"); // action
});

IR.EVENT_ITEM_HIDE

идентификатор события, которое срабатывает при скрытии страницы или попапа

Синтаксис

IR.AddListener(IR.EVENT_ITEM_HIDE, item, function, [pointer]);

на входезначениеописание
itemIR.GetItem("Page 1")type: object
ссылка на страницу или попап
functionfunction() {}type: function
не именованная функция или обращение к функции
pointer-type: object
указатель на объект, который обслуживает функцию (опционально)
на выходе
-

Пример

IR.AddListener(IR.EVENT_ITEM_HIDE, IR.GetItem("Page 1"), function ()
{
IR.Log("action"); // action
});

IR.EVENT_POPUP_ITEM_CHANGE

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

Синтаксис

IR.AddListener(IR.EVENT_POPUP_ITEM_CHANGE, item, function (event, popup, item), [pointer]);

на входезначениеописание
itemIR.GetPopup("Popup 1")type: object
ссылка на попап
functionfunction type: function
не именованная функция или обращение к функции
pointer-type: object
указатель на объект, который обслуживает функцию (опционально)
на выходе
event142type: number
идетификатор события
popup"Popup 1"type: string
имя попапа
item"Item 1"type: string
имя элемента

Пример

IR.AddListener(IR.EVENT_POPUP_ITEM_CHANGE,IR.GetPopup("Popup 1"),function(event, popup, item){
IR.Log(event); // идетификатор события, например 142-Press, 143-Release, 146-Hold
IR.Log(popup.Name); // имя Popup
IR.Log(item.Name); // имя элемента
});

Свойства объектов

Свойство объекта - одна из характеристик объекта, доступная для обращения. Набор свойств зависит от типа объекта. Объекты, полученные при обращении к нижележащим объектам иерархии, не наследуют их свойств (например, обратившись к объекту Item нельзя получить ширину объекта Popup, на котором он расположен).

IR

IR.property

СвойствоЗначениеТип данных
ProjectName"Welcome"type: String
имя проекта, который сейчас открыт в приложении
PagesCount4type: Number
число страниц в проекте
PopupsCount12type: Number
число попапов в проекте
CurrentPage[object DialogItemPrototype]type: Object
ссылка на объект - открытую страницу проекта

Page

IR.GetItem(page).property

СвойствоЗначениеТип данных
ItemsCount53type: Number
отдает число элементов на странице
PopupsCount2type: Number
отдает число попапов на странице
PopupsOnPageArray of Objectstype: Array
отдает массив объектов - попапов на странице
X100type: Number
координата по горизонтали
Y100type: Number
кооридната по вертикали
Width250type: Number
ширина
Height400type: Number
высота
Name"Item 1"type: String
имя объекта
TypeIR.ITEM_BUTTONtype: Object
тип объекта
BlurDepth50type: Number
глубина эффекта размытия (Blur)
BlurEnabledtruetype: Boolean
активация эффекта размытия. Эффект действует только на изображение страницы, на элементы не действует

IR.GetItem(popup).property

СвойствоЗначениеТип данных
ItemsCount53type: Number
отдает число элементов на попапе
Modal0 / 1type: Number
свойство модальности попапа
X100type: Number
координата по горизонтали
Y100type: Number
кооридната по вертикали
Width250type: Number
ширина
Height400type: Number
высота
Name"Item 1"type: String
имя объекта
TypeIR.ITEM_BUTTONtype: Object
тип объекта
Angle360type: Number
угол поворота
Parent"Page 1"type: String
родительский объект
BlurDepth50type: Number
глубина эффекта размытия (Blur)
BlurEnabledtruetype: Boolean
эффект действует только на изображение попапа

Item

IR.GetItem(page/popup).GetItem(item).property

СвойствоЗначениеТип данных
Text"Hello"type: String
текст во всех состояниях элемента
State2type: Number
состояние элемента
Feedback4type: Number
тип обратной связи
Hit2type: Number
реакция на нажатия
Password0type: Number
номер пароля
Value1type: Number
значение Value
StatesCount1type: Number
количество состояний
X100type: Number
координата по X
Y100type: Number
координата по Y
Width250type: Number
ширина
Height400type: Number
высота
Name"Item 1"type: String
имя элемента
TypeIR.ITEM_BUTTONtype: Object
тип элемента
Angle360type: Number
угол поворота
ScaleX100type: Number
масштаб по X
ScaleY100type: Number
масштаб по Y
Visibletruetype: Boolean
видимость
Enabletruetype: Boolean
возможность нажатия
Parent"Page 1"type: String
родительский объект
PasswordChar"\u2022"type: String
символ пароля
zIndex1type: Number
порядок по оси Z

Item: Level

IR.GetItem(page/popup).GetItem(level).property

СвойствоЗначениеТип данных
Min0type: Number
нижний предел
Max100type: Number
верхний предел
Empty0 / 1type: Number
пустой уровень
Filled0 / 1type: Number
заполненный уровень
Invert0 / 1type: Number
инверсия шкалы
Direction0 / 1type: Number
направление
Slider1type: Number
тип ползунка
SliderColor0xFF0000FFtype: RGBA
цвет ползунка

Item: Multistate Level

IR.GetItem(page/popup).GetItem(MS_level).property

СвойствоЗначениеТип данных
Min0type: Number
нижний предел
Max100type: Number
верхний предел
Empty0 / 1type: Number
пустой уровень
Filled0 / 1type: Number
заполненный уровень
Invert0 / 1type: Number
инверсия шкалы
Direction0 / 1type: Number
направление

Item: Joystick

IR.GetItem(page/popup).GetItem(Joystick).property

СвойствоЗначениеТип данных
ValueX50type: Number
значение по X
ValueY100type: Number
значение по Y
Color0xD2D2D2D2type: RGBA
цвет под курсором
Min0type: Number
минимум
Max100type: Number
максимум
Cursor1type: Number
тип курсора
CursorColor0xFF0000FFtype: RGBA
цвет курсора
GetColorOnCoordinates(x,y)0xB2B2B2FFtype: RGBA
получить цвет пикселя по его координатам x и y
MinX / MinY50type: Number
минимальная координата по оси X / Y
MaxX / MaxY100type: Number
максимальная координата по оси X / Y

Item: Up/Down Button

IR.GetItem(page/popup).GetItem(Up/Down_Button).property

СвойствоЗначениеТип данных
Max100type: Number
предел
Delta1type: Number
шаг
PressDelta1type: Number
шаг при нажатии
HoldDelta5type: Number
шаг при удержании

Item: Trigger Button

IR.GetItem(page/popup).GetItem(Trigger_Button).property

СвойствоЗначениеТип данных
TriggerValue10type: Number
первое значение
TriggerValue21type: Number
второе значение

Item: List

IR.GetItem(page/popup).GetItem(list).property

СвойствоЗначениеТип данных
Template"Popup 1"type: String
шаблон списка
Direction0type: Number
0 - вертикальный
1 - горизонтальный
ItemsCount24type: Number
количество пунктов
Filter"A"type: String
фильтр

см. подробнее в JavaScript API iRIdium. Списки

State

IR.GetItem(page/popup).GetItem(item).GetState(n).property

СвойствоЗначениеТип данных
Color0xFF0000FFtype: RGBA
получить цвет состояния
FillColor0xFF0000FFtype: RGBA
установить цвет состояния
ColorAlphaChannel0xFF0000FFtype: RGBA
получить прозрачность цвета
Opacity255type: Number
0-255 прозрачность состояния
Border1type: Number
указать тип бордюра
BorderColor0xFF0000FFtype: RGBA
установить цвет бордюра
TextColor0xFF0000FFtype: RGBA
установить цвет текста
Text"string"type: String
текст в состоянии элемента
TextAlign0type: Number
способ выравнивания текста
TextEffectColor0xFF0000FFtype: RGBA
установить цвет эффекта
TextPaddingTop0type: Number
смещение текста по Y вверх
TextPaddingLeft0type: Number
смещение текста по X влево
TextPaddingRight0type: Number
смещение текста по X вправо
TextPaddingBottom0type: Number
смещение текста по Y вниз
Image"Image 1.png"type: String
установить изображение
ImageX0type: Number
смещение изображения по X
ImageY0type: Number
смещение изображения по Y
ImageAlign0type: Number
выравнивание изображения
ImageStretch0type: Number
0 - None
1 - Proportional
2 - FullSize
ImagePaddingTop0type: Number
смещение изображения по Y вверх
ImagePaddingLeft0type: Number
смещение изображения по X влево
ImagePaddingRight0type: Number
смещение изображения по X вправо
ImagePaddingBottom0type: Number
смещение изображения по Y вниз
Icon"Image 2.png"type: String
установить иконку
IconX0type: Number
смещение иконки по X
IconY0type: Number
смещение иконки по Y
IconAlign0type: Number
выравнивание иконки
IconPaddingTop0type: Number
смещение иконки по Y вверх
IconPaddingLeft0type: Number
смещение иконки по X влево
IconPaddingRight0type: Number
смещение иконки по X вправо
IconPaddingBottom0type: Number
смещение иконки по Y вниз
IconStrech0type: Number
0 - None
1 - Proportional
2 - FullSize
Chameleon"Image 3.png"type: String
изображение-хамелеон
ChameleonStrech0type: Number
0 - None
1 - Proportional
2 - FullSize
FontId1001type: Number
идентификатор шрифта
FontFile"string"type: String
шрифт текста
FontSize12type: Number
размер шрифта
Spacing0type: Number
межбуквенный интервал
LineSpacing1type: Number
межстрочный интервал
TextX0type: Number
смещение текста по X
TextY0type: Number
смещение текста по Y
TextEffect1type: Number
эффект текста
TextRotation0
90
180
270
type: Number
угол поворота текста
DrawOrder0x34521type: HEX number
порядок слоев:
3 - Icon
4 - Text
5 - Border
2 - Image
1 - Fill
WordWrap0 / 1type: Number
автоперенос текста
BlurType0type: Number
0 - Default
1 - Background
BlurDepth100type: Number
0-100 размытие