## Описания компонентов   {#components}

Ниже описаны следующие компоненты формы:

-   [Компонент добавления ссылки](#link)
-   [Компонент выбора пользователя](#userchooser)
-   [Компонент выбора должности](#positionchooser)
-   [Компонент выбора файла](#filechooser)
-   [Компонент выбора записи реестра](#registrychooser)
-   [Модифицированный компонент выбора записи реестра](#reg_create_chooser)
-   [Числовое поле](#numeric_field)
-   [Пользовательский компонент связи из интерфейса](#reg_create_connection)
-   [Пользовательская динамическая таблица](#reg_dyn_table)

### Компонент добавления ссылки {#link}

Данный компонент позволяет добавить ссылку на форму записи реестра.

![Компонент добавления ссылки](resources/img/storage/link.png)

При наведении курсора на область данного компонента (в том числе
и лейбл "Ссылка:") появляется возможность кликнуть по полю, после
чего открывается диалог настройки ссылки.

![Диалог настройки ссылки](resources/img/storage/link_settings.png)

В данном окне присутствуют следующие настройки:

-   URL - поле для ввода ссылки

-   Надпись - поле для ввода текста, который отображается в данном
    поле в режиме просмотра или после лейбла "Ссылка:" в режиме
    редактирования

-   Открывать в отдельном окне - опция для настройки возможности
    открытия ссылки в отдельном окне

После добавления ссылки и по нажатию на кнопку "Готово", поле
заполняется соответствующим значением. По нажатию на ссылку в режиме
просмотра производится переход по данной ссылке.

### Компонент выбора пользователя {#userchooser}

Данный компонент позволяет выбрать нужного пользователя среди всех
пользователей.

![Компонент выбора пользователя](resources/img/storage/comp_userchooser.png)

По нажатию на кнопку справа от поля ввода появляется диалог выбора
пользователя.

![Диалог выбора пользователей](resources/img/storage/userchooser.png)

В данном диалоге возможен выбор только одного пользователя. Выбранный
пользователь выделяется голубым цветом. Доступен поиск пользователя
по его ФИО и должности. Для выбора пользователя необходимо выделить
нужного и кликнуть по кнопке "Выбрать", после чего поле заполнится
тегом выбранного пользователя. При необходимости можно удалить тег, нажав
на крестик и подтвердив данное действие.

### Компонент выбора должности {#positionchooser}

Данный компонент позволяет выбрать нужную должность среди всех
пользователей.

![Компонент выбора должности](resources/img/storage/comp_positionchooser.png)

По нажатию на кнопку справа от поля ввода появляется диалог выбора
должности.

![Диалог выбора должности](resources/img/storage/positionchooser.png)

В данном диалоге возможен выбор только одной должности. Выбранная
должность выделяется голубым цветом. Доступен поиск должности
по названию. Для выбора должности необходимо выделить нужную и
кликнуть по кнопке "Выбрать", после чего поле заполнится тегом
выбранной должности. При необходимости можно удалить тег, нажав
на крестик и подтвердив данное действие.

### Компонент выбора файла {#filechooser}

Данный компонент позволяет загрузить изображение(файл) и отображать его
на форме записи реестра.

![Компонент выбора файла в режиме редактирования](resources/img/storage/filechooser.png)

В режиме редактирования отображается кнопка "Выбрать файл". По нажатию
на нее появляется меню со следующими пунктами:

-   С компьютера

-   Из хранилища

-   Создать новый (отсутствует для изображений)

При выборе пункта "С компьютера" открывается диалоговое окно выбора файла,
в котором по нажатию на кнопку "Выберите файл" открывается браузерный
диалог загрузки файлов. После выбора необходимого файла, в диалоге
отображается название загруженного файла, кнопка "Загрузить" становится
активной. По нажатию на эту кнопку файл загружается на форму.

![Диалоговое окно выбора файла](resources/img/storage/choose_file.png)

При выборе пункта "Из хранилища" открывается диалоговое окно выбора файла
из хранилища. Личная папка пользователя отображается, также отображаются
все папки, на которые у пользователя есть права. Доступен единичный
выбор файла, без возможности добавления новой папки. После выбора
необходимого файла, он выделяется голубым цветом, кнопка "Выбрать"
становится активной. По нажатию на эту кнопку файл загружается
на форму.  

![Диалоговое окно выбора файла из хранилища](resources/img/storage/choose_storage_file.png)

Файл отображается в виде подчеркнутого лейбла - названия файла. По
нажатию на название открывается содержимое файла в новом окне. В
зависимости от настройки содержимое файла, в частности изображения,
может отображаться на форме.

При выборе пункта "Создать новый" открывается диалоговое окно создания
нового файла. После ввода названия файла кнопка "Готово" сановится активной.
По нажатию на эту кнопку создается новый файл с расширением `htd`,
добавляется в список файлов. По нажатию на лейбл с названием данного файл
открывается HTD-редактор с пустым содержимым.

![Диалоговое окно создания нового файла](resources/img/storage/create_new.png)

Для удаления файла необходимо кликнуть на крестик рядом с лейблом
названия файла. Для удаления изображения необходимо кликнуть на крестик
в правом нижнем углу и подтвердить действие.

### Компонент выбора записи реестра {#registrychooser}

Данный компонент позволяет выбрать среди всех записей реестра нужную
запись.

![Компонент выбора записи реестра](resources/img/storage/regchooser.png)

По нажатию на кнопку справа от поля ввода появляется диалог выбора записи
реестра.

![Диалог выбора записи реестра](resources/img/storage/registrychooser.png)

В данном диалоге отображаются все записи реестра. Возможен выбор
только одной записи. Отображаемые столбцы, их название и порядок
настраиваются разработчиком Synergy. Доступен поиск записей по всем
столбцам, а также переход по страницам. Выбранная строка выделяется
голубым цветом.

По нажатию на кнопку "Выбрать" поле заполняется выбранной
записью в виде тега, значение которого состоит из полей, отмеченных
как "значащее содержимое". Данное значение можно удалить, нажав на
крестик и подтвердив действие.

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

### Модифицированный компонент выбора записи реестра {#reg_create_chooser}

Данный компонент позволяет создать новую запись реестра без перехода
непосредственно к данному реестру или выбрать среди имеющихся записей
реестра нужную.

Список доступных действий данного компонента:

-   "+Создать"

-   "Выбрать из реестра"

-   "Удалить"

![Модифицированный компонент выбора записи реестра](resources/img/storage/reg_create_chooser.png)

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

![Модифицированный компонент выбора записи реестра с выбранным значением](resources/img/storage/rcc_chosen.png)

*Создание новой записи реестра из текущей формы:*

Создание новой записи доступно по нажатию на лейбл *"+ Создать"* (доступен
всегда). По нажатию на лейбл открывается диалоговое окно проигрывателя
формы в режиме редактирования. При этом производится сопоставление записей
реестра. После заполнения всех полей необходимо нажать на кнопку "Создать",
которая находится в нижней части окна. После чего запись будет создана, и
поле компонента заполнится соответствующем значением.

![Диалог создания новой записи реестра](resources/img/storage/rcc_new.png)

*Выбор существующей записи реестра:*

Выбор записи осуществляется по нажатию на лейбл *"Выбрать из реестра"*
(доступен всегда). По нажатию на лейбл открывается
[диалог выбора записи реестра](#registrychooser). После выбора записи
реестра поле компонента заполнится соответствующим значением.

*Удаление текущего выбранного значения компонента:*

Удаление текущего значения компонента доступно по нажатию на лейбл *"Удалить"*,
который доступен только после выбора какого-либо значения. По нажатию на лейбл
"Удалить" компонент принимает вид пустого поля ввода.

### Числовое поле {#numeric_field}

Данный компонент позволяет отобразить типизированные десятичные числовые значения.
Внешне компонент аналогичен компоненту «Однострочное поле». В поле серым
цветом отображается подсказка с текстом "Введите число". Данное поле принимает
только числа и некоторые символы (точка, запятая).

Кроме того, в числовом поле доступен ввод простых числовых выражений (сложение,
вычитание, умножение, деление). При этом значением поля будет являться значение
введенного выражения. Выражение должно начинаться с символа "=".

> **Пример:**
    Для товара, цена которого за единицу равна 230 тенге, можно ввести сумму за
35 единиц, введя в поле *Сумма, тенге* следующее:

> =230*35

> В поле *Сумма, тенге* отобразится значение этого выражения:

> 8 050

### Пользовательский компонент связи из интерфейса {#reg_create_connection}

Компонент представлен пиктограммой соответствующего приложения и ссылкой.

Анкор ссылок - значения номеров телефонов и логины социальных сетей, указанных
для [Аккаунта](#account) и [Контакта](#contact). Для приложения Skype имеются
две ссылки - для звонка и сообщения. Анкор таких ссылок дополнительно содержат:

*   для звонков - `Позвонить`
*   для сообщений - `Написать`

При каждом открытии формы значения компонентов актуализируются согласно
данным соответствующих записей [Аккаунта](#account) и [Контакта](#contact).

По нажатию на ссылку:

*   Telegram - откроется веб-приложение Telegram с открытой вкладкой
    чата с выбранным контактом

*   Facebook Messenger - откроется веб-приложение Facebook Messenger
    с открытой вкладкой чата с выбранным контактом

*   Viber - откроется приложение Viber

    > **Примечание**
    >
    > Если приложение Viber не установлено на компьютере пользователя,
    > по нажатию а ссылку ничего не произойдет, и это не будет являться
    > ошибкой Synergy.

*   Skype (позвонить) - откроется приложение Skype с вызовом на номер
    выбранного контакта

*   Skype (написать) - откроется приложение Skype с открытой вкладкой
    чата с выбранным контактом

    > **Примечание**
    >
    > Если приложение Skype не установлено на компьютере пользователя,
    > по нажатию а ссылку ничего не произойдет, и это не будет являться
    > ошибкой Synergy.

*   Почта (mailto:) - откроется системный почтовый клиент пользователя,
    в котором поле "Кому" заполнено указанным почтовым адресом

*   Телефон (tel:) - откроется SIP-клиент пользователя с вызовом на
    указанный номер

    > **Примечание**
    >
    > Если на компьютере пользователя не установлен почтовый или SIP
    > клиенты, по нажатию а ссылку ничего не произойдет, и это не будет
    > являться ошибкой Synergy.

![Контактные данные клиента для связи](resources/img/connections.png)

### Пользовательская динамическая таблица {#reg_dyn_table}

Модифицированный компонент представляет собой динамическую таблицу.

При наличии 2 и более блоков под таблицей добавляется кнопка "Загрузить
еще" вне зависимости от текущего режима проигрывателя форм. По нажатию на
кнопку "Загрузить еще" в таблицу добавляются следующие пять блоков. При
смене режима проигрывателя форм документ отображает те же блоки таблицы,
как и в предыдущем режиме.

**Режим редактирования**

В режиме редактирования над таблицей содержится кнопка "Добавить активность".
По нажатию на эту кнопку вверх таблицы добавляется новый пустой блок.

**Режим чтения**

В режиме чтения фон блоков таблицы окрашен в следующие цвета:

*   нечетные блоки - #f1f1f1
*   четные блоки - #ffffff

![Таблица в режиме редактирования](resources/img/activity_edit_1.png)

![Таблица в режиме редактирования](resources/img/activity_edit_2.png)

![Таблица в режиме чтения](resources/img/activity_read_1.png)

![Таблица в режиме чтения](resources/img/activity_read_2.png)
