Wiki source code of Интерфейс table

Version 6.1 by Bimit Administrator on 27.08.2024, 09:12

Show last authors
1 Это интерфейс для отображения результата работы плагина в табличном виде в системе BIMIT
2 В нем доступны следующий функции:
3
4 * [[addHeaderRow>>path:#_Toc1]] - добавление строки с заголовками в таблицу
5 * [[addRow>>path:#_Toc2]] - добавление строки
6 * [[addCell>>path:#_Toc3]] - добавление ячейки в таблицу
7 * [[addButton>>path:#_Toc4]] - добавление кнопки с действием жирный/простой
8 * [[setPageSize>>path:#_Toc5]] - установка количества элементов на одной странице
9 * [[showPage>>path:#_Toc6]] - установка текущей отображаемой таблиц
10 * [[replaceRow>>path:#_Toc7]] - замена содержимого строки по указанному индексу с указанием новых данных
11 * [[sortASC>>path:#_Toc8]] - установка параметров для сортировки данных в таблице по возрастанию с указанием столбца
12 * [[sortDESC>>path:#_Toc9]] - установка параметров для сортировки данных в таблице по убыванию с указанием столбца
13 * [[createGroupElements>>path:#_Toc10]] - создание группы элементов с указанием цвета группы и списка элементов
14 * [[saveTempTable>>path:#_Toc11]] - сохранение временной таблицы (перед сохранением сортирует данные)
15 * [[xlsxToJSON>>path:#_Toc12]] - преобразование документа Excel (XLSX, XLS) в формат JSON
16 * [[xlsxToJSON>>path:#_Toc13]] - преобразование документа Excel (XLSX, XLS) в формат JSON с учетом пагинации
17
18 (% class="box infomessage" %)
19 (((
20 **{{id name="_Toc1"/}}addHeaderRow** - добавление строки с заголовками в таблицу
21 )))
22
23 * **table.addHeaderRow ("Заголовок 1","Заголовок 2","Заголовок 3")** - сколько заголовков, столько и столбцов в итоговой странице
24
25 **Пример использования:**
26
27 {{code language="java"}}
28 table.addHeaderRow("Заголовок 1","Заголовок 2","Заголовок 3")
29 {{/code}}
30
31
32 (% class="box infomessage" %)
33 (((
34 **{{id name="_Toc2"/}}addRow** - добавление строки
35 )))
36
37 * **table.addRow ("Строка 1","Строка 2","Строка 3")** - создает строку с выбранными данными
38 * **table.addRow ()** - создает пустую строку
39
40 **Примеры использования:**
41
42 {{code language="java"}}
43 table.addRow("Строка 1","Строка 2","Строка 3")
44 {{/code}}
45
46 {{code language="java"}}
47 table.addRow()
48 {{/code}}
49
50
51 (% class="box infomessage" %)
52 (((
53 **{{id name="_Toc3"/}}addCell** - добавление ячейки в таблицу
54 )))
55
56 * **table.addCell (индекс строки, индекс столбца, данные)**
57 * **table.addCell (1,1, "123")** - создает ячейку в указанном поле или заменяет существующую
58 * **table.addCell (индекс столбца, данные)**
59 * **table.addCell (1, "123")** - заменяет существующую в указанном столбце
60
61 **Примеры использования:**
62
63 {{code language="java"}}
64 table.addCell(индекс строки, индекс столбца, данные)
65 {{/code}}
66
67 {{code language="java"}}
68 table.addCell(1,1, "123")
69 {{/code}}
70
71 {{code language="java"}}
72 table.addCell(индекс столбца, данные)
73 {{/code}}
74
75 {{code language="java"}}
76 table.addCell(1, "123")
77 {{/code}}
78
79
80 (% class="box infomessage" %)
81 (((
82 **{{id name="_Toc4"/}}addButton** - добавление кнопки с действием
83 )))
84
85 * **table.addButton (int indexColumn, int indexRow, String buttonName, String ACTION_TYPE, Object... args)**
86 Количество и тип передаваемых данных зависит от действия
87
88 **Типы действий:**
89
90 (% cellspacing="0" style="border-collapse:collapse; border:none; width:850px" %)
91 |(% style="border-color:#000000; border-style:solid; border-width:1px; padding:7px; vertical-align:top; width:363px" %)**SHOW_ELEMENTS**|(% style="border-color:#000000; border-style:solid; border-width:1px; padding:7px; vertical-align:top; width:485px" %)подсветка элементов на модели по defoult (обычная выборка)
92 |(% style="border-color:#000000; border-style:solid; border-width:1px; padding:7px; vertical-align:top; width:363px" %)**SHOW_GROUP_ELEMENTS**|(% style="border-color:#000000; border-style:solid; border-width:1px; padding:7px; vertical-align:top; width:485px" %)подсветка элементов на модели в соответствии с назначенными для них цветами (если цвет не назначен, то по defoult)
93
94 **Примеры использования:**
95
96
97 {{code language="java"}}
98 table.addButton(1,3,"click","SHOW_ELEMENTS",["29dec5b9-bfe8-4189-82c7-7aec4c858fce", "98cff622-b2a9-475b-be6d-77f443f0ed53"])
99 {{/code}}
100
101 {{code language="java"}}
102 table.addButton(1,1, "color el", "SHOW_GROUP_ELEMENTS", "#FF0000",
103 ["98cff622-b2a9-475b-be6d-77f443f0ed53", "bd70e912-ffaf-4374-8185-e1d44bd4461e", "29dec5b9-bfe8-4189-82c7-7aec4c858fce"])
104 {{/code}}
105
106 {{code language="java"}}
107 def arr = []
108 def conditionOne = bim.createCondition("class", "eq", "IfcPile")
109
110 def el = bim.getElements(conditionOne)
111
112 arr.add(el[0].uuid)
113 arr.add(new Colored("#F322dd", el[1]))
114 arr.add(new Colored("#F30011", el[3].uuid))
115 arr.add(new Colored("#F399dd", "493105b3-d8ab-422e-95ea-dbaab48c8a68"))
116 arr.add(new Colored("#002fff", "2049c986-1f49-4a39-8c1a-dc19348f9d40"))
117
118 table.addButton(1,1, "color group", "SHOW_GROUP_ELEMENTS", "#ff6600", arr)
119 table.addButton(2,1, "group", "SHOW_GROUP_ELEMENTS", arr)
120 {{/code}}
121
122
123 (% class="box infomessage" %)
124 (((
125 **{{id name="_Toc5"/}}setPageSize** - установка количества элементов на одной странице
126 )))
127
128 * **table.setPageSize (количество элементов на странице)** - устанавливает количество отображаемых элементов  (по умолчанию 10)
129
130 **Примеры использования:**
131
132 {{code language="java"}}
133 table.setPageSize(10)
134 {{/code}}
135
136
137 (% class="box infomessage" %)
138 (((
139 **{{id name="_Toc6"/}}showPage** - установка текущей отображаемой таблиц
140 )))
141
142 * **table.showPage (индекс текущей страницы)** - устанавливает текущую страницу (нумерация начинается с 1)
143
144 **Примеры использования:**
145
146 {{code language="java"}}
147 table.showPage(1)
148 {{/code}}
149
150 (% class="box infomessage" %)
151 (((
152 **{{id name="_Toc7"/}}replaceRow** - замена содержимого строки по указанному индексу с указанием новых данных
153 )))
154
155 * **table.replaceRow (int indexRow, Object... inp)**
156
157 **Пример использования:**
158
159 {{code language="java"}}{{/code}}
160
161 (% class="box infomessage" %)
162 (((
163 **{{id name="_Toc8"/}}sortASC** - установка параметров для сортировки данных в таблице по возрастанию с указанием столбца
164 )))
165
166 * **table.sortASC (int indexColumn)**
167
168 **Пример использования:**
169
170 {{code language="java"}}{{/code}}
171
172 (% class="box infomessage" %)
173 (((
174 **{{id name="_Toc9"/}}sortDESC** - установка параметров для сортировки данных в таблице по убыванию с указанием столбца
175 )))
176
177 * **table.sortDESC (int indexColumn)**
178
179 **Пример использования:**
180
181 {{code language="java"}}{{/code}}
182
183 (% class="box infomessage" %)
184 (((
185 **{{id name="_Toc10"/}}createGroupElements** - создание группы элементов с указанием цвета группы и списка элементов
186 )))
187
188 * **table.createGroupElements (String color, List<T> elements)**
189
190 **Пример использования:**
191
192 {{code language="java"}}{{/code}}
193
194 (% class="box infomessage" %)
195 (((
196 **{{id name="_Toc11"/}}saveTempTable** - сохранение временной таблицы (перед сохранением сортирует данные)
197 )))
198
199 * **table.saveTempTable ()**
200
201 **Пример использования:**
202
203 {{code language="java"}}{{/code}}
204
205 (% class="box infomessage" %)
206 (((
207 **{{id name="_Toc12"/}}xlsxToJSON** - преобразование документа Excel (XLSX, XLS) в формат JSON
208 )))
209
210 * **table.xlsxToJSON ()**
211
212 **Пример использования:**
213
214 {{code language="java"}}{{/code}}
215
216 (% class="box infomessage" %)
217 (((
218 **{{id name="_Toc13"/}}xlsxToJSON** - преобразование документа Excel (XLSX, XLS) в формат JSON с учетом пагинации
219 )))
220
221 * **table.xlsxToJSON (int page, int pageSize)**
222
223 **Пример использования:**
224
225 {{code language="java"}}{{/code}}