«Страница» и «Таблица» ---------------------- *Описание статической таблицы выглядит следующим образом* .. code-block:: js { "id": "simple-table", // идентификатор компонента "type": "table", // тип компонента "config": { "fixedLayout": false, // фиксированная разметка "format": "${salary} - ${amount}",// форматная строка "delimeter": "" // разделитель свертки }, "properties": [], // массив компонентов, так же как в форме "layout": {}, // разметка, так же как в форме "style": { // стиль компонента "border": "1", // отображать границы "wrap": true // выводить содержимое в виде абзаца } } *Описание динамической таблицы выглядит следующим образом* .. code-block:: js { "id": "table-id", // идентификатор компонента "type": "table", // тип компонента "config": { "appendRows": true, // добавлять строки в режиме заполнения "init-row": 2, // количество отображаемых строк при создании "fixedLayout": false, // фиксированная разметка "isHaveHeaders": true // добавить заголовок таблицы } "properties": [], // массив компонентов, так же как в форме "layout": {}, // разметка, так же как в форме "style": { "border": "1", // отображать границы "wrap": true // выводить содержимое в виде абзаца } } *Модель данных динамической таблицы* .. code-block:: js { "id": "person-list", // идентификатор компонента "type": "appendable_table", // тип компонента "key": "значение свертки таблицы", "data": [{ // массив данных таблицы "id": "person-b1", // компонент person в первой строке таблицы "type": "textbox", "value": "Иванов Иван" }, { "id": "age-b1", // компонент age в первой строке таблицы "type": "numericinput", "value": "23", "key": "23" }, { "id": "person-b2", // компонент person во второй строке таблицы "type": "textbox", "value": "Сериков Серик" }, { "id": "age-b2", // компонент age во второй строке таблицы "type": "numericinput", "value": "25", "key": "25" } ] } .. note:: Компоненты внутри таблицы имеют идентификаторы, т.к. таблица может иметь несколько блоков, чтобы идентификаторы не дублировались добавляется постфикс -bN, где N номер блока таблицы, нумерация блоков начинается с 1. Например, если компонент в таблице имеет идентификатор cmp, то значения идентификаторов для блоков будут иметь вид cmp-b1, cmp-b2 и т.д. Окончание -bN должно иметь одинаковый номер N для компонентов одного блока. ------------------------------------------------------------------------------ .. js:class:: AS.FORMS.TableModel Модель компонентов «Страница» и «Таблица» .. js:data:: bus **Дополнительные типы событий** *tableRowAdd* - событие добавления блока в дин таблицу Object event: возникшее событие :js:class:`AS.FORMS.TableModel` model: модель проигрывателя массив :js:class:`AS.FORMS.TableModel` models: модели добавленного блока дин таблицы *tableRowDelete* - событие удаления блока дин таблицы Object event: возникшее событие .. js:function:: getBlockNumbers() :returns: массив с номерами блоков дин таблицы, поскольку блоки из дин таблицы удаляются и добавляются, то номер блоков идут не по порядку, например [1, 5, 6, 8] и это не будет ошибкой .. js:function:: getModelWithId(cmpId[, tableId[, blockNumber]) Получить модель компонента по его идентификатору :param String cmpId: идентификатор компонента :param String tableId: идентификатор динамической таблицы :param Number blockNumber: номер блока динамической таблицы :returns: :js:class:`AS.FORMS.Model` .. js:function:: createRow() Добавляет блок таблицы .. js:function:: removeRow(blockIndex) Удаляет блок таблицы :param Number blockNumber: индекс блока дин таблицы (по порядку) .. js:function:: removeRowByBlockNumber(blockNumber) Удаляет блок таблицы :param Number blockNumber: номер блока дин таблицы .. js:function:: getTextValue() Возвращает форматированное значение свертки :returns: значение свертки .. js:function:: isHaveHeader() Наличие заголовка .. js:function:: isPage() Является страницей .. js:function:: isStatic() Является статической таблицей .. js:function:: isParagraph() Свертка включена --------------------------------------------------------------------------------------------- .. js:class:: AS.FORMS.TableStaticView Отображение статической таблицы или страницы .. js:function:: getRowsCount() Возвращает количество рядов таблицы, не обязательно равно числу блоков дин таблицы, посклько блок может состоять из сколько угодно рядов .. js:function:: setColumnVisible(columnNumber, visible) Делает столбец таблицы видимым / невидимым :param Number columnNumber: номер столбца :param boolean visible: видимый .. js:function:: getInvisibleColumns() Возвращает список невидимых столбцов .. js:function:: getViewWithId(cmpId[, tableId[, tableBlockIndex]]) Получение отображения компонента с указанным идентификатором в указанной таблице и указанном блоке, если идентификатор таблицы не указан, то ищется модель компонента на странице или в статических таблицах :param String cmpId: идентификатор компонента :param String tableId: идентификатор динамической таблицы :param Number tableBlockIndex: номер блока динамической таблицы :returns: :js:class:`AS.FORMS.View` отображение компонента .. js:class:: AS.FORMS.TableDynamicView Отображение динамической таблицы .. js:function:: setEnabled(enabled) Разрешить пользователю добавлять и удалять блоки, при этом программная возможность остается :param boolean enabled: разрешить добавлять и удалять блоки .. js:function:: setColumnVisible(column, visible) Сделать столбец таблицы видимым :param Number column: номер столбца таблицы :param boolean visible: является видимым .. js:function:: getViewWithId(cmpId[, tableId[, tableBlockIndex]]) Получить отображения компонента с указанным идентификатором в указанной таблице и указанном блоке, если идентификатор таблицы не указан, то ищется модель компонента на странице или в статических таблицах :param String cmpId: идентификатор компонента :param String tableId: идентификатор динамической таблицы :param Number tableBlockIndex: номер строки динамической таблицы :returns: ``object`` отображение компонента .. js:function:: mergeCell(row, column, rows, cols) Объединить ячейки в блоке :param Number row: номер ряда таблицы :param Number column: номер столбца таблицы :param Number rows: количество рядов для объединения :param Number cols: количество столбцов для объединения .. js:function:: splitCell(row, column) Разъединить ячейки :param Number row: номер ряда таблицы :param Number column: номер столбца таблицы .. js:class:: AS.FORMS.TableParagraphView Отображение динамической таблицы в свертке