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

Version 5.3 by Bimit Administrator on 24.06.2024, 12:24

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)** - устанавливает количество отображаемых элементов 10 (по умолчанию 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 (количество отображаемых элементов на одной странице)**
143 * **table.showPage (индекс текущей страницы)**
144 * **table.showPage (1)** - устанавливает текущую страницу 1 (по умолчанию 1)
145
146 **Примеры использования:**
147
148 {{code language="java"}}
149 table.showPage(количество отображаемых элементов на одной странице)
150 {{/code}}
151
152 {{code language="java"}}
153 table.showPage(индекс текущей страницы)
154 {{/code}}
155
156 {{code language="java"}}
157 table.showPage(1)
158 {{/code}}
159
160 (% class="box infomessage" %)
161 (((
162 **{{id name="_Toc7"/}}replaceRow** - замена содержимого строки по указанному индексу с указанием новых данных
163 )))
164
165 * **table.replaceRow (int indexRow, Object... inp)**
166
167 **Пример использования:**
168
169 {{code language="java"}}
170
171 {{/code}}
172
173 (% class="box infomessage" %)
174 (((
175 **{{id name="_Toc8"/}}sortASC** - установка параметров для сортировки данных в таблице по возрастанию с указанием столбца
176 )))
177
178 * **table.sortASC (int indexColumn)**
179
180 **Пример использования:**
181
182 {{code language="java"}}
183
184 {{/code}}
185
186 (% class="box infomessage" %)
187 (((
188 **{{id name="_Toc9"/}}sortDESC** - установка параметров для сортировки данных в таблице по убыванию с указанием столбца
189 )))
190
191 * **table.sortDESC (int indexColumn)**
192
193 **Пример использования:**
194
195 {{code language="java"}}
196
197 {{/code}}
198
199 (% class="box infomessage" %)
200 (((
201 **{{id name="_Toc10"/}}createGroupElements** - создание группы элементов с указанием цвета группы и списка элементов
202 )))
203
204 * **table.createGroupElements (String color, List<T> elements)**
205
206 **Пример использования:**
207
208 {{code language="java"}}
209
210 {{/code}}
211
212 (% class="box infomessage" %)
213 (((
214 **{{id name="_Toc11"/}}saveTempTable** - сохранение временной таблицы (перед сохранением сортирует данные)
215 )))
216
217 * **table.saveTempTable ()**
218
219 **Пример использования:**
220
221 {{code language="java"}}
222
223 {{/code}}
224
225 (% class="box infomessage" %)
226 (((
227 **{{id name="_Toc12"/}}xlsxToJSON** - преобразование документа Excel (XLSX, XLS) в формат JSON
228 )))
229
230 * **table.xlsxToJSON ()**
231
232 **Пример использования:**
233
234 {{code language="java"}}
235
236 {{/code}}
237
238 (% class="box infomessage" %)
239 (((
240 **{{id name="_Toc13"/}}xlsxToJSON** - преобразование документа Excel (XLSX, XLS) в формат JSON с учетом пагинации
241 )))
242
243 * **table.xlsxToJSON (int page, int pageSize)**
244
245 **Пример использования:**
246
247 {{code language="java"}}
248
249 {{/code}}