1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.myfaces.tobago.component;
21
22 import javax.faces.context.FacesContext;
23 import org.apache.myfaces.tobago.context.Markup;
24 import org.apache.myfaces.tobago.internal.component.AbstractUIGridLayout;
25 import org.apache.myfaces.tobago.layout.Measure;
26 import org.apache.commons.lang.ArrayUtils;
27 import org.apache.commons.lang.StringUtils;
28 import org.apache.myfaces.tobago.internal.util.Deprecation;
29 import org.apache.myfaces.tobago.renderkit.MarginValues;
30 import org.apache.myfaces.tobago.renderkit.SpacingValues;
31 import org.apache.myfaces.tobago.renderkit.LayoutComponentRenderer;
32 import javax.el.ELException;
33 import javax.faces.FacesException;
34 import java.util.ArrayList;
35 import java.util.List;
36 import javax.el.MethodExpression;
37 import javax.el.ValueExpression;
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98 public class UIGridLayout
99 extends AbstractUIGridLayout implements SupportsMarkup {
100
101 public static final String COMPONENT_TYPE = "org.apache.myfaces.tobago.GridLayout";
102
103 public static final String COMPONENT_FAMILY = "org.apache.myfaces.tobago.GridLayout";
104
105 private org.apache.myfaces.tobago.context.Markup currentMarkup;
106
107 enum PropertyKeys {
108 rowOverflow,
109 markup,
110 marginLeft,
111 marginTop,
112 marginRight,
113 columns,
114 cellspacing,
115 rows,
116 marginBottom,
117 columnOverflow,
118 rowSpacing,
119 margin,
120 border,
121 columnSpacing,
122 }
123
124 public String getFamily() {
125 return COMPONENT_FAMILY;
126 }
127
128
129
130
131
132
133 public boolean isRowOverflow() {
134 Boolean bool = (Boolean) getStateHelper().eval(PropertyKeys.rowOverflow);
135 if (bool != null) {
136 return bool;
137 }
138 return false;
139 }
140
141 public void setRowOverflow(boolean rowOverflow) {
142 getStateHelper().put(PropertyKeys.rowOverflow, rowOverflow);
143 }
144
145 public org.apache.myfaces.tobago.context.Markup getMarkup() {
146 Object object = getStateHelper().eval(PropertyKeys.markup);
147 if (object != null) {
148 return Markup.valueOf(object);
149 }
150 return null;
151 }
152
153 public void setMarkup(org.apache.myfaces.tobago.context.Markup markup) {
154 getStateHelper().put(PropertyKeys.markup, markup);
155 }
156
157
158
159
160
161 public org.apache.myfaces.tobago.layout.Measure getMarginLeft() {
162 Object object = getStateHelper().eval(PropertyKeys.marginLeft);
163 if (object != null) {
164 return Measure.valueOf(object);
165 }
166 return getMargin() != null
167 ? getMargin()
168 : ((MarginValues)getRenderer(getFacesContext())).getMarginLeft(getFacesContext(), this);
169 }
170
171 public void setMarginLeft(org.apache.myfaces.tobago.layout.Measure marginLeft) {
172 getStateHelper().put(PropertyKeys.marginLeft, marginLeft);
173 }
174
175
176
177
178
179 public org.apache.myfaces.tobago.layout.Measure getMarginTop() {
180 Object object = getStateHelper().eval(PropertyKeys.marginTop);
181 if (object != null) {
182 return Measure.valueOf(object);
183 }
184 return getMargin() != null
185 ? getMargin()
186 : ((MarginValues)getRenderer(getFacesContext())).getMarginTop(getFacesContext(), this);
187 }
188
189 public void setMarginTop(org.apache.myfaces.tobago.layout.Measure marginTop) {
190 getStateHelper().put(PropertyKeys.marginTop, marginTop);
191 }
192
193
194
195
196
197 public org.apache.myfaces.tobago.layout.Measure getMarginRight() {
198 Object object = getStateHelper().eval(PropertyKeys.marginRight);
199 if (object != null) {
200 return Measure.valueOf(object);
201 }
202 return getMargin() != null
203 ? getMargin()
204 : ((MarginValues)getRenderer(getFacesContext())).getMarginRight(getFacesContext(), this);
205 }
206
207 public void setMarginRight(org.apache.myfaces.tobago.layout.Measure marginRight) {
208 getStateHelper().put(PropertyKeys.marginRight, marginRight);
209 }
210
211
212
213
214
215
216
217
218 public java.lang.String getColumns() {
219 java.lang.String columns = (java.lang.String) getStateHelper().eval(PropertyKeys.columns);
220 if (columns != null) {
221 return columns;
222 }
223 return "1*";
224 }
225
226 public void setColumns(java.lang.String columns) {
227 getStateHelper().put(PropertyKeys.columns, columns);
228 }
229
230
231
232
233
234
235 @Deprecated
236 public org.apache.myfaces.tobago.layout.Measure getCellspacing() {
237 Object object = getStateHelper().eval(PropertyKeys.cellspacing);
238 if (object != null) {
239 return Measure.valueOf(object);
240 }
241 return null;
242 }
243
244 @Deprecated
245 public void setCellspacing(org.apache.myfaces.tobago.layout.Measure cellspacing) {
246 Deprecation.LOG.error("The attribute 'cellspacing' of 'UIGridLayout' is deprecated. "
247 + "Please refer the documentation for further information.");
248 getStateHelper().put(PropertyKeys.cellspacing, cellspacing);
249 }
250
251
252
253
254
255
256
257
258 public java.lang.String getRows() {
259 java.lang.String rows = (java.lang.String) getStateHelper().eval(PropertyKeys.rows);
260 if (rows != null) {
261 return rows;
262 }
263 return "1*";
264 }
265
266 public void setRows(java.lang.String rows) {
267 getStateHelper().put(PropertyKeys.rows, rows);
268 }
269
270
271
272
273
274 public org.apache.myfaces.tobago.layout.Measure getMarginBottom() {
275 Object object = getStateHelper().eval(PropertyKeys.marginBottom);
276 if (object != null) {
277 return Measure.valueOf(object);
278 }
279 return getMargin() != null
280 ? getMargin()
281 : ((MarginValues)getRenderer(getFacesContext())).getMarginBottom(getFacesContext(), this);
282 }
283
284 public void setMarginBottom(org.apache.myfaces.tobago.layout.Measure marginBottom) {
285 getStateHelper().put(PropertyKeys.marginBottom, marginBottom);
286 }
287
288
289
290
291
292 public boolean isColumnOverflow() {
293 Boolean bool = (Boolean) getStateHelper().eval(PropertyKeys.columnOverflow);
294 if (bool != null) {
295 return bool;
296 }
297 return false;
298 }
299
300 public void setColumnOverflow(boolean columnOverflow) {
301 getStateHelper().put(PropertyKeys.columnOverflow, columnOverflow);
302 }
303
304
305
306
307
308 public org.apache.myfaces.tobago.layout.Measure getRowSpacing() {
309 Object object = getStateHelper().eval(PropertyKeys.rowSpacing);
310 if (object != null) {
311 return Measure.valueOf(object);
312 }
313 return getCellspacing() != null
314 ? getCellspacing()
315 : ((SpacingValues)getRenderer(getFacesContext())).getRowSpacing(getFacesContext(), this);
316 }
317
318 public void setRowSpacing(org.apache.myfaces.tobago.layout.Measure rowSpacing) {
319 getStateHelper().put(PropertyKeys.rowSpacing, rowSpacing);
320 }
321
322 public org.apache.myfaces.tobago.context.Markup getCurrentMarkup() {
323 if (currentMarkup != null) {
324 return currentMarkup;
325 }
326 return null;
327 }
328
329 public void setCurrentMarkup(org.apache.myfaces.tobago.context.Markup currentMarkup) {
330 this.currentMarkup = currentMarkup;
331 }
332
333
334
335
336
337 public org.apache.myfaces.tobago.layout.Measure getMargin() {
338 Object object = getStateHelper().eval(PropertyKeys.margin);
339 if (object != null) {
340 return Measure.valueOf(object);
341 }
342 return null;
343 }
344
345 public void setMargin(org.apache.myfaces.tobago.layout.Measure margin) {
346 getStateHelper().put(PropertyKeys.margin, margin);
347 }
348
349
350
351
352
353 public java.lang.String getBorder() {
354 return (java.lang.String) getStateHelper().eval(PropertyKeys.border);
355 }
356
357 public void setBorder(java.lang.String border) {
358 getStateHelper().put(PropertyKeys.border, border);
359 }
360
361
362
363
364
365 public org.apache.myfaces.tobago.layout.Measure getColumnSpacing() {
366 Object object = getStateHelper().eval(PropertyKeys.columnSpacing);
367 if (object != null) {
368 return Measure.valueOf(object);
369 }
370 return getCellspacing() != null
371 ? getCellspacing()
372 : ((SpacingValues)getRenderer(getFacesContext())).getColumnSpacing(getFacesContext(), this);
373 }
374
375 public void setColumnSpacing(org.apache.myfaces.tobago.layout.Measure columnSpacing) {
376 getStateHelper().put(PropertyKeys.columnSpacing, columnSpacing);
377 }
378
379 public Object saveState(FacesContext context) {
380 currentMarkup = null;
381 return super.saveState(context);
382 }
383
384
385 }